linux安装ssh_如何为Ubuntu服务器建立无密码SSH认证
你很可能整天都把炮弹塞进你的Linux服务器。希望你已经设置了这些服务器,这样你就可以使用SSH基认证了。为什么?因为这是使用SSH登录到远程数据中心服务器上的最安全的方法。
如果没有,我想让你走过设立SSH密钥认证的过程,并添加这样的内容,即你在登录时不必输入密码。
你需要什么
这一进程可以与几乎所有支持SSH的客户一起进行。我成功地在Linux和macOS上进行了测试。在远处,我将与Ubuntu Server 20.04演示。
如何创建你的SSH配对钥匙
首先要做的是制作你的SSH配对钥匙。这一步骤得到了客户一方的注意。Linux的程序与macOS的程序完全相同。
登录到桌面客户机上,打开终端窗口,并发出指令:
ssh - keygen - t rsa - b 4096
随着" - b 4096 "选项的增加,我们正在产生一个强有力的钥匙。
确保给你的键盘一个非常强大的密码。由于我们正在做的事情的性质,你需要一个无法猜测的密码/短语。
你也可以考虑将这对钥匙放在非标准地点。为此,你总是可以创建一个与SSH或安全毫无关系的秘密名录。让这对键盘一目了然。例如,你可以创建一个具有指挥能力的秘密目录:
mkdir ~ / . ple
在关键创作的命名阶段,你会输入以下内容:
/家/ USER / .紫色/ customent _ key
USER是你的用户名。
或者, macOS :
/用户/ USER / .紫色/ customent _ key
USER是你的用户名。
一旦你的钥匙生成,你就可以复制到服务器上,并有命令:
Sshcopy - SERVER
SERVER是远程服务器的IP地址或域。
如果你选择使用定制钥匙,那么这种命令看起来就像是:
ssh - copy - id - i ~ / . ple / customent _ key SERVER
SERVER是远程服务器的IP地址或域。
注:如果你使用定制的SSH钥匙,登录远程服务器的过程略有不同。与其简单地使用USER @ SERVER(USER是用户名, SERVER是IP地址或远程服务器的域),指令是(坚持我们的榜样):
ssh - i ~ / . ple / customm _ key USER @ SERVER
USER是用户名, SERVER是远程服务器的IP地址或域。
如何使登录没有密码
在这之前,我想说,你需要确保两点:
你的桌面客户登录密码很强大。无论何时离开桌面客户机、锁住或登录,你都不希望人们能轻松地访问拥有无密钥SSH密钥认证装置的桌面客户机。不要带着台式电脑脱锁离开,否则任何人都可以向服务器打开终端和SSH 。
考虑这两个项目,它们对于客户对服务器安全的成功至关重要。
要做到这一点,有两种办法。第一种方法可以在你的Linux桌面客户机上使用,第二种方法同时在Linux和macOS上使用。
让我向你们表明如何处理第一个选择。在你把SSH钥匙复制到服务器上之后,你会第一次把SSH复制到服务器上。当你这样做时,突然出现的情况似乎会要求你输入你的SSH密码(图A)。
图A
每当我登录时,请注意自动解锁这个钥匙的收件箱。查看那个盒子,输入你的密码,点击解锁。每当我被登录时,只要查看自动解锁这个钥匙的盒子,你就不必把SSH钥匙密码输入到那个远程服务器上。即使你记录或重新激活客户机,你也不需要给那个Ubuntu服务器输入SSH密钥认证密码。
第二种方法要求使用sshad指令,在OpenSSH认证代理人中添加私人钥匙身份。因此,在Linux或macOS终端上,发出命令:
ssh - add . ssh / id _ rsa
或者,如果你创建了一个定制钥匙(我们将坚持上面的榜样),你就会发布这样的命令:
ssh - add ~ / .紫色/ customent _ key
现在,当你下一次从任一客户进入那个远程服务器时,你不必输入你的SSH密钥认证密码。
上述方法的问题是,它并不总是作为每个Linux桌面客户端的永久解决办法发挥作用。如果你发现情况是这样,你总是可以安装有命令的键盘:
Sudo apt安装键盘- y
一旦安装了该应用程序,你就需要在. bashrc文件底部添加几行。向指挥部开放该档案:
nano ~ / . bashrc
在档案底部增加以下两行:
/ usr / bin / keych链 $ HOME / . ssh / id _ dsa
HOME / . keych链 / $ HOSTNAME - sh
如果你使用定制钥匙,这两行看起来会很像(坚持我们的榜样):
/ usr / bin / keych链 $ HOME / .紫色/ customent _ key
HOME / . keych链 / $ HOSTNAME - sh
保存和结案。关闭和重新开放终端,在登录远程Linux服务器时,你不必输入SSH密钥认证密码。你唯一需要输入这个密码的时间是在更换后先打开终端窗口。
使用这一方法的一个告诫是,每次打开终端窗口,你都会看到Keyfile输出(图B)。
图B
再次请记住,你必须明智地利用这一安排。不要把桌面打开,确保桌面登录密码非常坚固。