SSH免密码登录

来源:互联网 发布:淘宝店铺扣分24分 编辑:程序博客网 时间:2024/05/21 05:42

SSH无密码登录的设置步骤

  1. 首先我们在自己的Linux系统上生成一对SSH Key:SSH密钥和SSH公钥.密钥保存在自己的Linux系统上。
  2. 然后公钥上传到Linux服务器.之后我们就能无密码SSH登录了.SSH密钥就好比是你的身份证明.

1在自己的Linux系统上生成SSH密钥和公钥

打开终端,使用下面的ssh-keygen来生成RSA密钥和公钥.-t表示type,就是说要生成RSA加密的钥匙.

ssh-keygen -t rsa

RSA也是默认的加密类型.所以你也可以只输入ssh-keygen.默认的RSA长度是2048位.如果你非常注重安全,那么可以指定4096位的长度.

ssh-keygen -b 4096 -t rsa

生成SSH Key的过程中会要求你指定一个文件来保存密钥,按Enter键使用默认的文件就行了.然后需要输入一个密码来加密你的SSH Key.密码至少要20位长度.SSH密钥会保存在home目录下的.ssh/id_rsa文件中.SSH公钥保存在.ssh/id_rsa.pub文件中.

Generating public/private rsa key pair.Enter file in which to save the key (/home/matrix/.ssh/id_rsa):  按Enter键Enter passphrase (empty for no passphrase):   输入一个密码Enter same passphrase again:   再次输入密码Your identification has been saved in /home/matrix/.ssh/id_rsa.Your public key has been saved in /home/matrix/.ssh/id_rsa.pub.The key fingerprint is:e1:dc:ab:ae:b6:19:b0:19:74:d5:fe:57:3f:32:b4:d0 matrix@vividThe key's randomart image is:+---[RSA 4096]----+| .. || . . || . . .. . || . . o o.. E .|| o S ..o ...|| = ..+...|| o . . .o .|| .o . || .++o |+-----------------+

查看.ssh/id_rsa文件就会看到,这个文件是经过加密的(encrypted).也就是用你输入的密码来加密.

less .ssh/id_rsa

SSH无密码登录

2将SSH公钥上传到Linux服务器

可以使用ssh-copy-id命令来完成.

ssh-copy-id username@remote-server

SSH无密码登录

输入远程用户的密码后,SSH公钥就会自动上传了.SSH公钥保存在远程Linux服务器的.ssh/authorized_keys文件中.

上传完成后,SSH登录就不需要再次输入密码了.但是首次使用SSH Key登录时需要输入一次SSH密钥的加密密码.(只需要输入一次,将来会自动登录,不再需要输入密钥的密码.)

使用scp命令来传送文件时也不需要输入密码.


原创粉丝点击