如何优雅的登录远程服务器(SSH免密登录)

第一次执行 ssh [email protected] 的时候心情应该是有点激动地(终于有了一台自己的服务器,亦或者是接触新的领域的亢奋),但是当执行了几十次的时候,心里应该就有点烦躁了,卧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_rsaid_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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章