windows 配置免密登录 centos7 -云主机博士
0. 环境
Win10
CentOS7
Windows Terminal
1. 生成 SSH 秘钥
ssh-keygen -t rsa
中途需要输入的选项,直接默认值回车即可。我的因为使用 GitHub 原本生成了一个,直接使用即可。
默认在用户目录/.ssh
目录下,如下:
Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2018/7/16 18:25 1675 id_rsa -a---- 2018/7/16 18:25 394 id_rsa.pub -a---- 2020/5/9 9:50 3328 known_hosts
2. CentOS 配置
检查服务器是否有以下目录和文件,如果没有就创建
mkdir ~/.ssh touch ~/.ssh/authorized_keys
上传刚才 Win10 生成的公钥文件到 CentOS 并追加内容到 authorized_keys
scp .\id_rsa.pub souco@192.168.0.2:~/ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys rm ~/id_rsa.pub
3. 重启 ssh 服务
systemctl restart sshd
完事儿。
4. 坑
完事儿是假的,日常填坑环节。
问题:退出重新连接 ssh,发现还是需要密码验证。
解决:检查目录和文件权限,确保 .ssh 目录权限为700,authorized_keys 文件权限为600
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
配置完重启 ssh 服务重新登录即可。
作者:souco
链接:https://www.jianshu.com/p/ba351395366a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。