运维

运维

Products

当前位置:首页 > 运维 >

如何将LNMP在Ubuntu上的安全设置做到万无一失?

96SEO 2025-10-28 02:03 0


一、 系统基础平安

确保你的Ubuntu系统始终保持最新,定期更新操作系统和软件包是防范攻击的第一步。

LNMP在Ubuntu上的安全设置
  • 1.1 更新系统

    sudo apt update
    sudo apt upgrade
  • 1.2 安装平安软件

    安装如Fail2Ban、ClamAV等平安软件来增强系统防御。

    sudo apt install fail2ban clamav clamav-daemon

二、 防火墙配置

使用UFW来控制网络流量,只允许必要的端口。

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

三、LNMP组件平安

3.1 Nginx平安设置

  • 3.1.1 配置SSL/TLS

    启用HTTPS并使用有效的SSL/TLS证书加密数据传输。

    sudo apt install certbot nginx
    sudo certbot --nginx
  • 3.1.2 限制访问

    仅允许来自特定IP的请求,使用IP白名单。

    limit_req_zone $binary_remote_addr zone=mylimit:10m rate=1r/s;
    server {
        location / {
            limit_req zone=mylimit burst=5;
            ...
        }
    }

3.2 PHP平安设置

  • 3.2.1 修改php.ini

    禁用不平安的PHP , 如php_fileinfo.dll,并设置正确的错误报告级别。

    disable_functions = system,exec,passthru,proc_open,proc_close,shell_exec,phpinfo,ini_alter,ini_get,ini_set,open_basedir
    error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
  • 3.2.2 限制文件访问

    设置正确的文件权限,避免未授权访问。

    chmod 755 /var/www/html
    chmod 644 /var/www/html/index.php

3.3 MySQL平安设置

  • 3.3.1 使用强密码

    为数据库用户设置复杂且唯一的密码。

    sudo mysql_secure_installation
  • 3.3.2 限制访问权限

    确保每个用户仅访问必要的数据。

    GRANT SELECT ON mydatabase.* TO 'username'@'localhost' IDENTIFIED BY 'password';
    FLUSH PRIVILEGES;

四、增强平安工具

  • 4.1 Fail2Ban

    Fail2Ban可以自动阻止来自暴力破解的IP地址。

    sudo fail2ban-client set lnmpd enabled true
    sudo fail2ban-client set lnmpd filter lnmpd
    sudo fail2ban-client set lnmpd logpath /var/log/nginx/error.log
    sudo fail2ban-client set lnmpd maxretry 5
    sudo fail2ban-client set lnmpd findtime 600
    sudo fail2ban-client set lnmpd bantime 3600
  • 4.2 ClamAV

    ClamAV可以帮助检测和清除恶意软件。

    sudo freshclam
    sudo clamscan -ri /var/www/html

通过以上步骤,您可以大大提高LNMP在Ubuntu上的平安性。请记住网络平安是一个持续的过程,需要定期检查和更新。

六、参考来源


标签: ubuntu

提交需求或反馈

Demand feedback