准备工作:
一台Linux系统服务器
一台电脑(我的是windows 10系统)
Step1 windows上生成 ssh key
生成ssh key(这里替换为你的邮箱)
1 | ssh-keygen -t rsa -C "youremail@example.com" |
进入ssh目录
1 | cd ~/.ssh |
查看所有文件
1 | ls -a |
查看公钥内容(注意是.pub结尾的公钥文件)
1 | cat id_rsa.pub |
复制公钥内容
1 | ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX youremail@example.com |
Step2 Linux中写入上一步复制的公钥
登录 Linux 服务器,执行命令
1 | ssh-keygen -t rsa |
然后一路回车
然后进入 .ssh
1 | cd ~/.ssh |
编辑 authorized_keys 文件
1 | vi authorized_keys |
进入编辑后,按 I
进入修改,将我们电脑上的公钥复制进去。
修改完成后 依次按 Esc
、:
、w
、q
,回车保存修改。
然后查看一下
1 | cat authorized_keys |
看到已成功修改
登录一下
1 | ssh root@xx.xxx.xxx.xxx # 填你的服务器IP |
如果你的服务器是阿里云且重装过系统,可能会遇到以下报错
1 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
解决:使用命令清除所连接的服务器IP
1 | ssh-keygen -R XX.XX.XX.XX |
再次尝试连接
1 | ssh root@xx.xxx.xxx.xxx |
可以看到登录成功1
2
3Last login: Wed Apr 17 18:03:44 2019 from 14.154.30.158
Welcome to Alibaba Cloud Elastic Compute Service !