最近我的 CENTOS 机器遭受了多次攻击。我运行 MRTG,当发生攻击时,TCP 连接图会疯狂上升。这导致机器无法访问。
我的MRTG图表:mrtg图
这是我当前的 /etc/sysctl.conf 配置
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 1
# Controls whether core dumps will append the PID to the core filename
# Useful for debugging multi-threaded applications
kernel.core_uses_pid = 1
# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1
# Controls the maximum size of a message, in bytes
kernel.msgmnb = 65536
# Controls the default maxmimum size of a mesage queue
kernel.msgmax = 65536
# Controls the maximum shared segment size, in bytes
kernel.shmmax = 68719476736
# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 4294967296
net.ipv4.conf.all.rp_filter = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.all.rp_filter = 1
net.ipv4.tcp_max_syn_backlog = 1280
在我的 Iptables 文件 (/etc/sysconfig/iptables) 中我只有这个设置
# Generated by iptables-save v1.3.5 on Mon Feb 14 07:07:31 2011
*filter
:INPUT ACCEPT [1139630:287215872]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1222418:555508541]
结合上述设置,大约有 800 个 IP 通过 iptables 文件被阻止,如下所示:
-A INPUT -s 82.77.119.47 -j DROP
这些都是在我之前通过电子邮件向我的主机托管商发送有关攻击的信息时添加的。
我不是专家,但我不确定这是否理想。
我的问题是,在 iptables 文件和可能的其他文件中添加哪些好东西,可以使攻击者更难攻击我的机器,而不会关闭任何非攻击用户。
提前致谢!
答案1
尝试使用 iptables 中最近的匹配。
以下是简短的Debian 操作指南这会给你一些想法。只需确保你设置的限制是合理的,并考虑 NAT 流量。
如果流量直接流向网络服务器,请确保正确使用“保持活动”功能,以便能够限制有效流量上的新连接数量,从而允许您对非有效流量采取更严格的限制。