TCP Wrapper简易防火墙

TCP Wrappers

TCP Wrappers 简介

TCP_Wrappers是一个工作在第四层(传输层)的安全工具,对有状态连接(TCP)的特定服务进行安全检测并实现访问控制,界定方式是凡是调用libwrap.so库文件的程序就可以受TCP_Wrappers的安全控制。它的主要功能就是控制谁可以访问,常见的程序有:rpcbind、vsftpd、sshd、telnet。

判断方式:

  1. 查看对应服务命令所在位置which sshd

  2. 查看指定命令执行时是否调用libwrap.so文件

    ldd /usr/sbin/sshd | grep libwrap.so
    

TCP Wrappers 工作原理

以ssh为例,每当有ssh连接请求时,先读取系统管理员所设置的访问控制文件,符合要求,则会把这次连接原封不动的转给ssh进程,由ssh完成后续工作;如果这次连接发起的ip不符合访问控制列表中的设置,则会中断连接请求,拒绝提供ssh服务。

TCP Wrapper简易防火墙_第1张图片

  1. 优先查看hosts.allow,匹配即停止
  2. 允许个别,拒绝所有:hosts.allow文件添加允许策略,hosts.deny文件添加all
  3. 拒绝个别,允许所有:hosts.allow文件为空,hosts.deny文件添加单个拒绝的策略

TCP Wrappers 的使用

TCP_Wrappers的使用主要依靠两个配置文件/etc/hosts.allow,/etc/hosts.deny,以此实现访问控制,默认情况下,/etc/hosts.allow,/etc/hosts.deny什么都没有添加,此时没有限制

配置文件编写规则

service_list@host:client_list

service_list:是程序(服务)的列表,可以是多个、多个时使用,隔开

@host:设置允许或禁止他人从自己的哪个网口进入。这一项不写,就代表全部。

client_list:是访问者的地址,如果需要控制的用户比较多,可以使用空格或,隔开

ALL:所有的服务或IP

ALL EXCEPT:除去指定服务或IP后的所有服务或IP

实验

# 通过ALL EXCEPT配置除了192.168.64.5这台服务器,任何服务器执行所有服务时被允许或拒绝

 ALL : ALL EXCEPT 192.168.64.5

# 在规则中使用通配符,匹配192.168.64.x网段中所有主机访问当前服务器和域名满足以test.com结尾即可访问当前服务器

sshd : 192.168.64.*,*.test.com

TCP_Wrapper动作的进阶使用

 # spawn:先执行后续命令,执行完后远程服务器会等待5秒重置连接的时间

 # twist:先执行后续命令,执行完后立刻断开与远程服务器的连接


 # 设置拒绝远程服务器登录后,给root用户发送安全提示邮件

 vi etc/hosts.deny

 sshd : ALL: spawn (echo "Security notice from host $(/bin/hostname)" | bin/mail -s "reject %d-%h ssh" root)

 #sshd : ALL : twist (echo "Security notice from host $(/bin/hostname)" | bin/mail -

 

HTML 1424 字节 88 单词 55 行

你可能感兴趣的:(linux中级,linux,服务器,运维,网络)