centos实现SSH远程登录

  1. 生成SSH密钥对

首先,你需要在客户端机器上生成一个SSH密钥对。打开终端,执行以下命令

ssh-keygen

或ssh-keygen -t rsa -b 2048(效果相同)

按照提示操作,可以按回车键接受默认的文件名(通常是~/.ssh/id_rsa)和密码短语(可以为空,直接按回车)。

  1. 将公钥复制到服务器

生成密钥后,使用ssh-copy-id命令将公钥复制到服务器上。在客户端执行:

ssh-copy-id 用户名@服务器IP地址

例:ssh-copy-id [email protected]

这条命令会提示你输入服务器的密码。成功执行后,你的公钥将被添加到服务器的~/.ssh/authorized_keys文件中。

上述操作也可以进行手动添加

你需要获取客户端的公钥内容:

cat ~/.ssh/id_rsa.pub

然后,登录到服务器,将公钥内容添加到~/.ssh/authorized_keys文件中:

echo "公钥内容" >> ~/.ssh/authorized_keys

3.测试SSH密钥登录

在客户端机器上,尝试使用以下命令登录服务器,看是否可以无需密码直接登录:

ssh 用户名@服务器IP地址

例:ssh [email protected]

如果一切设置正确,你应该能够直接登录到服务器而不需要输入密码。

之后就可以使用scp进行文件上传了

#!/bin/bash

TEMPNAME=(ls /www/backup/database/mysql/crontab_backup/hz_fw_game/ \| grep hz_fw_game_(date -d -0day +%Y-%m-%d)_*)

scp -i /root/.ssh/id_rsa /www/backup/database/mysql/crontab_backup/hz_fw_game/$TEMPNAME [email protected]:/root/gmplatform_database_back/hz_fw_game/

相关推荐
心随_风动41 分钟前
SUSE Linux 发行版全面解析:从开源先驱到企业级支柱
linux·运维·开源
西北大程序猿2 小时前
单例模式与锁(死锁)
linux·开发语言·c++·单例模式
酷爱码2 小时前
在 Linux 中修改 Apache HTTP Server(httpd)默认端口的完整指南
linux·http·apache
jiunian_cn2 小时前
【Linux】Linux权限
linux·服务器·mysql
betazhou3 小时前
有没有 MariaDB 5.5.56 对应 MySQL CONNECTION_CONTROL 插件
linux·数据库·mysql·oracle·mariadb
烟雨书信3 小时前
Linux中MySQL的逻辑备份与恢复
linux·运维·mysql
wkj0013 小时前
QuaggaJS 配置参数详解
java·linux·服务器·javascript·quaggajs
藥瓿亭4 小时前
K8S认证|CKS题库+答案| 5.日志审计
linux·运维·docker·云原生·容器·kubernetes·cka
coder_lorraine4 小时前
【Linux系列】Linux用户大揭秘:从“公寓住户”到“社区管理员”的奇幻之旅
linux
家庭云计算专家5 小时前
飞牛云一键设置动态域名+ipv6内网直通访问内网的ssh服务-家庭云计算专家
运维·云计算·ssh·nextcloud·ddns·动态域名解析