温馨提示×

Ubuntu Apache2安全设置怎么做

小樊
34
2025-03-02 23:28:03
栏目: 智能运维
Ubuntu服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

为了确保Ubuntu Apache2服务器的安全,可以采取以下措施:

  1. 定期更新系统和软件包

    使用以下命令更新系统和安装安全补丁:

    sudo apt update
    sudo apt upgrade
    
  2. 配置防火墙

    使用UFW(Uncomplicated Firewall)限制对系统的访问,只允许必要的端口和服务,如SSH和HTTP:

    sudo ufw allow ssh
    sudo ufw enable
    
  3. 使用SSH密钥认证

    禁用密码认证,使用SSH密钥对进行身份验证,以提高安全性。生成SSH密钥对(如果还没有):

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    将公钥复制到服务器的authorized_keys文件中:

    ssh-copy-id user@server_ip
    

    编辑/etc/ssh/sshd_config文件,禁用密码认证:

    sudo nano /etc/ssh/sshd_config
    

    找到并修改以下行:

    PasswordAuthentication no
    

    重启SSH服务以使更改生效:

    sudo systemctl restart sshd
    
  4. 禁用未使用的服务和Apache模块

    检查服务器上所有正在运行的服务和开放的端口,禁用不需要的服务。例如,禁用不必要的Apache模块:

    cat /etc/apache2/mods-enabled/* | grep -i loadmodule
    

    开启模块:

    a2enmod module_name
    

    关闭模块:

    a2dismod module_name
    
  5. 防止信息泄露

    隐藏Apache服务器的版本信息和默认页面:

    vi /etc/apache2/conf-enabled/security.conf
    

    搜索ServerTokens和ServerSignature字符,然后对应修改:

    ServerTokens Prod
    ServerSignature Off
    

    重启Apache:

    sudo service apache2 restart
    
  6. 限制用户权限

    避免使用root账户进行日常操作,减少安全风险。创建新的用户,并在Apache配置文件中进行指定:

    sudo useradd deploy
    sudo usermod -a -G deploy deploy
    

    编辑/etc/apache2/envvars文件,设置Apache用户和组:

    sudo vi /etc/apache2/envvars
    

    将以下行:

    export APACHE_RUN_USER=www-data
    export APACHE_RUN_GROUP=www-data
    

    保持不变。

  7. 启用日志审计

    Apache默认启用了错误日志和访问日志的记录,可看配置文件apache2.conf有无以下内容:

    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
    
  8. 配置SELinux(可选)

    SELinux是一种强制访问控制(MAC)安全模块,可以进一步增强系统的安全性。安装SELinux:

    sudo apt install selinux
    

    启用SELinux:

    sudo setenforce 1
    

通过以上措施,可以显著提高Ubuntu Apache2服务器的安全性。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:Apache2 Ubuntu安全设置怎么做

0