码迷,mamicode.com
首页 > 系统相关 > 详细

linux下ssh免密码登录设置

时间:2018-03-21 18:27:13      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:登录   注释   本地   使用   use   发送   int   host   显示   

每次登录远程主机使用密码难免有点烦人,在此介绍一种方式,可使用ssh密钥进行免密码登录。

ssh密钥生成

ssh-keygen:此命令用于生成密钥。

常用到的命令选项如下:

  • -t:用于指定密钥类型,rsa或者dsa,一般使用rsa;
  • -b:指定密钥长度;
  • -e:读取openssh的私钥或者公钥文件;
  • -C:添加注释;
  • -f:指定用来保存密钥的文件名;
  • -i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
  • -l:显示公钥文件的指纹数据;
  • -N:提供一个新密语;
  • -P:提供(旧)密语;
  • -q:静默模式。

Demo:

ssh-keygen -t rsa -P abcdefg -f demo -C ‘just a demo key‘

上面的语句,意思为:创建一个密语为abcdefg,注释为just a demo key,名为demo的密钥,会有两个文件生成,demo(私钥)和demo.pub(公钥)。若要进行免密登录,需将密语设置为空。

将公钥文件部署到远程主机

命令如下:

# 本地执行:
# 将公钥文件上传至服务器tmp目录下
scp ~/.ssh/demo.pub root@10.211.55.5:/tmp
# 服务器执行:
# 将公钥内容追加至authorized_keys文件中,并修改其权限为600
mkdir -p ~/.ssh
cat /tmp/demo.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

至此,即可实现免密码登录,命令:ssh root@10.211.55.5

本地配置(可选)

vi ~/.ssh/config

# 请求配置
ServerAliveInterval 30  # 该选项表示客户端每隔30秒会向服务器发送一个请求,不执行任何操作,确保主机不会因为闲置断开连接

# 主机配置,Host表示别名,HostName输入IP,User即登录用户名,IdentityFile则是上传至服务器的公钥所对应的私钥路径。
Host demo-root
    HostName 10.211.55.5
    User root
    IdentityFile ~/.ssh/demo

如上配置,则可实现别名登录,免去记忆服务器IP的麻烦。

命令:ssh demo-root

linux下ssh免密码登录设置

标签:登录   注释   本地   使用   use   发送   int   host   显示   

原文地址:https://www.cnblogs.com/yuansiwu/p/8618477.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!