ssh“偷懒”登录

发布于 2018-03-22 作者 shen100 495次 浏览 版块 分享

文章标题本来打算用ssh 别名登录ssh 免输入用户名、主机登录,但最终还是觉得用偷懒更恰当

通常情况下我们会以 ssh 用户名@主机 的方式来登录,如下:

ssh root@11.22.33.44

然后再输入密码。这种方法一来输入比较麻烦,二来ip、密码也不太好记。

下面介绍一种偷懒的方式。

先在本地生成密钥

ssh-keygen -t rsa

会询问将密钥放在何处,默认即可。然后是输入密码,留空(否则你登录不仅需要私钥还要输入密码)。

完成后在~/.ssh目录下会生成两个文件id_rsa和id_rsa.pub,一个私钥一个公钥。将id_rsa.pub上传到服务器的/tmp目录下。执行

cat id_rsa.pub >> ~/.ssh/authorized_keys
rm id_rsa.pub  

再创建 config文件

$ vim ~/.ssh/config
 
Host myserver
    HostName www.abc.com
    Port 22
    User root
    PasswordAuthentication no
    IdentityFile ~/.ssh/id_rsa

现在,可以直接输入以下命令来登录

$ ssh myserver
  • HostName 指定登录的主机名或IP地址
  • Port 指定登录的端口号
  • User 登录用户名
  • IdentityFile 认证证书文件,默认位置是~/.ssh/id_rsa
  • IdentitiesOnly 只接受SSH key 登录
  • PasswordAuthentication 是否使用密码进行身份验证,yes/no

在 /etc/ssh/ 目录下通常都会有 ssh_config 和 sshd_config 这两个文件,前面一个是 ssh 客户端配置文件,后面一个则是服务器端配置文件,而这两个都是应用到系统全局的。

而 ~/.ssh/config 文件,只应用于当前用户

收藏
暂无回复