首页 > 其他 > 详细

SSH Iptables访问控制

时间:2014-09-23 16:48:16      阅读:306      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!