logo头像
Snippet 博客主题

ssh免密码登录服务器

准备材料:
A机为本地主机
B机为远程主机(ip:10.200.195.1)

目标:让A机可以免密码登录B机器。

方法:生成公私钥对,将私钥放在A机器上的~/.ssh/目录下,将公钥放到B机器上的~/.ssh/authorized_keys文件中即可。

A机上生成公私钥

进入ssh目录下生成公钥和私钥,如果已存在,可以跳过本步骤。

cd ~/.ssh
ssh-keygen -t rsa #(连续三次回车,即在本地生成公钥和私钥, 不设置密码)

B机器上准备

进入ssh目录,创建authorized_keys文件(如果已经存在,可以跳过本步骤)。

注意: 必须将~/.ssh/authorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件/etc/ssh/sshd_config来指定其他文件名。

cd ~
mkdir .ssh
chmod 700 .ssh
cd .ssh
touch authorized_keys
chmod 600 authorized_keys  

把A机器生成的公钥文件发到B机器上

回到A机器上执行

scp ~/.ssh/id_rsa.pub root@10.200.195.1:/root/.ssh/id_rsa.pub
#(需要输入密码)

把公钥追加到B机器的authorized_keys中

在B机器上将id_rsa.pub的内容追加到authorized_keys中,。

注意不要用>,否则会清空原有的内容,使其他人无法使用原有的密钥登录。

cat /root/.ssh/id_rsa.pub  >> /root/.ssh/authorized_keys

测试

回到A机器:

ssh root@10.200.195.1 
# (不需要密码, 登录成功)
微信打赏

赞赏是不耍流氓的鼓励