Linux系统学习 八、SSH服务—SSH远程管理服务

1、SSH简介

ssh(安全外壳协议)是Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议。传输的时候是经过加密的,防止信息泄露,比telnet(明文传递)要安全很多。

ftp安装(要先加载上光盘镜像文件)

安装的ftp服务器端

 Linux系统学习 八、SSH服务—SSH远程管理服务_第1张图片

启动服务

 

查看

 Linux系统学习 八、SSH服务—SSH远程管理服务_第2张图片

创建一个新用户

 Linux系统学习 八、SSH服务—SSH远程管理服务_第3张图片

tcpdump抓包工具

安装命令

yum install tcpdump

 

然后在本地机器上连接虚拟机

 

应该是有防火墙

iptables -L

 Linux系统学习 八、SSH服务—SSH远程管理服务_第4张图片

默认Windows当中启动的防火墙,21端口没开着

 Linux系统学习 八、SSH服务—SSH远程管理服务_第5张图片

这边使用命令全部关掉,然后重新监听21端口

Linux系统学习 八、SSH服务—SSH远程管理服务_第6张图片

虽然登录失败了,但是并不影响抓包

用户名:

 

密码:

 

 

2、SSH端口

端口:22

Linux中守护进程:sshd

安装服务:OpenSSH

服务端主程序:/usr/sbin/sshd

客户端主程序:/usr/bin/ssh

 

 

 

 

 

3、相关配置文件

服务端配置文件:/etc/ssh/sshd_config

客户端配置文件:/etc/ssh/ssh_config

 

2、SSH加密原理

对称加密算法

采用单钥密码系统的加密方法,同一个秘钥可以同时用作信息的加密和解密,这种加密方式称为对称加密,也称为单秘钥加密。

非对称加密算法又名“公开秘钥加密算法”,非堆成加密算法需要两个秘钥:公开密钥和私有秘钥。

SSH安全外壳协议(是由非对称加密演变来的)

它仅仅只是保护了数据传输的过程,在发送前和接收后中了木马等就可能获得数据内容。

 Linux系统学习 八、SSH服务—SSH远程管理服务_第7张图片

在用Xshell连接服务器时就会有直观的显示。

 Linux系统学习 八、SSH服务—SSH远程管理服务_第8张图片

 

3、SSH配置文件

 

服务器端配置文件

应该还有一个客户端的配置文件(ssh_config)

ssh_config在使用过程中,既是一个客户端也是一个服务端,意思是可以允许别人作为客户端通过22端口访问我,我也可以作为客户端去访问别人。

 Linux系统学习 八、SSH服务—SSH远程管理服务_第9张图片

PermitRootLogin yes        允许root的ssh登录(建议普通用户登录)

 Linux系统学习 八、SSH服务—SSH远程管理服务_第10张图片

PasswordAuthentication yes            建议也改成no

虽然有些设置是被注释掉的,但是事实上有些是默认设置的,注释掉也可以。

一般建议把端口改掉。

日志中等级越高记录的信息越少,等级越低记录的信息越详细。

GSSAPI认证开启后,在用Linux系统管理Linux系统时会有一个验证过程,会等很长时间,需要DNS解析。建议关闭(一般是客户端的配置文件,然后重启service sshd restart)

 

4、常用SSH命令

SSH远程管理

ssh [用户名@ip]

 

SCP远程复制

下载:

scp [email protected]:/root/text.txt

上传:

scp –r /root/123/ [email protected]/root

 

5、SSH连接工具

在Windows中用工具远程连接Linux进行管理。

SecureCRT工具

Xshell工具

 

5、SSH密钥对登录

保护服务器端的SSH

1.改端口

2.防火墙

 

第一步:创建密钥对,私钥文件:id_rsa,公钥文件:id_rsa.pub(客户机)

第二步:上传公钥文件到SSH服务器(id_rsa.pub)

第三步:导入公钥信息,公钥库文件:~/.ssh/authorized_keys

第四步:使用密钥对验证进行登录

不需要密码登陆,防止了密码被截获的可能,只要保证私钥文件的安全就可以了

 

步骤一:

客户端:

ssh-keygen –t rsa

服务器:

把公钥上传到服务器端

cat id_rsa.pub >>/root/.ssh/authorized_keys                  输出重定向

chmod 600 /root/.ssh/authorized_keys

 Linux系统学习 八、SSH服务—SSH远程管理服务_第11张图片

客户端:

 

创建普通用户

 Linux系统学习 八、SSH服务—SSH远程管理服务_第12张图片

切换到普通用户

su – user

返回到root

exit

 

我这边一直是以下这种显示

 Linux系统学习 八、SSH服务—SSH远程管理服务_第13张图片

不管是服务器还是本机的PermitRootLogin yes都改了,但是问题依旧没有解决。

也尝试用普通用户连接,依旧是这种情况。

 

步骤二

修改服务器ssh配置文件

RSAAuthentication yes    开启RSA验证

PubkeyAuthentication yes      是否使用公钥验证

AuthorizedKeysFile .ssh/authorized_keys      公钥的保存位置

PasswordAuthentication on   禁止使用密码验证登录

 

步骤三

服务器端关闭SELinux服务

vi /etc/selinux/config

重启系统

服务器端重启ssh服务

service sshd restart

 

你可能感兴趣的:(Linux系统学习 八、SSH服务—SSH远程管理服务)