海运的博客

Linux/Centos服务器安装portsentry防恶意端口扫描

发布时间:June 28, 2012 // 分类:网络安全 // No Comments

端口做为服务器的大门安全很重要,当服务器运行很多服务时并向外提供服务,为防止有人恶意侦测服务器用途,可使用portsentry来迷惑对方。
portsentry可设定侦听指定的TCP/UDP端口,当遇到扫描时会回应端口开放,并记录扫描者信息可做相应处理:防火墙阻止、路由定向、执行自定义脚本。
portsentry安装之rpm:

rpm -ivh http://flexbox.sourceforge.net/centos/5/x86_64/portsentry-1.2-1.el5.x86_64.rpm

portsentry编译安装:

wget http://sourceforge.net/projects/sentrytools/files/portsentry%201.x/portsentry-1.2/portsentry-1.2.tar.gz
cd portsentry_beta/
#编辑portsentry.c修改以下为一行
#printf ("Copyright 1997-2003 Craig H. Rowland <craigrowland at users dot sourceforget dot net>\n"); 
make linux
make install

portsentry配置文件:

cat /usr/local/psionic/portsentry/portsentry.conf
#TCP和UDP模式监听的端口,可自定义
TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000,5742,6667,12345,12346,20034,27665,31337,32771,32772,32773,32774,40421,49724,54320"
UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,37444,34555,31335,32770,32771,32772,32773,32774,31337,54321"
#忽略IP
IGNORE_FILE="/usr/local/psionic/portsentry/portsentry.ignore"
#所有拒绝IP记录
HISTORY_FILE="/usr/local/psionic/portsentry/portsentry.history"
#启动后拒绝IP记录
BLOCKED_FILE="/usr/local/psionic/portsentry/portsentry.blocked"
#对扫描IP的操作,0为无动作,1防火墙阻止,2执行脚本
BLOCK_UDP="0"
BLOCK_TCP="0"
#路由数据包
KILL_ROUTE="/sbin/route add -host $TARGET$ gw 333.444.555.666"
#Iptables阻止
KILL_ROUTE="/usr/local/bin/iptables -I INPUT -s $TARGET$ -j DROP"
#TCP wrappers阻止
KILL_HOSTS_DENY="ALL: $TARGET$"
#执行脚本
KILL_RUN_CMD="/some/path/here/script $TARGET$ $PORT$"

portsentry启动模式:

/usr/local/psionic/portsentry/portsentry -tcp 
#TCP基本端口绑定,以配置文件端口为准
/usr/local/psionic/portsentry/portsentry -udp
#UDP基本端口绑定,以配置文件端口为准
/usr/local/psionic/portsentry/portsentry -stcp
#TCP私密检测,只记录不回应端口开放
/usr/local/psionic/portsentry/portsentry -sudp
#UDP私密检测,只记录不回应端口开放
/usr/local/psionic/portsentry/portsentry -atcp
#UDP高级秘密检测,自动选择监听端口
/usr/local/psionic/portsentry/portsentry -audp 
#UDP高级秘密检测,自动选择监听端口

以基本TCP检测模式启动,用nmap扫描测试:

[root@xenserver5 ~]# nmap -sS  www.haiyun.me
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2012-06-11 22:35 CST
Interesting ports on typecho.domain.com (192.168.1.2):
Not shown: 1654 closed ports
PORT      STATE SERVICE
1/tcp     open  tcpmux
11/tcp    open  systat
15/tcp    open  netstat
22/tcp    open  ssh
79/tcp    open  finger
80/tcp    open  http
111/tcp   open  rpcbind
119/tcp   open  nntp
143/tcp   open  imap
443/tcp   open  https
540/tcp   open  uucp
635/tcp   open  unknown
1080/tcp  open  socks
1524/tcp  open  ingreslock
2000/tcp  open  callbook
3306/tcp  open  mysql
6667/tcp  open  irc
12345/tcp open  NetBus
12346/tcp open  NetBus
27665/tcp open  Trinoo_Master
31337/tcp open  Elite
32771/tcp open  sometimes-rpc5
32772/tcp open  sometimes-rpc7
32773/tcp open  sometimes-rpc9
32774/tcp open  sometimes-rpc11
54320/tcp open  bo2k

查看防火墙阻止记录:

cat /etc/hosts.deny 
ALL: 192.168.1.6

Windows用mcafee禁止新建用户、提权

发布时间:June 7, 2012 // 分类:网络安全,Windows // No Comments

