SSH服务

目录

SSH远程服务管理

        OpenSSH

1.SSH远程登录

设置白名单

 设置黑名单

sshd服务支持的两种验证方式

1.密码验证

2.密钥对验证

公钥与私钥的关系

密钥对登录

方法一

方法二

方法三

3.  远程复制

TCP Wrappers 访问控制

TCP Wrappers保护机制的两种实现方式

TCP wrappers 的访问策略

TCP Wrappers机制的基本原则:

总结

telnet 明文传输tcp 23

ssh   密文传输tcp 22

客户端命令

ssh密钥对配置

ssh密钥对面交互登录

TCP Wrappers     


SSH远程服务管理

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能。

SSH协议对通道双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,因此SSH协议具有很好的安全性                             

                                              网络

SSH客户端<------------------------------------------------------->SSH服务器

                     数据传输是加密的,可以防止信息泄露

                     数据传输是压缩的,可以提高传输速度Linux主要用SSH客户端:Putty、Xshell、

CRT

                   SSH服务端:OpenSSH

OpenSSH

OpenSSH是实现SSH协议的开源软件项目,适用于各种UNIX、Linux操作系统。

CentOS 7系统默认已安装openssh相关软件包,并已将sshd服务添加为开机自启动。

执行“systemctl  start  sshd”命令即可启动sshd服务

sshd服务默认使用的TCP的22端口

sshd服务的默认配置文件是/etc/ssh/sshd_config

服务名称:sshd

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

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

注:ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于前者是针对客户端的配置文件,后者是针对服务端的配置文件。

示例

1.SSH远程登录

vim /ssh/sshd_config

 

 

———————————————————————————————————————————

设置白名单

 

 wangwu只能在IP地址为192.168.110.80上登录

 设置黑名单

 vim /etc/ssh/sshd_config 

 systemctl restart sshd          重启服务

 在IP地址为192.168.110.80的主机上登wangwu账户失败

在IP地址为192.168.110.100的主机上等wangwu账户成功

可以通过远程连接查看对方主机的一些配置

 查询完会立刻退出

———————————————————————————————————————————

sshd服务支持的两种验证方式

1.密码验证

对服务器中本地系统用户的登录名称、密码进行验证。简便,但是可能会被暴力破解

2.密钥对验证

要求提供相匹配的密钥信息才能通过验证。通常先在客户端中创建一对密钥文件(公钥、私钥),然后将公钥文件放在服务器指定位置。远程登陆时,系统将使用公钥、私钥进行加密/解密关联验证。能让增强安全性,且可以免交互登录。

公钥与私钥的关系

公钥与私钥是成对生成的,这两种密钥互不相同,可以相互加密和解密。

不能根据一个密钥来推算出另一个密钥。

公钥对外公开,私钥只有私钥的持有人才知道。

密钥对登录

vim  /etc/ssh/sshd_conf

可以进入/etc/ssh目录中查看算法类型

在自己主机选择rsa的算法,设置了123123,通过rsa算法生成了一个密码对,放在了/root/.ssh/id_rsa目录中

 

 

 把公钥文件复制到对方主机的家目录中

 

这是公钥信息

 把公钥文件放在你要与对方主机配对的用户的家目录下,我的指定用户是zhangsan

把公钥文件放在/home/zhangsan/.ssh/authorized_keys指定目录中

 查看文件位置

方法一

 对方主机要把存放密钥文件的目录的权限设置为700

把对方主机密钥的存放文件的权限设为600

 

 我方主机用ssh连接对方主机就会以密钥连接

方法二

 在密匙文件中不设密码,这是一种免交互的验证方式,连密码都不用输入,直接就连

方法三

 这也是一种免交互的验证方式,但是只能在当前环境有效

———————————————————————————————————————————

3.  远程复制

把对方主机的文件复制到自己的主机上

把自己主机的文件复制到对方主机上

在CentOS7-2上收到CentOS7-1的ppp

注:`pwd`表示复制到同目录下

 对方主机

———————————————————————————————————————————

4.SFTP 

在自己的主机上创建一个文件123.txt,通过sftp远程发送给对方主机

 对方家目录收到文件

 

 从对方主机接收zxr目录

———————————————————————————————————————————

TCP Wrappers 访问控制

TCP Wrappers ( TCP封套)

