分类目录归档:软件

软件主菜单:软件技术相关文章。

linux mint xfce 在登录界面隐藏用户

如果你不希望某些用户出现在您的linux mint xfce的登录界面,可以执行以下操作:

sudo vi /etc/mdm/mdm.conf

会看到如下类似内容,

[daemon]

[security]

[xdmcp]

[gui]

[greeter]

[chooser]

[debug]

在[greeter] 节点下添加如下内容,

Exclude=nobody,user1,user2

其中,user1和user2是你不希望显示在登录界面的用户名。修改后内容类似,

[daemon]

[security]

[xdmcp]

[gui]

[greeter]
Exclude=nobody,user1,user2
[chooser]

[debug]

然后保存,重启即可。

在文章中显示数学公式

在我们写博客过程中可能涉及要显示数学公式,那么这时让wordpress博客支持数学公式就显得很有必要。现在我讲支持方式写出来:
1. 首先为博客安装插件:MathJax-LaTeX, 它是基于https://www.mathjax.org/

实现的。

2. 在编写博客时,在你想显示数学公式的地方输入latex标签,中间用latex语法输入数学公式即可,比如

数学公式录入

这样就可以显示如下样式的公式,

\( E=mc^2 \)

另一个复杂的例子,

\(\left [ – \frac{\hbar^2}{2 m} \frac{\partial^2}{\partial x^2} + V \right ] \Psi = i \hbar \frac{\partial}{\partial t} \Psi\)

如果需要查看latex源码,可以在公式上面点击鼠标左键查看。很是方便。

注意:在墙内,默认的mathjax cdn是无法访问的,这样会导致它无法加载,影响公式的渲染展示,这时,请到MathJax-LaTeX 设置页面的Custom MathJax location? 录入一个mathjax cdn,比如我录入的是://cdn.bootcss.com/mathjax/2.6.1-rc.1/MathJax.js, 同时不要勾选Use MathJax CDN Service? ,然后保存。这样就可以正常显示公式了。

wordpress xmlrpc攻击解决

今天,我想打开本博客,居然发现我的博客报:

504 Gateway Time-out

这是为何呢?难道我的服务器所在位置的网络有问题?dns解析不正常?还是程序运行太慢? 赶快登录ec2后台,将服务器重启,10秒左右不到,我重新访问我的博客,访问正常,然后仅仅过了不到一分钟,我的博客再次出现错误:

504 Gateway Time-out

看来有有外部力量在破坏我的博客服务器。赶快登录服务器后台,查看下cpu
top
后台发现有好几个php5-fpm进程在执行,cpu使用率在20%~30%波动,我的博客访问量很小,不应该有这么多php5-fpm进程的,博客内容做了缓存,更不应该出现这么高的使用率。
继续查看nginx访问日志,

tail -f /var/log/nginx/access.log

发现如下持续频繁的访问:

攻击日志

从日志看,攻击者ip 为185.130.5.209, 因为访问频繁而导致499,也有502网关错误,这个499可以理解,而502属于攻击者频繁访问,导致php处理速度变慢引起。

先屏蔽这个ip,阻止它继续攻击,

sudo iptables -A INPUT -s 185.130.5.209 -j DROP

继续观察日志,

tail -f /var/log/nginx/access.log

发现攻击ip发生变化,

攻击日志

看来攻击程序会变更自己的ip来伪装自己,那干脆直接屏蔽整个ip段:

sudo iptables -A INPUT -s 185.130.5.0/16 -j DROP

继续观察日志发现,攻击停止,博客访问恢复。
说明这样可以暂时拦截攻击,那保存刚才的iptables配置,

sudo iptables-save

这样就可以避免下次服务器重启而导致配置丢失。

我们接着分析下这个攻击。攻击者请求wordpress的xmlrpc.php,

185.130.5.195 - - [06/Feb/2016:13:56:20 +0000] "POST /xmlrpc.php HTTP/1.0" 499 0 "-" "Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)"

xmlrpc是wordpress提供的apic,允许开发客户端来进行发布、更新等操作,而攻击者进行持续试探一般也是为了通过暴力方式获取博客密码,然后进行各种非法操作。所以,如果没有使用xmlrpc,可以通过disable xmlrpc插件将这个功能禁用,但如果用了,则就要给服务器配置一套防火墙来避免大流量攻击。配置防火墙属于非常专业的工作,需要进行深入研究进行。但对于ec2和阿里云这样的服务器来说,可以直接购买对应服务即可。

以下攻击的数据,从图中可以看到,攻击者一直在持续进行攻击试探,最后在我屏蔽ip后各项数据直线降了下来。

进入服务器的流量
输出的网络流量
cpu占有率

环境信息:ubuntu, nginx, wordpress.

以上