Skip to main content

无密码登陆linux

为什么要设置无密码登陆

日常维护服务器工作中,我们都会专门寻找一些第三方工具来管理我们的服务器, 有本地安装客户端的, 有绿色版随处可带放在U盘的, 有浏览器输入一个链接就能使用的webShell。

但当要临时查看一下服务器文件、重启一下某个项目的服务端等,我还是会选用本地shell的ssh通道直连,按一下按快捷输入一条命令就马上登陆,用起来时非常舒畅和顺手的。

本地 生成公钥

创建ssh公钥文件

windows下

win+x 然后按 a 调出powershell

# 创建公钥命令 - 一路按确认即可创建本地公钥文件
ssh-keygen

生成的公钥文件存放在:

C:\Users[用户名]\.ssh\id_rsa.pub


服务器 开启ssh公钥登陆

修改配置

配置文件: /etc/ssh/sshd_config

# 打开配置文件(路径按需修改)
vim /etc/ssh/sshd_config

1 是否允许通过密码登陆

PasswordAuthentication yes

2 开启公钥免密码登陆

PubkeyAuthentication yes

添加本地公钥到服务器

[服务器] 公钥记录文件路径

cd ~/.ssh/

# 进入服务器ssh配置目录
cd ~/.ssh/

# 备份一份公钥列表文件
mv ~/.ssh/authorized_keys ~/.ssh/authorized_keys_bk

# 添加新的公钥到文件内
vim ~/.ssh/authorized_keys

# 退出服务器重新登陆即可享受无密码登陆
exit
ssh xxx@xxxx -p xxx