centos 5.3安装knockd与使用说明----原创

大家都知道,如果sshd端口完全公开对外开放,那将是对系统是一个至命的打击,如果指定一个IP来登录主机,可我们的登录地址发生变化,IP地址变化后,我们将被拒之主机之外,怎么办了,这里konckd已经为我们想到了很好的解决办法
以下为安装配置方法
本文编译环境
centos 5.3
先更新下需要的文件
[root@localhost voilet]# yum install gcc glibc-devel
[root@localhost voilet]# yum groupinstall Development Tools
knock下载地址
http://www.invoca.ch/pub/packages/knock/

[root@localhost voilet]# wget http://www.invoca.ch/pub/packages/knock/knock-0.5-6.src.rpm
--17:26:11--  http://www.invoca.ch/pub/packages/knock/knock-0.5-6.src.rpm
正在解析主机 www.invoca.ch... 157.161.91.33
Connecting to www.invoca.ch|157.161.91.33|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:91259 (89K) [application/x-rpm]
Saving to: `knock-0.5-6.src.rpm'
100%[=====================================================================================>] 91,259      29.5K/s   in 3.0s
17:26:20 (29.5 KB/s) - `knock-0.5-6.src.rpm' saved [91259/91259]

编译为rmp安装文件
rpmbuild --rebuild knock-0.5-4.src.rpm
这时系统提示
-bash: rpmbuild: command not found
系统提示未找到rpmbuild命令,然后去centos官方查看相关资料,看到官方人员回复
Is the rpm-build package installed? You can check this with:
rpm rpm-build -q
If not, you can install this package with:
yum install rpm-build
这时才发现,原来我直接用yum install rpmbuild来安装未找到文件的原因,呵,这里大伙也要记住,是yum install rpm-build嘿
在线安装完yum install rpm-build当然就是编译安装文件了
[root@localhost voilet]# rpmbuild --rebuild knock-0.5-6.src.rpm
系统出现了我们可爱的界面

Installing knock-0.5-6.src.rpm
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.86029
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd /usr/src/redhat/BUILD
+ rm -rf knock-0.5
+ /bin/gzip -dc /usr/src/redhat/SOURCES/knock-0.5.tar.gz

............中间省略

+ cd /usr/src/redhat/BUILD
+ rm -rf knock-0.5
+ exit 0


如果出现这些就表示编译成功,下面我们就开始安装

[root@localhost voilet]# rpm -ivh /usr/src/redhat/RPMS/i386/knock-*
Preparing...                ########################################### [100%]
   1:knock-server           ########################################### [ 50%]
   2:knock                  ########################################### [100%]
You have new mail in /var/spool/mail/root


查看一下knock的使用方法

[root@localhost voilet]# man knock

       -v, --verbose
              Output verbose status messages.

       -V, --version
              Display the version.

       -h, --help
              Syntax help.

EXAMPLES
       knock myserver.example.com 123:tcp 456:udp 789:tcp
       knock -u myserver.example.com 8284 4721 18592 42912

SEE ALSO
       knockd is the accompanying port-knock server.

AUTHOR
       Judd Vinet

knockd 0.5                       June 26, 2005                        knock(1)

**********************详细请自己使用man命令查看,这里省略


配置knock配置文件

[root@localhost voilet]# vi /etc/knockd.conf
[options]
        UseSyslog

[opencloseSSH]
        sequence      = 2222:udp,3333:tcp,4444:udp
        seq_timeout   = 15
        tcpflags      = syn,ack
        start_command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport ssh -j ACCEPT
        cmd_timeout   = 10
        stop_command  = /sbin/iptables -D INPUT -s %IP% -p tcp --dport ssh -j ACCEPT

# 详细使用方法可以用 man knockd 查到,简单说明下:
# [options]:    与 knockd 环境有关的选项;
# UseSyslog:     与 knockd 有关的登录的记录 syslogd 存放到 /var/log/messages
# [opencloseSSH] 开启和关闭 SSH 防火墙的设定;
# sequence:     knockd 检测包过滤协议 (tcp/udp)
# seq_timeout:     需要在几秒內,连续触发以上端口;
# tcpflags:     来源数据包标识分析,一般來說, UDP 封包不会有 ack ,
#         所以上述的的数据包是无法符合我们的要求的。
# start_command: 若连续触发所有端口,则 knockd 开始执行这条命令;
# stop_command:     若用户断开了,可是登录超时,则执行这条命令
# cmd_timeout:     若设置 stop_command ,则需要设置防火墙开始与关闭的时间。

启动knockd

[root@localhost voilet]# /etc/init.d/knockd start
启动 knockd:                                              [确定]
[root@localhost voilet]# knock -v 100.100.100.3 2222:udp 3333:tcp 4444:udp
hitting udp 100.100.100.3:2222
hitting tcp 100.100.100.3:3333
hitting udp 100.100.100.3:4444

之后就可用putty登录主机了
如果是windows客户端,则需要下载windows客户端的程序进行连接
http://www.zeroflux.org/proj/knock/files/knock-win32.zip
DOS下面启动replease下面的文件即可,然后执行

knock.exe -v 100.100.100.3 2222:udp 3333:tcp 4444:udp
hitting udp 100.100.100.3:2222
hitting tcp 100.100.100.3:3333
hitting udp 100.100.100.3:4444


本站源创,转载请注明出处


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: centos linux knockd
相关日志:
评论: 0 | 引用: 0 | 查看次数: 559
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 支持Gravatar头像.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