黑客入侵windows服务器经常会用到新建用户、提权,用mcafee限制可严防此类事情的发生。
打开mcafee控制台——访问保护——属性——用户自定义规则——添加:
7.1更新,注册表限制/SAM/SAM/Domains/Account/Groups/**
mcafee禁止新建用户注册限制.png
防止修改或替换SAM文件:
mcafee禁止写入SAM.png
新建用户测试:
cmd新建用户测试.png

Centos5/Centos6服务器安装SSH蜜罐Kippo

发布时间:May 28, 2012 // 分类:网络安全 // No Comments

Kippo是一个虚拟的交互式的SSH环境模拟,以Python 语言编写,攻击者连接ssh时会被欺骗到蜜罐中,攻击者的口令
猜测记录、执行命令、下载文件和IP地址都会被记录下来。
安装要求:

# Python 2.5+
# Twisted 8.0+
# PyCrypto
# Zope Interface 

yum安装Python26,rpm安装请参考:http://www.geekymedia.com/tech-articles/rhel5-centos5-rpms-for-python-2-5-and-2-6/

yum -y install python26 python26-devel

安装Twisted:

cd /usr/local/src/
wget http://twistedmatrix.com/Releases/Twisted/10.2/Twisted-10.2.0.tar.bz2
tar -xvf Twisted-10.2.0.tar.bz2
cd Twisted-10.2.0
python26 setup.py build
python26 setup.py install 
cd ../

安装zope:

wget http://www.zope.org/Products/ZopeInterface/3.3.0/zope.interface-3.3.0.tar.gz
tar -xvf zope.interface-3.3.0.tar.gz
cd zope.interface-3.3.0
python26 setup.py build
python26 setup.py install 
cd ../

安装pycrypto:

wget https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.0.1.tar.gz
tar zxvf pycrypto-2.0.1.tar.gz 
cd pycrypto-2.0.1
python26 setup.py build
python26 setup.py install 
cd ../

安装pyasn1:

 wget http://sourceforge.net/projects/pyasn1/files/pyasn1/0.0.13/pyasn1-0.0.13.tar.gz
tar zxvf pyasn1-0.0.13.tar.gz 
cd pyasn1-0.0.13
python26 setup.py build
python26 setup.py install
cd ../

Centos6安装以上环境比较简单:

yum install twisted python-zope-interface python-pyasn1

Kippo安装,以非root用户运行:

useradd kippo
su -l kippo
wget http://kippo.googlecode.com/files/kippo-0.5.tar.gz  
tar zxvf kippo-0.5.tar.gz 
cd kippo-0.5
./start.sh 

kippo默认监听2222端口,可以更改ssh端口为非22,利用iptables重定向端口2222到22:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j REDIRECT --to-port 2222

kippo配置文件:

kippo.cfg 

登录及命令记录日志:

kippo.log  

Windows 2003用IP安全策略限制udp-flood发包脚本

发布时间:April 29, 2012 // 分类:网络安全,Windows // No Comments

之前有介绍Linux下通过iptables限制UDP发包,这次记录下Windows 2003的实现方法。
新建bat脚本,添加以下内容,然后点击运行,点此下载禁止UDP发包脚本

:Created by https://www.haiyun.me
:DROP UDP Flood
@echo off
cls
:获取DNS地址
for /f "delims=: tokens=2" %%a in ('ipconfig /all ^| find /i "dns"') do set DNSIP=%%a
)
:新建IP安装策略禁止UDP
netsh ipsec static add policy name=禁止UDP description=允许DNS,拒绝其它UDP外出
:新建IP安全规则
netsh ipsec static add filterlist name=允许UDP
netsh ipsec static add filterlist name=拒绝UDP
:新建IP筛选器
netsh ipsec static add filter filterlist=允许UDP srcaddr=me dstaddr=%DNSIP% description=允许DNS查询 protocol=udp mirrored=yes dstport=53
netsh ipsec static add filter filterlist=拒绝UDP srcaddr=me dstaddr=any description=禁止UDP外出 protocol=udp mirrored=yes
:新建IP筛选器操作
netsh ipsec static add filteraction name=允许DNS查询 action=permit 
netsh ipsec static add filteraction name=拒绝UDP外出 action=block 
:封装策略
netsh ipsec static add rule name=允许规则 policy=禁止UDP  filterlist=允许UDP filteraction=允许DNS查询
netsh ipsec static add rule name=拒绝规则 policy=禁止UDP  filterlist=拒绝UDP filteraction=拒绝UDP外出
:应用IP安全策略
netsh ipsec static set policy name=禁止UDP assign=y

Linux/Centos服务器ssh安全设置

发布时间:April 28, 2012 // 分类:网络安全 // 2 Comments

互联网很危险,SSH做为服务器的大门一定要做好安全设置,我曾经做过测试,一台VPS开启ssh服务监听默认端口22,几天后secure日记分割了10多个,统计最新几小时的恶意登录失败的IP数据如下:
ssh恶意登录统计.png
真是个恐怖的次数,蛋痛的人太多了,如果密码稍简单就被破解了,如需自动封IP请参考:iptables自动封IP防SSH被暴力破解
1.更改默认端口,网上很多针对22端口扫描的软件,这样不会被误伤。

#https://www.haiyun.me
sed -i 's/#Port 22/Port 33333/g' /etc/ssh/sshd_config 
#更改ssh端口为3333

2.禁止root登录,新建普通用户登录,登录后可su -转入root账户,让恶意登录者无法猜测用户名。

useradd onovps #新建用户名
passwd onovps #设置密码
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config
#禁止root登录
service sshd restart #重启ssh服务生效

3.限制登录失败次数并锁定

vim /etc/pam.d/login

在#%PAM-1.0下面添加:

auth required pam_tally2.so deny=5 unlock_time=180 #登录失败5次锁定180秒,不包含root
auth required pam_tally2.so deny=5 unlock_time=180 even_deny_root root_unlock_time=180 #包含root

4.允许特定的用户登录,编辑ssh配置文件:

vim /etc/ssh/sshd_config 
AllowUsers user 
#默认允许全部,多个用户以空格隔开,也可拒绝特定用户登录。
DenyUsers user

5.设置重复验证次数,默认3次:

MaxAuthTries 0
#错误一次即断开连接

6.直接用Iptables封闭ssh端口,为ssh服务器设置开门钥匙,有此其它都是浮云啦。。。。
一般做这些设置就足够了,也可设置为禁用密码用密钥登录,不同客户端方法不同,以后再写吧。

分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...