Linux环境下保障 Swagger 安全性的实用方案
一 基础防护与访问控制
二 部署架构与网络隔离
三 文档内容与运行时的安全配置
四 运维监控与持续加固
五 最小化配置示例
server {
listen 443 ssl http2;
server_name api.example.com;
ssl_certificate /etc/letsencrypt/live/api.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/api.example.com/privkey.pem;
location /swagger-ui/ {
# 内网网段白名单
allow 10.0.0.0/8;
deny all;
# Basic Auth
auth_basic "Restricted Docs";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /api/ {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}