SSH服务器

SSH服务的搭建

一、SSH基础概述

目前SSH的协议版本有两种,分别是Version1Version2,其中Version2由于加上了连接检测的机制,可以避免连接期间被人插入恶意的攻击码,因此比Version1还要安全。

SSH服务器与客户端连接的步骤:

1、服务器建立公钥文件:每一次启动sshd服务的时候,该服务会主动的去找/etc/ssh/ssh_host*文件。

2、客户端主动请求连接(使用SSH等程序来连接)

3、服务器接收到了客户端的连接请求,服务器就会把取得的公钥文件发送给客户端(这个是明码传送的)

4、客户端记录/比对服务器的公钥数据及随机计算自己的公私�_,因为客户端是第一次连接到服务器的时候,就会将服务器的公钥数据记录到客户端的用户主目录的~/.ssh/known_host。如果是已经记录过该服务器的公钥数据,则客户端就会去比对此次接收到的与之前的是否有差异。若接收此公钥数据,则开始计算计算机客户端自己的公私�_数据

5、接着,用户将自己的公钥传给服务器,此时的服务器就具有了服务器的私钥和客户端的公钥,而客户端则具有服务器的公钥和客户端自己的私钥。

6、这时候,当服务器向客户端传送数据时,将用户的公钥加密后发送,客户端接收到后,用自己的私钥来解密,而客户端发送数据给服务器的时候,将服务器的公钥加密后进行发送,服务器收到后,利用自己的私钥来进行解密。

注意:客户端的密钥是随机运算产生于本次连接中的,所以每一次的连接密钥都可能不一样。

1、来看一下 /etc/ssh/ssh_host*文件

删除这些文件,然后重启SSH服务

二、启动ssh服务

三、SSHD服务器配置

Sshd服务器的配置文件为/etc/ssh/sshd_config

四、技巧

配置免密码ssh登陆主机

步骤:

1、客户端建立两把钥匙

2、客户端放置好私钥文件,也就是把Private Key放在Client上面的用户的主目录中,也就是 $HOME/.ssh/

3、将公钥放置到服务器的正确目录与文件中:把Public Key放在任何一个你想要登陆的服务器的服务器端的某User用户主目录内的.ssh/里面的认证文件中。

实际演示:

1、我以xue的身份登录,在客户端建立两把钥匙

按下Enter

 

按下Enter

可以看到,公钥和私钥被放置的目录

查看一下:

注意:还要注意上面的权限问题。

id_rsa的权限必须是600,且属于xue自己才行。

2、将公钥文件数据上传到服务器

3、将公钥放置到服务器的正确目录与文件名

使用mo这个用户,将刚刚上传的id_rsa.pub数据附加到authorized_keys这个文件才行。

登录mo用户

五、安全设置

对于SSH,一般从以下三方面进行设置

1、服务器本身的设置强化:/etc/ssg/sshd_config

2、TCP Wrapper的使用:/etc/host.allow,/etc/host.deny

3、iptables的使用:iptables.rule,iptables.allow。

 

 

你可能感兴趣的:(ssh)