linux ssh 免密登录

1、服务器端开启密钥登录模式

$ vim /etc/ssh/sshd_config

# 是否允许 root 远程登录
PermitRootLogin yes

# 密码登录是否打开
PasswordAuthentication yes

# 开启公钥认证
RSAAuthentication yes # 这个参数可能没有 没关系
PubkeyAuthentication yes

# 存放登录用户公钥的文件位置
# 位置就是登录用户名的家目录下的 .ssh
# root 就是 /root/.ssh
# foo 就是 /home/foo/.ssh
AuthorizedKeysFile .ssh/authorized_keys

重启sshd

service sshd restart

2、用户端创建自己的秘钥对

ssh-keygen -t rsa -C "your@email.com"

cd ~/.ssh/

# 查看公钥
cat id_rsa.pub

# 配置登录别名 省去输 ip 麻烦
vi config

Host examp # 登录的服务器别名 ssh examp 就可以了
HostName 233.233.233.233 #要登录的服务器ip
Port 22
User root #登录名
IdentityFile ~/.ssh/id_rsa #你的私钥路径
ServerAliveInterval 30
TCPKeepAlive yes

3、将你的公钥添加至服务器端的公钥凭证

可以添加多份公钥

echo 你的公钥内容 >> ~/.ssh/authorized_keys

4、用户端即可免密登录

ssh exmap
posted @ 2022-04-12 23:37  牛奔  阅读(141)  评论(0编辑  收藏  举报