必须先确认Web服务类型与运行状态,执行sudo systemctl list-units --type=service | grep -E "(apache|httpd|nginx)",仅当输出中对应服务显示active (running)时,方可进行后续加固配置,否则所有操作无效。

在统信UOS服务器版上部署Web服务时,Apache或Nginx若未做针对性加固,极易成为攻击入口——默认配置暴露版本号、未限制HTTP方法、目录遍历未禁用、SSL弱协议未关闭,这些都可能被自动化扫描工具秒级识别并利用。
确认当前Web服务类型与运行状态
先判断系统实际运行的是Apache还是Nginx,避免误操作配置文件:
执行 sudo systemctl list-units --type=service | grep -E "(apache|httpd|nginx)",观察输出中哪个服务状态为 active (running)。
若两者共存(极少见),需分别加固;若无输出,说明Web服务未启动,后续步骤无需执行。
这一步必须做,【跳过将导致后续所有配置修改无效】。
隐藏服务器标识与禁用危险HTTP方法
攻击者常通过响应头中的 Server 字段直接识别软件版本,进而匹配已知漏洞EXP。
对Apache:编辑 /etc/apache2/mods-available/headers.conf,在末尾添加:
Header always set Server "Web Server"
然后启用headers模块:sudo a2enmod headers → sudo systemctl restart apache2。
对Nginx:编辑 /etc/nginx/nginx.conf,在 http{} 块内添加:server_tokens off;
再在对应 server{} 块中加入:if ($request_method !~ ^(GET|HEAD|POST|PUT|DELETE|OPTIONS|PATCH)$ ) { return 405; }
最后执行 sudo nginx -t && sudo systemctl restart nginx。
注意:Nginx的 if 指令在 location 块外使用有风险,必须放在 server 块内,否则重启会失败。
强制启用TLS 1.3并禁用不安全密码套件
统信UOS默认搭载OpenSSL 3.0+,完全支持TLS 1.3,但Nginx/Apache默认配置仍兼容老旧协议,必须手动收紧。
第一步:确认OpenSSL版本openssl version —— 输出必须为 OpenSSL 3.0.2 或更高,低于此版本需先升级(统信UOS 20及以上已预装达标版本)。
第二步:Nginx配置(适用于统信UOS 20/23)
在 server{} 块中替换原有SSL配置段:
ssl_protocols TLSv1.3;<br>ssl_ciphers TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256;<br>ssl_prefer_server_ciphers off;
第三步:Apache配置
编辑 /etc/apache2/mods-available/ssl.conf,找到 SSLProtocol 行,改为:SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 -TLSv1.2
再找到 SSLCipherSuite 行,改为:SSLCipherSuite TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256
保存后执行:sudo a2enmod ssl → sudo systemctl restart apache2。
限制文件上传与目录遍历风险
Web应用若允许用户上传文件,攻击者可能上传Webshell;若未禁用目录索引,可直接列出敏感路径内容。
方法一:Nginx全局禁用目录浏览
在 server{} 或 location{} 块中添加:autoindex off;
方法二:Apache限制上传目录执行权限
假设上传目录为 /var/www/html/uploads,执行:sudo mkdir -p /var/www/html/uploadssudo chown www-data:www-data /var/www/html/uploads
然后在Apache虚拟主机配置中添加:
<directory><br> php_flag engine off<br> Require all granted<br></directory>
方法三:统一禁用脚本执行(关键防护)
对Nginx,在上传目录对应的 location 块中加入:location ~ \.(php|pl|py|jsp|asp|sh|cgi)$ { deny all; }
对Apache,在对应目录配置中加入:
启用ModSecurity WAF规则引擎(可选但强推荐)
统信UOS软件源已内置 libmodsecurity3 和 modsecurity-crs,无需编译,直接启用即可获得OWASP Top 10基础防护。
第一步:安装核心组件sudo apt update && sudo apt install -y libmodsecurity3 nginx-mod-http-modsecurity modsecurity-crs
第二步:启用Nginx ModSecurity模块
编辑 /etc/nginx/nginx.conf,在 http{} 块顶部添加:load_module modules/ngx_http_modsecurity_module.so;
第三步:配置规则路径
创建 /etc/nginx/modsec/main.conf,写入:
Include /etc/modsecurity/modsecurity.conf<br>Include /usr/share/modsecurity-crs/rules/*.conf
第四步:在站点 server{} 块中启用:
modsecurity on;<br>modsecurity_rules_file /etc/nginx/modsec/main.conf;
最后验证并重载:sudo nginx -t && sudo systemctl reload nginx。











