linux下ssh免密码登录远程服务器

1、生成私钥公钥
ssh-keygen -t rsa -b 1024
一路回车,各种提示按默认不要改,等待执行完毕。然后执行:
ls ~/.ssh
#可以看到两个密钥文件:id_rsa(私钥) id_rsa.pub(公钥)
2、放置公钥到Linux服务器。(~/.ssh/authorized_keys)
安装ssh-copy-id
brew install ssh-copy-id
ssh-copy-id -i 公钥 root@192.168.1.222
或者用一下命令
cat 公钥 | ssh user@host “cat – >> ~/.ssh/authorized_keys”
3、配置本地ssh config文件。
vim ~/.ssh/config
加入以下内容:
Host aliyun #别名,域名缩写
HostName 192.168.1.222 #完整的域名
User cssor #登录该域名使用的账号名
PreferredAuthentications publickey #有些情况或许需要加入此句,优先验证类型ssh
IdentityFile ~/.ssh/id_rsa #私钥文件的路径
4、使用
ssh aliyun

备注
有的服务器需要额外再去设置一下/etc/ssh/sshd_config
找到以下内容,并去掉注释符”#“
=========================
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
=========================