以下是CentOS上配置Python安全设置的操作步骤:
使用虚拟环境隔离依赖
python3 -m venv myenv # 创建虚拟环境
source myenv/bin/activate # 激活环境
pip install -r requirements.txt # 安装依赖
配置防火墙限制访问
sudo yum install firewalld # 安装防火墙
sudo systemctl start firewalld
sudo firewall-cmd --permanent --zone=public --add-port=8000/tcp # 开放指定端口
sudo firewall-cmd --reload
启用SELinux增强权限控制
sudo yum install selinux-policy-targeted # 安装SELinux
sudo systemctl enable --now selinux
sudo audit2allow -M my_python_policy < /var/log/audit/audit.log # 生成策略
sudo semodule -i my_python_policy.pp
定期更新系统与软件
sudo yum update -y # 更新系统
pip install --upgrade pip # 升级pip
pip list --outdated --format=freeze | xargs -n1 pip install -U # 更新依赖包
强化用户权限与认证
sudo useradd -r -s /sbin/nologin python_user # 创建非登录用户
sudo chown -R python_user:python_user /path/to/app # 设置文件权限
sudo vi /etc/ssh/sshd_config
# 修改:#PermitRootLogin prohibit-password # 取消注释并设置为禁止
sudo systemctl restart sshd
配置HTTPS加密传输
server {
listen 443 ssl;
ssl_certificate /path/to/cert.crt;
ssl_certificate_key /path/to/cert.key;
location / {
proxy_pass http://localhost:8000;
}
}
输入验证与安全编程
eval()
、exec()
等不安全函数处理用户输入。日志监控与备份
sudo tail -f /var/log/messages # 实时查看日志