LNMP是指Linux系统下Nginx、MySQL、PHP这种网站服务器架构搭配,集性能、稳定性、可扩展性于一体,是目前流行的服务器环境。以下是Ubuntu LNMP安全设置的步骤:
sudo apt update
sudo apt upgrade
sudo apt install nginx
sudo systemctl restart nginx
sudo systemctl enable nginx
sudo apt install mysql-server
sudo mysql_secure_installation
sudo systemctl restart mariadb
sudo apt install php7.4-fpm php7.4-mysql
sudo vim /etc/nginx/sites-available/default
在server
块中添加以下内容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
保存并退出编辑器,然后重载Nginx配置:
sudo systemctl reload nginx
/etc/ssh/sshd_config
文件,修改SSH端口为一个非标准端口,以减少暴力破解攻击的风险。Port 2222
禁用root登录:在/etc/ssh/sshd_config
文件中设置PermitRootLogin no
,禁止直接通过SSH登录root账户。
启用公钥认证:确保PubkeyAuthentication yes
,使用密钥对进行身份验证。
配置防火墙:使用ufw允许SSH和HTTP服务,并定期检查防火墙状态。
sudo ufw allow 2222/tcp
sudo ufw allow 'Nginx Full'
sudo ufw enable
设置复杂密码:为所有用户账户设置复杂且难以猜测的密码,并定期更换。
定期更新系统和软件包:使用unattended-upgrades包实现系统自动更新,定期手动运行sudo apt update && sudo apt upgrade
。
监控和审计:定期检查系统日志,及时发现可疑活动。
以上步骤可以帮助您在Ubuntu上设置一个安全的LNMP环境。请根据您的实际情况调整端口和配置。