免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2551 | 回复: 0
打印 上一主题 下一主题

保护sshd服务-单数据包认证工具fwknop简介 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-23 02:40 |只看该作者 |倒序浏览

fwknop是个单数据包认证与授权(Single Packet Authorization)的软件,包括两部份:
fwknopd:服务器端,用于接收客户端的连接请求并创建iptables规则;
fwknop:客户端,用于发送认证数据包;

认证通过后,服务器会有30秒(可配置)时间允许接入,之后保持接入状态。

一、软件安装

下载:http://www.cipherdyne.org/fwknop/
安装前可能需要先装:

apt-get install libgdbm-dev

按照传统安装方式:

./configure && make sudo make install

二、配置

access.conf

SOURCE: ANY;
OPEN_PORTS: tcp/22;
KEY: test;
REQUIRE_USERNAME: testuser;
FW_ACCESS_TIMEOUT: 30;

允许从任何IP地址以客户端上的testuser用户身份发起fwknop认证请求,认证密码为test。每次认证通过后,fwknopd为该客户端IP地址创建的一条iptables规则允许其连接sshd服务。fwknopd30秒后自动清除该iptables规则,已经连接上的数据链路不会被阻止,但是禁止新的ssh连接请求。

fwknopd.conf

PCAP_INTF eth0;
MAX_SPA_PACKET_AGE    120;
ENABLE_SPA_PACKET_AGING Y;
IPT_INPUT_ACCESS ACCEPT, filter, INPUT, 1, FWKNOP_INPUT, 1;

fwknopd监控来自eth0的数据包信息,并且要求客户端发起认证请求后,必须在120秒内完成认证过程;否则本次认证就会被视为失败。(必须保证Client与Server的时间是同步的,建立使用NTP保持时间同步)
认证通过后在系统防火墙上建立一条iptables规则,允许客户端发起ssh连接。

三、测试

服务器端通过iptables防止除lo之外所有的INPUT连接

/sbin/iptables -F
/sbin/iptables -F -t nat
/sbin/iptables -X
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -i ! lo -j DROP

客户端尝试扫描服务器的开放端口(例如SSH),此时必然显示filtered,无法连接

nmap ServerIP -p 22

服务器端:
启动监控服务进程 /usr/local/sbin/fwknopd
停止监控服务进程 /usr/local/sbin/fwknopd -K

客户端:
初始化客户端环境运行
[testuser@linux ~]$/usr/local/bin/fwknop -f -v

客户端"敲门"

[testuser@linux ~]$/usr/local/bin/fwknop -A tcp/22 -a ClientIP -D ServerIP

这时客户端再尝试扫描服务器的22端口,则会显示开放,能够正常连接。
ssh ServerIP

四、技巧

1、如果用于透明网桥(bridge),要打开FORWARD链,可以简单将配置文件fwknop.conf中:

IPT_INPUT_ACCESS ACCEPT, filter, INPUT, 1, FWKNOP_INPUT, 1;

改成:

IPT_INPUT_ACCESS ACCEPT, filter, FORWARD, 1, FWKNOP_INPUT, 1;

2、总是提示"SPA data is too old"怎么办?

下面的配置就是对付这个问题的:

ENABLE_SPA_PACKET_AGING N;
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP