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. hdu4081(秦始皇的道路系统)

    During the Warring States Period of ancient China(476 BC to 221 BC), there were seven kingdoms in Ch ...

  2. C#进阶之AOP

    一.AOP概念(转自) AOP(Aspect-Oriented Programming,面向切面的编程),它是可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技 ...

  3. 网时|ipone8爆冷,我的服务器空欢喜一场

    上周ipone可谓是占尽了风头,从face ID到全面屏,从人脸识别到逆天价格,小编都能预想到上市之后的一片火热了,苹果后台的服务器恐怕都早已做好了准备,加大带宽,稳定运行,确保万无一失. 9月22日 ...

  4. C#仪器数据文件解析-RTF文件

    RTF格式文件大家并不陌生,但RTF文件的编码.解码却很难,因为RTF文件是富文本格式的,即文件中除了包含文本内容,还包含文本的格式信息,而这些信息并没有像后来的docx等采用XML来隔离格式和内容, ...

  5. IDL 矩阵运算

    矩阵相乘,A#B表示A的列乘以B的行,要求A的行数必须跟B的列数一致 IDL> A=[[0,1,2],[3,4,5]] IDL> B=[[0,1],[2,3],[4,5]] IDL> ...

  6. django中间件Middleware

    熟悉web开发的同学对hook钩子肯定不陌生,通过钩子可以方便的实现一些触发和回调,并且做一些过滤和拦截. django中的中间件(middleware)就是类似钩子的一种存在.下面我们来介绍一下,并 ...

  7. Struts2 02--通配符

       在以前没有使用Struts时,web与前台的数据交互通过Servlet+jsp页面.一个增删改查往往需要写四个Servlet来处理数据:在使用struts之后,Servlet不再被使用,而是通过 ...

  8. Struts2 03---数据封装+获取表单提交数据

        Struts的数据封装分为三种:属性封装,模型驱动,表达式封装.下面以获取表单提交数据来简单介绍一下Struts的数据封装. <form action="loginlogin. ...

  9. Swift 算法实战之路:栈和队列

    这期的内容有点剑走偏锋,我们来讨论一下栈和队列.Swift语言中没有内设的栈和队列,很多扩展库中使用Generic Type来实现栈或是队列.笔者觉得最实用的实现方法是使用数组,本期主要内容有: 栈和 ...

  10. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...