码迷,mamicode.com
首页 > 其他好文 > 详细

SSH Iptables访问控制

时间:2014-09-23 18:30:25      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:用户名   服务器   配置文件   

方法一:

在/etc/hosts.allow中添加允许ssh登陆的ip或者网段   
sshd:192.168.1.2:allow 或者

sshd:192.168.1.0/24:allow 

在/etc/hosts.deny添加不允许ssh登陆的IP
sshd:ALL           #ALL表示除了上面允许的,其他的ip 都拒绝登陆ssh

方法二:

使用iptables。  
iptables -A INPUT -p tcp -s 192.168.1.2 --destination-port 22 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 22 -j DROP 

方法三:

修改ssh配置文件

vi /etc/ssh/sshd_config
添加一行:
allowusers xxx@192.168.1.2 
注:xxx为你用来登入服务器的用户名。

*********************************************************

隐藏和伪装端口banner  http://kangyang.blog.51cto.com/471772/580853

**********************************************************

net session /delete /y

************************************************

Linux服务器被攻击的几个表象:

1.从外部ping延迟高
2.从内部ping网关延迟高
3.内存和CPU占用居高不下
4.通过netstat查看到的状态为SYN_RECV的请求多,且刷新慢

抵挡攻击的方法:

1.设置防火墙规则


1.iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT

2.iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

3.iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

2.封ip和ip段


1.iptables -I INPUT -s 49.116.15.23 -j DROP     #封单个ip

2.iptables -I INPUT -s 49.116.15.23/32 -j DROP  #和上一个效果一样,封单个IP

3.iptables -I INPUT -s 49.116.15.0/24 -j DROP   #封ip段,指定前三段

4.iptables -I INPUT -s 49.116.0.0/16 -j DROP    #封ip段,只指定前两段

5.iptables -I INPUT -s 49.0.0.0/8 -j DROP       #封ip段,只指定第一段

在这里有个问题:如何知道该封哪些个ip呢?
答案是 netstat 命令。
通过 netstat查看当前请求,频繁出现且状态为SYN_RECV的ip多是恶意攻击的。

两个方法要结合起来用才能起来显著的效果,这是本人在维护高并发和高流量的投票网站中实践得出的经验。

*****************************************


SSH Iptables访问控制

标签:用户名   服务器   配置文件   

原文地址:http://vmking.blog.51cto.com/6433018/1557353

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!