将TCP服务程序"包裹"起来,代为监听TcP服务程序的端口,增加了一个安全检测过程,外来的连

接请求必须先通过这层安全检测,获得许可后才能谈问真正的服务程序。

大多数 Linux发行版,TCP Wrappers 是默认提供的功能。

rpm -q tcp_wrappers

TCP Wrappers保护机制的两种实现方式

1.直接使用tcpd程序对其他服务程序进行保护,需要运行tcpd程序。

2.由其他网络服务程序调用libwrap.so.*链接库,不需要运行 tcpd程序。此方式的应用更加广泛,

也更有效率。

使用ldd命令可以查看程序的libwrap.so.*链接库

ldd /usr/sbun/sshd  ;ldd  `which sshd`  ; ldd  $(which sshd)都可以查看数据库是否支持该服务

TCP wrappers 的访问策略

TCP Wrappers机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行访问控制。

对应的两个策略文件为/etc/hosts.allow 和/etc/hosts.deny,分别用来设置允许和拒绝的策略。

格式:

<服务程序列表>:<客户端地址列表>

(1)服务程序列表

 ALL:代表所有的服务。

单个服务程序:如"vsftpd"。

多个服务程序组成的列表:如"vsftpd, sshd"。

(2)客户端地址列表

ALL:代表任何客户端地址。

LOCAL:代表本机地址。

多个地址以逗号分隔

允许使用通配符“*”和“?”,前者代表任意长度字符,后者仅代表一个字符

网段地址,如“192.168.110.”或者192.168.110.0/255.255.255.0

区城地址. 加" accp.cnm”配 accp.com域中的所有主机

TCP Wrappers机制的基本原则:

首先检查/etc/hosts.allow文件,如果找到相匹配的策略,则允许访问:否则继续检查/etc/hosts.deny

文件,如果找到和匹配的策略,则拒绝访问;如果检查上述两个文件都找不到相匹配的策略,则允

许访问。

”允许所有,拒绝个别”

只需在/etc/ hosts.deny文件中添加相应的拒外绝策略

”允许个刷,拒绝所有”

除了在/etc/hosts.allow中添加允许策略之外,还需要在/etc/hosts. deny文件中设置"ALL:ALL"的拒

绝策略。

示例

拒绝192.168.110.90访问

 在Centos7-1上设置

vim /etc/hosts.deny

CentOS7-2连接CentOS7-1失败

 CentOS7-3连接CentOS7-1成功

总结

telnet 明文传输tcp 23

ssh   密文传输tcp 22

软件包openssh

服务名sshd

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

重要的配置项: Port ListenAddress PermitRootLogin UseDNS DenyUsers AllowUsers

Passwordauthentication Pabteyluthnticatiom

客户端命令

ssh    -p    端口   用户@IP

scp    -P   端口   [-r]     本机文件/目录    用户@IP:绝对路径        #上行复制

scp    -P    端口  [-r]     用户@IP:绝对路径      本机目录/文件      #下行复制

sftp    -P    端口   用户@IP

>get/put 

cd到目录   

ls展示文件

ssh密钥对配置

客户端   ssh的发起端:    ssh-keygen   -t    rsa/ecdsa   创建密钥对,在自己家目录的.ssh目录中生成私钥和公钥文件(xxx.pub)

                                       ssh-copy-id  -i    公钥文件        目标主机用户@目标主机IP/主机名
服务端  被ssh连接端:  在指定用户家目录的.ssh目录(权限(700))中生成公钥认证文件

authorized_keys(权限600)

从此客户端使用   ssh  [-p   端口]   用户@IP             使用密钥对的密码验证

ssh密钥对面交互登录

[1]使用没有密码的密钥对

ssh-keygen    -t    rsa/ecdsa    一直回车,不设置密码

ssh-copy-id -i 公钥文件       目标主机用户@目标主机IP/主机名

[2]创建ssh会话代理(只能在当前会话有效)

ssh-agent   bash

ssh-add

TCP Wrappers     

对支持TCP Wrappers的服务程序进行访问控制,要么允许放行,要么拒绝丢弃

判断是否支持:

ldd   $ (which程序名)       sshd   vsftpd   telnet   ipop3    imap

                     程序文件路径   ->   libwrap. so.*

访间策略:
先看/etc/hosts.allow,有则放通;再看/etc/hosts . deny,有则拒绝;如果都没有则放通所有
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值