linux配置SSH

  • Post author:
  • Post category:linux



目录


一 ssh简介


二 ssh配置文件


三 ssh远程登录


四 ssh远程登录原理


4.1 对称加密


4.3非对称加密


一 ssh简介

SSH为建立在应用层上的安全协议,SSH是目前非常可靠,专门为远程登录会话和其它网了服务提供安全性的协议。利用SSH可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其它操作平台,默认情况下,SSH协议需要用到一个tcp22的端口号。

查看ssh服务运行情况

systemctl status sshd

二 ssh配置文件

ssh配置文件在/etc/ssh/sshd_config

显示root用户可以登录

禁止root用户登录ssh

vi /etc/ssh/sshd_config

PermitRootLogin no

systemctl restart sshd

指定普通用户lmy进行SSH登录

vi /etc/ssh/sshd_config

AllowUsers lmy

systemctl restart sshd

ssh密码尝试次数

vi /etc/ssh/sshd_config

MaxAuthTries 5

systemctl restart sshd

三 ssh远程登录

ssh root@servera(主机名)

ssh root@172.25.254.250

正常情况下,会让你输入两个yes,然后输入密码才能ssh登录到终端,这里rhcsa系统设置了免密。

四 ssh远程登录原理

ssh和telnet、ftp等协议的主要区别在于安全性,加密的方式主要有两种:

  • 对称加密(密钥加密)
  • 非对称加密(公钥加密)

4.1 对称加密

所谓对称加密,指加密解密使用同一套秘钥

下面举个例子来简要说明一下对称加密的工作过程。

甲和乙是一对生意搭档,他们住在不同的城市。由于生意上的需要,他们经常会相互之间邮寄重要的货物。为了保证货物的安全,他们商定制作一个保险盒,将物品放入其中。他们打造了两把相同的钥匙分别保管,以便在收到包裹时用这个钥匙打开保险盒,以及在邮寄货物前用这把钥匙锁上保险盒

上面是一个将重要资源安全传递到目的地的传统方式,只要甲乙小心保管好钥匙,那么就算有人得到保险盒,也无法打开。

但是,如果这个钥匙丢了,就不能解密了

  • Client 端

  • server端

4.3非对称加密

为了应对

如何安全的保存密钥

这个棘手的问题,

非对称加密

应运而生。非对称加密有两个密钥:”

公钥

“和”

私钥

1、乙方生成一对密钥(公钥和私钥)并将公钥向其它方公开。

2、得到该公钥的甲方使用该密钥对机密信息进行加密后再发送给乙方。

3、乙方再用自己保存的另一把专用密钥(私钥)对加密后的信息进行解密。乙方只能用其专用密钥(私钥)解密由对应的公钥加密后的信息。

在传输过程中,即使攻击者截获了传输的密文,并得到了乙的公钥,也无法破解密文,因为只有乙的私钥才能解密密文。

同样,如果乙要回复加密信息给甲,那么需要甲先公布甲的公钥给乙用于加密,甲自己保存甲的私钥用于解密。

  • 远程 Server 收到 Client 端用户的登录请求,Server 把自己的公钥发给用户
  • Client 使用这个公钥,将密码进行加密
  • Client 将加密的密码发送给 Server 端
  • 远程 Server 用自己的私钥,解密登录密码,然后验证其合法性
  • 若验证结果,给 Client 相应的响应

正常情况下,在servera上ssh到serverb,因为不信任,所有要问你是否密码验证,然后你需要输入密码才能ssh

#ssh-keygen -t rsa -P ” -f ~/.ssh/id rsa

-t 指定生成密钥类型 (rsa、dsa、ecdsa 等)

-p 指定 passphrase,用于确保私钥的安全

-f 指定存放密钥的文件 (公文件默认和私钥同目录下,不同的是,存放公钥的文件名需要加上后缀.pub)

这样就生成了私钥和公钥

复制公钥到管理节点

拷贝xxx-ip节点的root用户家目录下的.ssh目录下

ssh-copy-id root@xxx-ip

然后接下来ssh到serverb,不再需要密码,因为servera和serverb之间已经互相信任,二者采用了非对称加密进行ssh协议



版权声明:本文为weixin_51338719原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。