小编fpg*_*ost的帖子

为什么 logrotate 每次都会导致 Apache 出现段错误?

每次logrotate运行 Apache/2.4.7 (Ubuntu) 都会遇到段错误并且不会重新启动:

[Wed Sep 10 06:35:54.266018 2014] [mpm_event:notice] [pid 20599:tid 140630283466624] AH00493: SIGUSR1 received.  Doing graceful restart
[Wed Sep 10 06:35:54.885118 2014] [core:notice] [pid 20599] AH00060: seg fault or similar nasty error detected in the parent process
Run Code Online (Sandbox Code Playgroud)

我的 apache logrotate 脚本如下所示:

/var/log/apache2/*.log {
    daily
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    create 640 root adm
    sharedscripts
    postrotate
        /usr/sbin/apachectl graceful
    endscript
    prerotate
        if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
            run-parts /etc/logrotate.d/httpd-prerotate; \
        fi; \
    endscript
}

/srv/apache/log/*.log { …
Run Code Online (Sandbox Code Playgroud)

logrotate segmentation-fault apache-2.4

15
推荐指数
1
解决办法
1万
查看次数

如何在fail2ban中使用所谓的动作变量?

我在文档和杂项脚本中看到了一些对这些的提及,但没有具体说明它们是如何使用的。谁能给我一些例子?

这只是一个案例吗

myvar=7
.
.
.
[ssh]
bantime=%(myvar)s
Run Code Online (Sandbox Code Playgroud)

如果是这样,重点是什么?

其次,如何使用 jail.conf 中的“操作快捷方式”?例如action_ = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"],关于此的任何文档?

fail2ban

9
推荐指数
1
解决办法
6372
查看次数

fail2ban-regex 与字符串匹配,但与日志和conf文件不匹配,为什么?

如果我跑

fail2ban-regex '31.22.105.115 - - [11/Apr/2014:18:09:54 +0100] "GET /admin/config.php 
HTTP/1.0" 301 573 "-" "-"' '^<HOST> - - (?:\[[^]]*\] )+\"(GET|POST)/(?i)(PMA|phptest|phpmyadmin|myadmin|mysql|mysqladmin|sqladmin|mypma|admin|xampp|mysqldb|mydb|db|pmadb|phpmyadmin1|phpmyadmin2|cgi-bin)'
Run Code Online (Sandbox Code Playgroud)

然后我明白了Success, the total number of match is 1。然而如果我有一个access.log包含

 .
 .
109.68.191.26 - - [11/Apr/2014:12:47:50 +0100] "GET / HTTP/1.0" 301 541 "-" "masscan/1.0 (https://github.com/robertdavidgraham/masscan)"
31.22.105.115 - - [11/Apr/2014:18:09:54 +0100] "GET /admin/config.php HTTP/1.0" 301 573 "-" "-"
Run Code Online (Sandbox Code Playgroud)

和一个filter.d.conf 文件包含

failregex  = '^<HOST> - - (?:\[[^]]*\] )+\"(GET|POST) /(?i)(PMA|phptest|phpmyadmin|myadmin|mysql|mysqladmin|sqladmin|mypma|admin|xampp|mysqldb|mydb|db|pmadb|phpmyadmin1|phpmyadmin2|cgi-bin)'
Run Code Online (Sandbox Code Playgroud)

,我尝试跑步,fail2ban-regex path/to/access.log /etc/fail2ban/filter.d/apache-getphp.conf我明白了Sorry, no match,为什么?

regex fail2ban

5
推荐指数
1
解决办法
2094
查看次数