首页主机资讯ubuntu lamp服务器配置要点

ubuntu lamp服务器配置要点

时间2025-10-14 15:50:04发布访客分类主机资讯浏览1221
导读:Ubuntu LAMP服务器配置要点 一、系统准备与基础更新 在配置LAMP前,需确保系统处于最新状态,以避免已知安全漏洞。执行以下命令更新软件包列表及已安装的包: sudo apt update && sudo apt u...

Ubuntu LAMP服务器配置要点

一、系统准备与基础更新

在配置LAMP前,需确保系统处于最新状态,以避免已知安全漏洞。执行以下命令更新软件包列表及已安装的包:
sudo apt update & & sudo apt upgrade -y
建议使用Ubuntu LTS(长期支持)版本(如20.04、24.04),以获得更长的安全更新周期。

二、LAMP组件安装

LAMP由Apache(Web服务器)、MySQL(数据库)、PHP(脚本语言)组成,安装步骤如下:

  1. 安装Apache:运行sudo apt install apache2,安装完成后通过浏览器访问服务器IP,若看到Apache默认页面则说明成功。
  2. 安装MySQL:运行sudo apt install mysql-server,安装过程中需设置root用户密码(强密码,包含大小写字母、数字和符号)。
  3. 安装PHP及扩展:运行sudo apt install php libapache2-mod-php php-mysql,安装后重启Apache以加载PHP模块:sudo systemctl restart apache2

三、Apache配置优化

  1. 启用必要模块:Apache需启用rewrite(URL重写,用于WordPress等框架)、headers(设置HTTP头,增强安全性)模块,执行:
    sudo a2enmod rewrite headers,然后重启Apache:sudo systemctl restart apache2
  2. 修改默认配置:编辑Apache默认站点配置文件(/etc/apache2/sites-available/000-default.conf),调整以下参数:
    • 设置DirectoryIndex优先加载PHP文件:DirectoryIndex index.php index.html
    • 关闭目录列表(防止敏感文件泄露):在< Directory> 块中添加Options -Indexes
    • 设置默认字符集为UTF-8(避免乱码):在apache2.conf中添加AddDefaultCharset UTF-8
  3. 配置虚拟主机(可选):如需托管多个网站,可在/etc/apache2/sites-available/下创建配置文件(如example.com.conf),内容示例:
    <
        VirtualHost *:80>
    
        ServerAdmin webmaster@example.com
        ServerName example.com
        ServerAlias www.example.com
        DocumentRoot /var/www/example.com/public_html
        ErrorLog ${
    APACHE_LOG_DIR}
    /error.log
        CustomLog ${
    APACHE_LOG_DIR}
        /access.log combined
    <
        /VirtualHost>
        
    
    启用配置:sudo a2ensite example.com.conf,然后重启Apache。

四、MySQL安全配置

  1. 运行安全脚本:安装后执行sudo mysql_secure_installation,按提示完成以下操作:
    • 设置root密码(若未设置);
    • 删除匿名用户;
    • 禁止root远程登录;
    • 删除测试数据库。
  2. 日常安全维护
    • 使用预处理语句(PDO或MySQLi)防止SQL注入;
    • 为用户分配最小权限(如仅授予SELECTINSERT权限,而非ALL);
    • 定期备份数据库(使用mysqldump或工具如Duplicity)。

五、PHP安全与性能配置

  1. 修改php.ini文件:编辑/etc/php/7.x/apache2/php.ini(版本号因安装的PHP版本而异),调整关键参数:
    • 关闭错误显示(防止敏感信息泄露):display_errors = Off
    • 开启错误日志(便于排查问题):log_errors = On,并设置error_log路径;
    • 限制上传文件大小(避免服务器被大文件占满):upload_max_filesize = 10Mpost_max_size = 10M
    • 禁用危险函数(如evalexec):在disable_functions中添加eval,exec,system
  2. 启用OpCode缓存:安装OPcache扩展(sudo apt install php-opcache),并在php.ini中启用:
    zend_extension=opcache.so
    opcache.enable=1
    opcache.memory_consumption=128
    opcache.interned_strings_buffer=8
    opcache.max_accelerated_files=4000
    opcache.revalidate_freq=60
    
    重启Apache使配置生效。

六、安全加固措施

  1. 防火墙配置:使用UFW(Uncomplicated Firewall)限制访问,仅开放必要端口:
    • 允许SSH(默认22端口,若修改了端口需对应调整):sudo ufw allow 22/tcp
    • 允许HTTP(80端口)和HTTPS(443端口):sudo ufw allow 'Apache Full'
    • 启用防火墙:sudo ufw enable,查看状态:sudo ufw status
  2. SSH安全加固:编辑/etc/ssh/sshd_config,修改以下参数:
    • 禁止root直接登录:PermitRootLogin no
    • 使用密钥认证(更安全):PasswordAuthentication no
    • 修改SSH默认端口(如2222):Port 2222(需在防火墙中开放该端口);
      重启SSH服务:sudo systemctl restart sshd
  3. 暴力破解防护:安装Fail2Ban(sudo apt install fail2ban),编辑/etc/fail2ban/jail.local,启用SSH防护:
    [sshd]
    enabled = true
    port = 22
    filter = sshd
    logpath = /var/log/auth.log
    maxretry = 3
    bantime = 600
    
    重启Fail2Ban:sudo systemctl restart fail2ban
  4. 定期更新与备份
    • 定期执行sudo apt update & & sudo apt upgrade,确保系统和软件包最新;
    • 备份网站文件(/var/www/html)和数据库(使用mysqldump),存储到外部设备或云存储。

七、测试与验证

  1. 验证Apache:浏览器访问服务器IP,应看到Apache默认页面;
  2. 验证PHP:在/var/www/html下创建info.php文件,内容为< ?php phpinfo(); ?> ,访问该文件应显示PHP信息页面;
  3. 验证MySQL:登录MySQL(mysql -u root -p),执行简单查询(如SHOW DATABASES; ),确认数据库正常运行。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ubuntu lamp服务器配置要点
本文地址: https://pptw.com/jishu/725959.html
Linux中PHP错误如何快速定位 ubuntu lamp权限设置要注意啥

游客 回复需填写必要信息