1、ssh协议:用于远程登录,端口号:22/tcp

  配置文件:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

1)服务器端口:/etc/ssh/sshd_config

2)客户端 :/etc/ssh/ssh_config

2、服务器监听选项:

UseDNS  no :禁用DNS反向解析

PermitRootLogin :允许Root登录

PermitEmyptPasswords:是否允许空密码

AllowUsers/DenyUsers: 允许/拒绝用户访问,不可同时使用,可用@制定允许远程主机

PasswordAuthentication: 启用密码验证

PubkeyAuthentication:启用密钥对验证,优先级高

AuthorizedKeysFile:公钥库文件位置及名称       .ssh/authorized_keys

3、验证方式:

1)密码验证:用/etc/passwd和/etc/shadow文件验证

2)密钥对验证:核对客户私钥与服务端公钥是否匹配

4、访问方式:

1)ssh命令: 远程登录 

格式: ssh  用户名@主机ip

或 ssh  -l  用户名  主机ip

2)scp命令:远程复制

格式: scp  -r 用户名@服务器IP:/文件路径 /本地路径

scp 本地路径 用户名@服务器IP:/文件路径

3)sftp: 安全的ftp下载,无须vsftpd服务支持

sftp   用户名@主机IP

4)Xsheel: 在windows下远程登录服务器的软件

5、构建密钥对验证:

1)生成密钥对: 加密算法: 有RSA和DSA两种

命令:ssh-keygen   -t  rsa

生成密钥对文件:id_rsa.pub

生成私钥文件:id_rsa

2)将公钥文件上传到服务器并改名为:authorized_keys

Scp  ~/.ssh/id_rsa.pub  用户名@服务IP:/~/.ssh/authorized_keys

或ssh-copy-id  -i  公钥文件  用户IP

3)客户端会创建known_host文件记录已登录服务的摘要信息

6、TCP Wrappers:通过tcpd进程调用libwrap.so.*链接库进行控制

控制文件:

/etc/hosts.allow    允许访问文件

/etc/hosts.deny    拒绝访问控制文件

控制格式:服务列表:客户机地址列表

列表以逗号分隔      ALL代表所有

?代表一个字符      *代表任意个字符

地址可用IP地址、网段、域名

网段方式:192.168.4.

或192.168.4.*

或192.168.4.0/255.255.255.0

策略顺序:默认允许,允许优先    

 

构建SSH服务体系示例

 

一、实验拓扑图:

 

 Linux远程访问及控制(SSH) Linux 第1张

二、实验要求:

1、网关的配置要求:

两个网卡,分别如图所示IP地址。开启路由转发功能:

echo  "1" > /proc/sys/net/ipv4/ip_forward

以及需要停止 servieNetworkManager stop服务

三台linux主机配置完成后可以互相ping通,如下图:

 Linux远程访问及控制(SSH) Linux 第2张

Linux远程访问及控制(SSH) Linux 第3张

Linux远程访问及控制(SSH) Linux 第4张

Linux远程访问及控制(SSH) Linux 第5张

Win7也可以ping通ssh服务器

 Linux远程访问及控制(SSH) Linux 第6张

2、SSH-web服务器的配置要求:

有两个用户,分别是zhangsan,lisi。要求zhangsan用户只能在1.10主机上使用密钥对的方式认证登录。lisi只能在1.20使用xshell登录,采用的直接密码验证的方式登录。禁用任何其他用户在客户端登录。在此服务器上安装一个lrzsz软件包(在linux的安装光盘上。),用于xshell能上传和下载软件。

步骤:

1)首先创建好zhangsan和lisi用户,并分别设置密码

 Linux远程访问及控制(SSH) Linux 第7张

2)配置sshd的主配置文件/etc/ssh/sshd_config ,设置zhangsan和lisi的登录主机

 Linux远程访问及控制(SSH) Linux 第8张

重启sshd服务

 Linux远程访问及控制(SSH) Linux 第9张

3)在1.10客户机上使用root身份创建密钥对文件并上传公钥到ssh服务器的zhangsan用户

 Linux远程访问及控制(SSH) Linux 第10张

查看确认生成的密钥文件

 Linux远程访问及控制(SSH) Linux 第11张

上传公钥

 Linux远程访问及控制(SSH) Linux 第12张

到ssh服务器上的zhangsan目录查看是否有.ssh隐藏目录,并且里面有authorized_keys文件。

 Linux远程访问及控制(SSH) Linux 第13张

4)在ssh服务器上安装lrzsz软件包

Linux远程访问及控制(SSH) Linux 第14张

3、客户端要求:(验证)

1)1.10:使用zhagsan用户,验证密码短语后能够登录。

Linux远程访问及控制(SSH) Linux 第15张

登录成功

Linux远程访问及控制(SSH) Linux 第16张

2)验证使用lisi用户在1.10客户机上不能登录

 Linux远程访问及控制(SSH) Linux 第17张

3)1.20:安装Xshell ,使用lisi用户,验证lisi密码后能登录。

 Linux远程访问及控制(SSH) Linux 第18张

Linux远程访问及控制(SSH) Linux 第19张

Linux远程访问及控制(SSH) Linux 第20张

Linux远程访问及控制(SSH) Linux 第21张

4)在xshell上传一个apache的安装包,并在2.10上安装Apache服务。

输入rz命令并选择软件包上传

Linux远程访问及控制(SSH) Linux 第22张

到lisi的目录查看并安装

 Linux远程访问及控制(SSH) Linux 第23张

5)在lisi的目录创建一个文件验证是否能下载

 Linux远程访问及控制(SSH) Linux 第24张

Linux远程访问及控制(SSH) Linux 第25张

6)在1.20 win7主机上验证zhangsan用户不能登录

 Linux远程访问及控制(SSH) Linux 第26张

7)验证其他用户在客户端不能登录

 Linux远程访问及控制(SSH) Linux 第27张

Linux远程访问及控制(SSH) Linux 第28张

文章参考微信公众号:L宝宝聊IT

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