TCP Wrappers原理及简单实验
1.TCP Wrappers(简易防火墙)简介
TCP_Wrappers是一个工作在第四层(传输层)的的安全工具,对有状态连接(TCP)的特定服务进行安全检测并实现访问控制,界定方式是凡是调用libwrap.so库文件的的程序就可以受TCP_Wrappers的安全控制。它的主要功能就是控制谁可以访问,常见的程序有rpcbind、vsftpd、sshd,telnet
判断方式:
⑴查看对应服务命令所在位置
which sshd
⑵查看指定命令执行时是否调用libwrap.so文件
ldd /usr/sbin/sshd | grep libwrap.so
2.TCP Wrappers工作原理
以ssh为例,每当有ssh的连接请求时,先读取系统管理员所设置的访问控制文件,符合要求,则会把这次连接原封不动的转给ssh进程,由ssh完成后续工作;如果这次连接发起的ip不符合访问控制文件中的设置,则会中断连接请求,拒绝提供ssh服务[通过审查客户端的来源地址,决定该客户端的请求是否需要送达到SSH服务]

匹配顺序:
⑴优先查看/etc/hosts.allow,匹配即停止
⑵允许个别,拒绝所有(白名单):/etc/hosts.allow文件添加允许的策略,hosts.deny文件添加all
⑶拒绝个别,允许所有(黑名单):/etc/hosts.allow文件为空,hosts.deny文件添加单个拒绝的策略
3.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:是访问者的地址,如果需要控制的用户较多,可以使用空格或,隔开
client_list格式如下:
基于IP地址: 192.168.88.1 192.168.88.
基于域(域名): www.kernel.com .kernel.com 较少用(域名IP可能变)
基于网络/掩码: 192.168.0.0/255.255.255.0
内置ACL:ALL(所有主机)、LOCAL(本地主机)
简单实验:
⑴拒绝单个IP使用ssh远程连接(黑名单)效果
/etc/hosts.allow:空着
/etc/hosts.deny:sshd:192.168.88.20
20服务器无法远程登录10服务器

⑵拒绝某一网段使用ssh远程连接:
/etc/hosts.allow:空着
/etc/hosts.deny:sshd:192.168.88. 或者sshd:192.168.88.0/255.255.255.0

但sshd:192.168.88.0/24 可写入,但加入限制名单后仍可正常登入,故未生效,如图


⑶仅允许某一IP使用ssh远程连接(白名单)效果
/etc/hosts.allow:sshd:192.168.88.20 /etc/hosts.deny:sshd:ALL
192.168.88.20可正常登录10服务器

10用户无法远程登陆

192.168.88.20外的IP无法正常登录

TCP Wrappers原理及简单实验的更多相关文章
- SSH服务与tcp wrappers实验
SSH服务与tcp wrappers实验 实验环境: 一台linux(ssh client) 一台linux(ssh server) 实验步骤: 1.配置IP,测试连通性 2.在客户端创建用户yuzl ...
- TCP Wrappers(简单防火墙)---限制IP登录ssh
1.TCP Wrappers 简介 TCP_ Wrappers是- 一个工作在第四层(传输层)的的安全工具,对有状态连接(TCP)的特定服务进行安全检测并实现访问控制,界定方式是凡是调用libwrap ...
- 基于TCP的NAT子网穿透实验
不得不说,在国内IP紧缺的现状下,NAT发挥了无比巨大的作用:它以把IP和端口重新分配的方式,满足了广大人民群众上网的强烈需求.但是对于个人服务器以及在内网中基于网络的嵌入式设备,却是个比较尴尬的事情 ...
- RabbitMQ系列(二)深入了解RabbitMQ工作原理及简单使用
深入了解RabbitMQ工作原理及简单使用 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器Exchange介绍 ...
- 深入解读RabbitMQ工作原理及简单使用
RabbitMQ系列目录 RabbitMQ在Ubuntu上的环境搭建 深入解读RabbitMQ工作原理及简单使用 Rabbit的几种工作模式介绍与实践 Rabbit事务与消息确认 Rabbit集群搭建 ...
- Win Socket编程原理及简单实例
[转]http://www.cnblogs.com/tornadomeet/archive/2012/04/11/2442140.html 使用Linux Socket做了小型的分布式,如Linux ...
- C#版清晰易懂TCP通信原理解析(附demo)
[转] C#版清晰易懂TCP通信原理解析(附demo) (点击上方蓝字,可快速关注我们) 来源:周见智 cnblogs.com/xiaozhi_5638/p/4244797.html 对.NET中网络 ...
- [转帖]mDNS原理的简单理解
mDNS原理的简单理解 https://binkery.com/archives/318.html 发现还有avahi-daemon mdns 设置ip地址 等等事项 网络部分 自己学习的还是不够多 ...
- 深入了解RabbitMQ工作原理及简单使用
深入了解RabbitMQ工作原理及简单使用 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器Exchange介绍 ...
随机推荐
- 软碟通制作win10镜像,无法打开install.wim的问题
打开软碟通,单击左上角"文件"→"打开",选择.iso文件的存放目录,再选择.iso映像文件打开,即可看到映像文件全部加载到UltraISO了,如下图. 将 ...
- 【Nginx】使用keepalive和nginx搭载高可用
首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现web服务端的高可用. Keepa ...
- kafka(一)入门
一.消息引擎系统 这类系统引以为豪的消息传递属性,像引擎一样,具备某种能量转换传输的能力 消息引擎系统是一组规范,企业利用这组规范在不同系统之间传递语义准确的消息,实现松耦合的异步式数据传递.通俗地讲 ...
- 集成多种协议、用于 USBC 端口的快充协议芯片IP2723
1. 特性 快充规格 集成 QC4/QC4+输出快充协议 - 兼容 QC2.0/QC3.0 - 支持 Class B 电压等级 集成 FCP 输出快充协议 集成 SCP 输出快充协议 集成 ...
- MYSQL面试题-索引
MYSQL面试题-索引 引自B站up编程不良人:https://www.bilibili.com/video/BV19y4y127h4 一.什么是索引? 官方定义:索引是一种帮助mysql提高查询效率 ...
- 生僻标签 fieldset 与 legend 的妙用
谈到 <fieldset> 与 <legend>,大部分人肯定会比较陌生,在 HTML 标签中,属于比较少用的那一批. 我最早知道这两个标签,是在早年学习 reset.css ...
- Vue中:error 'XXXXX' is not defined no-undef解决办法
Vue中:error 'XXXXX' is not defined no-undef解决办法 报错内容: × Client Compiled with some errors in 7.42s √ S ...
- (hive)hive优化(转载)
1. 概述 1.1 hive的特征: 可以通过SQL轻松访问数据的工具,从而实现数据仓库任务,如提取/转换/加载(ETL),报告和数据分析: 它可以使已经存储的数据结构化: 可以直接访问存储在Apac ...
- UML 博客学习 后续继续完善
http://blog.csdn.net/monkey_d_meng/article/details/6005764 http://blog.csdn.net/badobad/article/det ...
- 算法总结篇---AC自动机
目录 写在前面 算法流程 引例: 概述: Trie树的构建(第一步) 失配指针(第二步) 构建失配指针 字典树和字典图 多模式匹配 例题 写在前面 鸣谢: OiWiki 「笔记」AC 自动机---Lu ...