yum update
或 apt-get upgrade
保持系统最新/etc/ssh/sshd_config
中 PermitRootLogin no
bash
# 示例:仅允许HTTP/HTTPS和SSH
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -j DROP
apache
# Apache配置
Options -Indexes
nginx
# Nginx配置
autoindex off;
apache
ServerTokens Prod
ServerSignature Off
nginx
server_tokens off;
bash
# 使用certbot获取证书
sudo certbot --apache # 或 --nginx
php
// PHP示例
echo htmlspecialchars($user_input, ENT_QUOTES, 'UTF-8');
php
session.cookie_httponly = 1
session.cookie_secure = 1
bash
# 安装ModSecurity
sudo apt-get install libapache2-mod-security2
sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
# Nginx速率限制示例
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
server {
location /api/ {
limit_req zone=one burst=20;
}
}
通过实施这些关键方法,可以显著提高Linux服务器上Web接口的安全性,降低被攻击的风险。安全是一个持续的过程,需要定期评估和更新防护措施。