第一次执行 ssh name@xxx.xxx.xxx.xxx
的时候心情应该是有点激动地(终于有了一台自己的服务器,亦或者是接触新的领域的亢奋),但是当执行了几十次的时候,心里应该就有点烦躁了,卧X,每次都要输入ip、密码,或者CV过来,好麻烦啊!
作为一个”慵懒”的coder,这个时候就会寻找更方便的方式来登陆服务器。
STEP ONE:修改sshd服务的配置文件
vim /etc/ssh/sshd_config
打开以下三项:
RSAAuthentication yes # RSA认证
PubkeyAuthentication yes # 公钥认证
AuthorizedKeysFile .ssh/authorized_keys # 公钥认证文件路径
PS:如果用root用户有失败的情况,请检查PermitRootLogin yes
这个配置项的值是否为 yes
。
然后 systemctl restart sshd
or service sshd restart
来重启 sshd 服务。
STEP TWO:在本地机器上生成公钥与私钥
使用ssh-keygen
命令来生成公钥与私钥。具体步骤:
1. 进入用户主目录下的.ssh目录cd ~/.ssh
2. 执行 ssh-keygen -t rsa
,敲下回车后会有3个交互,第一个是文件名,默认是id_rsa
,如需修改,自己输入一个文件名便可。第二与第三是密码与确认密码,是以后使用该公钥时要输入的密码,一般不设置,如有强烈的安全需求,自己设置便可。最后会生成两个文件id_rsa
,id_rsa.pub
。以.pub
结尾的是公钥,另一个是私钥。
STEP THREE:把公钥加入到服务器的.ssh/authorized_keys
文件中
这一步太easy了,把公钥内容,即id_rsa.pub
文件中的内容复制下来,copy到服务器的 ~/.ssh/authorized_keys
文件中即可。
STEP FOUR:配置本地config文件
在本地机器的目录~/.ssh
下找到config文件(若不存在,自己创建一个 touch config
),按如下进行配置:
Host vps # 一个便于你区别这是哪台机器的名字
HostName xx.xx.xx.xx # 目的机器的ip
User username # ssh登陆时候的用户名
Port 22 # ssh所使用的端口,默认是22
IdentityFile /Users/chl/.ssh/vps # 对应服务器公钥的本地私钥文件路径
好了,开始爽了。
以后只要 ssh vps
便可登陆服务器,再也不需要麻烦的记住ip地址,记住复杂的密码了,好爽!
over