SSH( 安全Shell)是一个开源的,用于登录到命令和程序的执行远程服务器最值得信赖的网络协议。 它也可用于从一台计算机通过使用安全复制(SCP)协议的网络传输文件到另一台计算机。
在这篇文章中,我们将告诉你如何设置密码,登录较少在RHEL / CentOS 7.x版/ 6.x中/ 5.x和Fedora的使用SSH密钥连接到远程Linux服务器,而无需输入密码。 使用无密码登录使用SSH密钥将增加两台Linux服务器,便于文件同步或转让之间的信任。
设置SSH无密码登录
我的设置环境
SSH Client : 192.168.0.12 ( Fedora 21 ) SSH Remote Host : 192.168.0.11 ( CentOS 7 )
如果你正在处理的Linux的远程服务器号码,然后SSH密码登陆少的是自动执行任务,如使用scp和远程命令执行的脚本自动备份,同步文件的最佳途径之一。
在这个例子中,我们将会从服务器192.168.0.12设置SSH无密码自动登录的用户如要youcl与192.168.0.11的用户希娜 。
第1步:创建验证SSH - Kegen密钥 - (192.168.0.12)
第一次登录到服务器192.168.0.12与用户youcl并生成一对使用以下命令公钥。
[youcl@youcl.com ~]$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/youcl/.ssh/id_rsa): [Press enter key] Created directory '/home/youcl/.ssh'. Enter passphrase (empty for no passphrase): [Press enter key] Enter same passphrase again: [Press enter key] Your identification has been saved in /home/youcl/.ssh/id_rsa. Your public key has been saved in /home/youcl/.ssh/id_rsa.pub. The key fingerprint is: 5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 youcl@youcl.com The key's randomart image is: +--[ RSA 2048]----+ | ..oooE.++| | o. o.o | | .. . | | o . . o| | S . . + | | . . . o| | . o o ..| | + + | | +. | +-----------------+
创建SSH RSA密钥
第2步:在 - 192.168.0.11上创建.ssh目录
使用从服务器192.168.0.12 SSH服务器192.168.0.11使用希娜连接用户和其下创建.ssh目录,使用下面的命令。
[youcl@youcl ~]$ ssh sheena@192.168.0.11 mkdir -p .ssh The authenticity of host '192.168.0.11 (192.168.0.11)' can't be established. RSA key fingerprint is 45:0e:28:11:d6:81:62:16:04:3f:db:38:02:la:22:4e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.11' (ECDSA) to the list of known hosts. sheena@192.168.0.11's password: [Enter Your Password Here]
在用户主目录下创建SSH目录
第3步:将生成的公共密钥上传到 - 192.168.0.11
从服务器192.168.0.12使用SSH和希娜的.ssh目录下上传服务器192.168.0.11新生成的公钥(id_rsa.pub)作为文件名的authorized_keys。
[youcl@youcl ~]$ cat .ssh/id_rsa.pub | ssh sheena@192.168.0.11 'cat >> .ssh/authorized_keys' sheena@192.168.1.2's password: [Enter Your Password Here]
上传RSA密钥
第4步:在 - 192.168.0.11上设置权限
由于服务器上的SSH版本不同,我们需要对.ssh目录和authorized_keys文件设置权限。
[youcl@youcl ~]$ ssh sheena@192.168.0.11 "chmod 700 .ssh; chmod 640 .ssh/authorized_keys" sheena@192.168.0.11's password: [Enter Your Password Here]
在SSH密钥上设置权限
第5步:从192.168.0.12登录到192.168.0.11没有密码的服务器
从现在起,您可以登录到192.168.0.11从服务器192.168.0.12 希娜用户因为没有密码youcl用户。
[youcl@youcl ~]$ ssh sheena@192.168.0.11
SSH远程无密码登录