拒绝与Ubuntu / Apache2上特定主机名的连接

我的WordPress的EC2服务器可能被黑客入侵。 当运行iftop命令时,我可以看到我的服务器发送和接收来自主机名“i157panamamails.com”的数据。

这个主机名永远不会消失,吃大量的带宽。 我想阻止服务器与这个主机名进行通信,并完全拒绝它。 我尝试在.htaccess中放置一个deny from并重新启动Apache2服务器(使用Ubuntu 10.0),但它没有帮助,我仍然看到主机名连接活动。 也许连接不是从Apache2,但从我知道这是唯一的服务器安装。

我怎样才能防止服务器拒绝这个主机名?

更多信息:

  • etc/hosts我只有127.0.0.1

  • 在etc / resolve.conf中我有:

    名称服务器[some_ip_address] <—这个IP是EC2的,所以这里没问题

    域ec2.internal

    searchec2.internal

  • resolve.conf中的IP不会parsing为主机名

  • 在端口22/21/80上使用lsof命令在连接中找不到主机名。 端口21有一个用于root用户侦听的连接,但端口21在EC2安全组中未打开,而端口443(HTTPS)没有连接

  • 看起来连接不在apache的80端口上,因为lsof在特定的时间段只显示我的连接,而且我看到在networking打印中该连接仍处于活动状态。 我假定另一个充当服务器的软件可能会在已经打开的与Apache无关的端口80上初始化该连接

  • 在eth0上运行NetHogs显示我的程序sshd:ubuntu @ pts1在用户ubuntu下不停地接收和发送数据(不是Apache2)。 看起来很可疑

  • 我还注意到端口80和其他端口上的程序37:80- [ip_addresses]有很多连接(〜50)。 这些程序不发送或接收数据(大多数)

  • 阻止host.deny中的主机名没有帮助

更新:我已经find了IP,并阻止它在IPtables(OUTPUT和INPUT)。 IP服务器不会向该IP发送数据, 它每秒钟都会收到240字节的数据。

好吧,首先你可以在服务器上运行tcpdump来分析stream量。

 tcpdump -s 65535 -w ~/traffic_capture.pcap 

然后你可以用这个命令读取这个文件:

 tcpdump -vv -r ~/traffic_capture.pcap 

或者下载你的电脑并用wireshark检查。

你也可以使用iptables来logging你所有的输出stream量(这里是规则):

 iptables -A OUTPUT -j LOG 

默认情况下,该stream量的日志将位于/var/log/kern.log中。

你也可以运行带有标志-n的iftop来防止iftop进行主机名查找。

从iftop的手册引用:

  By default, iftop will look up the hostnames associated with addresses it finds in packets. This can cause substantial traffic of itself, and may result in a confusing display. You may wish to suppress display of DNS traffic by using filter code such as not port domain, or switch it off entirely, by using the -n option or by pressing r when the program is running. 

如果你确定你有某种shell或恶意软件,那么你可以尝试使用maldet或ai-bolit来检查apache目录中的恶意软件。

你应该尝试使用iptables来快速修复。

 iptables -A OUTPUT -d 202.54.1.22 -j DROP 

@see http://www.cyberciti.biz/tips/linux-iptables-6-how-to-block-outgoing-access-to-selectedspecific-ip-address.html

在EC2上,如果您在VPC中运行,则可以即时编辑您的ACL并阻止此IP。

但是,如果你真的被黑客入侵,这只是第一步。 看看正在做这些连接的进程,lsof会帮助,找出为什么它正在运行,谁安装它,并在需要时将其从机器中删除。

第二步是加强安全性: – 将wordpress升级到最新版本; 有一些stream行的攻击平台 – 更改所有的IAM和主帐户密码 – 旋转所有访问密钥和ssh密钥 – 确保你不能使用密码ssh – 如果可能的话,只允许SSH通过特定的IP,通过安全组

它可能是出站连接而不是入站。 检查以下活动:

  1. 顶部命令。 您可能想要停止其他服务,以便更明确哪个进程正在使用CPU。
  2. ping i157panamamails.com并查看它是否可以parsing为服务器上的IP。 如果是这样,在iptables上阻止它。
  3. 如果您不需要出站连接,则阻止您的AWS安全组上的所有出站连接。

除了这些被动的措施之外,我还build议您安装OSSEC等基于主机的入侵检测软件来检测未经授权的访问和对系统的更改。