linux 安装wordpress 无故往外发送大量垃圾邮件 始末

表现出来的现象就是, 网站运行没多久,mysql服务就挂了,重启也无法启动起来,提示 No such file or dicrionary  但是很明显mysql是存在的,但是为什么出现这个提示,后来搜了一下,发现是因为磁盘空间不足。

然后运行 df -l 发现磁盘使用不到30%  怎么会不足呢。 继续搜, 发现原来是 inode 节点不足了。 使用命令 df -i 查看发现 inode节点使用100% 已经满了。

inode节点不足是怎么造成的呢,于是继续搜索。 然后发现是因为巨量的小文件导致 inode节点不足。 那这个巨量的小文件在哪呢,怎么查找,头疼。 毕竟菜鸟对linux命令不熟悉。

然后继续搜索,发现可以使用linux命令查找最近的文件,因为这个问题是最近几天才出现的,所以可以查找一下最近几天增加的文件有哪些。然后使用 find / mtime +2 即可查看最近2天新增的文件。 然后从列表中发现在 var/spool/postfix/maildrop/ 目录中发现有大量文件。 使用命令  ls -l |grep "^-"|wc -l 查看该目录下的文件个数,有30多万个,乖乖,问题找到了。

然后搜了一下 发现这个目录的文件之所以会有这么多 就是因为发送邮件失败后都会有文件被存放到这里,就类似于一个队列的感觉。 然后把这个目录的所有文件删除。 进入该目录后,使用 rm -rf * 发现提示命令超过最大长度。乖乖,删还费劲啊,然后继续搜索,删除巨量文件的linux命令

ls|xargs rm -f

光把这里删了还不行,还需要修改一下mail服务里面的配置,让它以后不再保存这些队列邮件了

解决方法:
修改“/etc/crontab”
将‘MAILTO=root’替换成‘MAILTO=""’修改之后没有成功,需要重启crond服务才可以 service crond restart

修改完以上内容后,开启邮件服务,然后 垃圾邮件还是继续发。 我就奇怪了,这到底是为啥呢。

然后以为网站中毒,于是逐个扫描病毒。 使用了360提供的 主机卫士 http://zhuji.360.cn/  查杀网站后门文件。 清理完毕后仍然无效

再后来搜到一篇文章,说是空间被当作代理服务器发送邮件,因为没有屏蔽未经认证的域名。 然后在apche的配置文件中

httpd.conf 修改一下非允许域名不能解析到本空间地址。

<VirtualHost *:80>
ServerName 你的IP地址
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>

对允许的域名做如下设置,允许的域名这段代码放在上面禁止的代码之后:

<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/
<Directory "/var/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

如果有多个域名,复制多个即可。

原文见这里 http://blog.itpub.net/59745/viewspace-611292/

上的设置已经完成,重启以观后效

后续补充:

经过一段时间测试后发现 maildrop又被塞满了,然后 使用crontab -e 对 root的crontab进行了编辑。 增加一行 MAILTO="" 再试试吧。

linux 安装wordpress 无故往外发送大量垃圾邮件的更多相关文章

  1. 关于阿里云服务器Linux安装Tomcat后,外网不能访问解决方案

    这里需要提及三个方面的问题   第一个方面:Linux上启动防火墙的问题 当下比较流行的Linux镜像是CentOS,所以防火墙也随之变成了firewall,那么怎么操作这个防火墙呢?   #停止fi ...

  2. 发送垃圾邮件的僵尸网络——药物(多)、赌博、股票债券等广告+钓鱼邮件、恶意下载链接、勒索软件+推广加密货币、垃圾股票、色情网站(带宏的office文件、pdf等附件)

    卡巴斯基实验室<2017年Q2垃圾邮件与网络钓鱼分析报告> 米雪儿 2017-09-07 from:http://www.freebuf.com/articles/network/1465 ...

  3. Linux中Postfix反病毒和垃圾邮件工具(十)

    amavisd-new amavisd-new呼叫器是一个连接MTA和内容检测工具(诸如病毒扫描工具和SpamAssassin)的高性能接口程序,使用perl语言写成.它一般通过SMTP.ESMTP或 ...

  4. Linux中Postfix反病毒和垃圾邮件(十)

    amavisd-new amavisd-new呼叫器是一个连接MTA和内容检测工具(诸如病毒扫描工具和SpamAssassin)的高性能接口程序,使用perl语言写成.它一般通过SMTP.ESMTP或 ...

  5. wordpress防止垃圾邮件的另一种方法

    我们知道wordpress可以用Akismet插件防止垃圾邮件,前面ytkah还讲过contact form 7如何搭配Akismet过滤垃圾邮件,还有什么方法呢?我们留在网站上的邮箱有可能被爬虫批量 ...

  6. WordPress安装篇(3):用宝塔面板在Linux上安装WordPress

    前面的文章已经介绍了如何在Windows环境安装WordPress,这篇文章来介绍在Linux环境怎样快速安装WordPress.大家都知道,Linux系统相对于Windows系统而言占用资源更少.更 ...

  7. 在linux下安装wordpress

    win下的简直傻瓜式操作:xampp打包一键安装 linux下的考虑到一些权限问题 还是有点蛋疼的 现在把流程贴出来做下记录: linux下安装xampp和wordpress的流程 ×由于linux下 ...

  8. Linux(Debain)环境安装WordPress

    一.相关组件安装 1. 安装Apache apt-get install apache2 安装完毕后浏览器 http://localhost/ 或者 http://127.0.0.1 出现It Wor ...

  9. linux下WordPress安装

    http://www.cnblogs.com/xiaofengkang/ WordPress简介 WordPress 是一种使用 PHP语言和 MySQL数据库开发的开源.免费的Blog(博客,网志) ...

随机推荐

  1. Rectangles hdu2461容斥定理

    Rectangles Time Limit: 5000/4000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  2. Java Socket通信以及可能出现的问题解决

    Java中基于TCP协议实现网络通信的两个类:客户端的Socket和服务器端的ServerSocket. Socket通信模型如图所示: 不管Socket通信的功能有多复杂,任何socket通信过程的 ...

  3. 学习如何看懂SQL Server执行计划——基本知识篇

    一.基本概念 1.数据的读取 页(page)是SQL SERVER可以读写的最小I/O单位.即使只需访问一行,也要把整个页加载到缓存之中,再从缓存中读取数据.物理读取是从磁盘上读取,逻辑读取是从缓存中 ...

  4. VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面)

    本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...

  5. python之线程学习

    一.进程与线程简介 进程 进程是程序的一次执行,由进程段.数据段.进程控制块三部分组成.具体三个基本状态,就绪.执行.阻塞,是一个拥有资源的独立单位. 线程 属于进程的一个实体,拥有极少的资源.也具有 ...

  6. UltraEdit中使用正则表达式替换

    UltraEdit在使用正则表达式进行查找替换时有两个可使用的语法集合.一个是 UltraEdit 的更早的版本被使用的原来的 UltraEdit 句法.另一个是"Unix"类型的 ...

  7. Scala 运算符和集合转换操作示例

    Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据集上应用一系列的变换,语言本身也对集合操作提供了众多强大的函数,本文将以List类型为 ...

  8. Linux命令-基本命令(1)

    1. ll dfdfdfd 2. vi dfffd

  9. WPF DelegateCommand 出现Specified cast is not valid

    使用 DelegateCommand 出现 Specified cast is not valid 最近写快捷键需要 DelegateCommand ,于是用了 DelegateCommand< ...

  10. 【转】ATA Secure Erase

    ATA Secure Erase     This procedure describes how to use the hdparm command to issue a Secure Erase  ...