Tag: RHEL & CentOS
ModSecurity 可以阻挡多种针对网站的攻击, 但有些网页应用程式会跟 ModSecurity 互相冲突, 如果为了个别几个规则便把 ModSecurity 停用, 给 VirtualHost 设定 “SecRuleEngine Off”, 这样十分不必要。较好的做法是找出与网页程式互相冲突的规则, 然后在个别目录或 VirtualHost 停用。 以下会假设已经安装及设定好 ModSecurity, 然后找出有问题的规则, 并用 SecRuleRemoveById 把有问题的规则停用。 例如 HTTPD 的错误档在 /var/log/httpd/error.log, 执行以下指令可以找出 ModSecurity …
在服务器进行 PHP 设定, 最直接的方法是编辑 php.ini 档案, 如果是使用 mod_php 的情况下, 可以用 php_admin_value 或 php_admin_flag, 在 Apache 对个别目录或 VirtualHost 设定不同的 PHP 参数, 或者使用 .htaccess 设定更可以不用重新加载 httpd 修改 PHP 设定。 但如果是使用 PHP-FPM …
Linux 下要用 Shell Script 自动检查硬盘分割区的使用量, 可以透过 df 指令实现。 df 指令可以在 Linux 下检视硬盘分割区使用量, 配合 grep 及 awk 撷取所需的资讯, 便可以用 Shell Script 自动检查硬盘使用量, 当发现使用量超过设定的百分比 (例如 80%) 时, 再用 mail 指令发出电子邮件通知系统管理员。 执行 …
Shell Script 很多时需要读取目录内容, 例如备份或日志档案轮替等。以下是 Shell Script 读取目录内容的方法。 例如想读取所有 /var/log 下的档案, 可以这样写: 如果只想列出 /var/log 录下, 所有以 .log 作结尾的档案, 可以这样写:
不论对于服务器还是工作站, 硬盘应该是电脑内最重要的硬件, 其他硬件坏掉的话换过新的便好, 但硬盘就不同了, 里面的资料才是最重要。本文会介绍在 Linux 下检查硬盘的健康状态。 现在的硬盘大多支援 S.M.A.R.T.(Self-Monitoring, Analysis, and Reporting Technology), S.M.A.R.T 可以让作业系统 (e.g. Linux, Windows, Mac) 检查硬盘的健康状态。 在 Linux 有多种工具可以检查 S.M.A.R.T. 状态, 以下会安装使用 smartctl, 首先安装 smartctl: …
在 Linux 要检视系内存, 可以用几种不同的方法, 有些指令会提供完整的内存资讯, 有些则会提供简单清晰的结果。以下是检视 Linux 内存的方法。 free 指令 最简单的方法是用 free 指令, 它会显示简单直接的内存资讯: 加上 -g 或 -m 参数, 可以将显示的单位改为 GB 或 MB: 或 如果要持续监测 free 指令的输出, 除了使用 watch …
写程式时很多时候需要检查档案或目录是否存在, 在 Shell Script 检查档案及目录是否存在, 可以在 if 条件判断式里面加上 -e 或 -d 实现, 以下是具体写法: 检查档案是否存在: 上面的 if 判断式也可以用一行来实现: 检查目录是否存在: 用一行来实现上面的程式码: 其中一个十分实用的例子, 是检查档案或目录是否存在, 如果不存在就便宜档案或目录: This is the best practice to check …
DDOS 是十分常见的攻击,即使是一般使用者,下载一套 DDOS 软件,或者直接安装 kali linux, 便可以很简单发动 DDOS 攻击,除了遇到 DDOS 攻击才采取拦截外,也可以透过一些 Linux 设定来预防 DDOS 攻击,以下会列出一些预防 DDOS 的设定及 Firewalld 规则。 Firewalld 限制每个 IP 连线数量 以下会设定 Firewalld 限制每个 IP 在 60 …
Slow HTTP DoS Attack 是一种针对 Web Server 的 DoS 攻击手法, 而且对于使用 thread based 的服务器 (Apache 默认是使用 thread) 尤其有效。做法是向 Web Server 发出连线请求, 但一直不回应 HTTP Header, 或者该回应的时间尽量拉长, 让 Web Server 一直等待 …
HTTP 服务器在高负载时反应会变慢, 但检视系统的使用资源, 例如 CPU, 内存及 Load Average 则很正常, 当重新启动 HTTP 服务器后, 问题又暂时得以解决。用以下 netstat 检查连线的统计资料: # netstat -nat | awk ‘{print $6}’ | sort | uniq -c | sort …