生成SSH公钥和私钥
ssh-keygen -t rsa
注意生成时如果设置了密钥的密码,这样在利用证书登录时就会先验证密码,需记住密码
导入公钥
导入公钥到服务器用户ssh证书列表
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
本地scp下载私钥
scp root@172.1.1.1:~/.ssh/id_rsa C:\Users\user\.ssh\
删除服务器公钥和私钥
rm -f ~/.ssh/id_rsa*
注意:
文件~/.ssh/authorized_keys 必须是 600权限
检查/设置文件和文件夹读写权限
chmod -R 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
配置sshd_config文件
编辑配置文件
vi /etc/ssh/sshd_config
找到 #PubkeyAuthentication yes 把前面的#去掉,去掉后参考如下:
...忽略其他...
#设置允许证书登录
:set nu #可显示行号,第43行
PubkeyAuthentication yes
...忽略其他...
重启ssh服务
systemctl restart sshd.service
关闭密码登录(如果有需要)
确保证书登录成功后再配置
vi /etc/ssh/sshd_config
PasswordAuthentication no
systemctl restart sshd.service
私钥登录和下载文件
登录
ssh -i ./id_rsa root@ip
文件上传
scp -i ./id_rsa file root@ip:/root
文件下载
scp -i ./id_rsa root@ip:/root/1.txt c:\1.txt
其他Linux系统Centos,ubuntu可作为参考
版权所有 © 【代码谷】 欢迎非商用转载,转载请按下面格式注明出处,商业转载请联系授权,违者必究。(提示:点击下方内容复制出处)
源文:《Linux设置私钥免密证书登录》,链接:https://www.daimagu.com/article/908.html,来源:【代码谷】
评论