LNMP是指Linux系統下Nginx、MySQL和PHP的集成環境,常用于搭建網站服務器。在Debian系統下配置LNMP環境,需要進行一系列的安裝和配置步驟,以確保系統的安全性和穩定性。以下是一個基本的安全設置指南:
首先,確保你的系統是最新的。執行以下命令來更新系統:
sudo apt update
sudo apt upgrade -y
安裝Nginx服務器,這是LNMP環境中的Web服務器組件。
sudo apt install nginx -y
安裝完成后,啟動Nginx服務并設置開機自啟動:
sudo systemctl start nginx
sudo systemctl enable nginx
MariaDB是MySQL的一個分支,通常用于替代MySQL。安裝MariaDB:
sudo apt install mariadb-server -y
安裝完成后,運行安全配置腳本:
sudo mysql_secure_installation
按照提示設置root密碼和其他安全選項。
安裝PHP及其必要的擴展模塊:
sudo apt install php-fpm php-opcache php-cli php-gd php-curl php-mysql -y
編輯PHP配置文件 /etc/php/7.4/fpm/php.ini
(具體版本可能有所不同),設置合適的內存限制和上傳文件大小限制:
upload_max_filesize = 20M
post_max_size = 20M
memory_limit = 256M
保存并退出編輯器,然后重啟PHP-FPM服務:
sudo systemctl restart php7.4-fpm
編輯Nginx的默認站點配置文件,通常位于 /etc/nginx/sites-available/default
:
sudo nano /etc/nginx/sites-available/default
在 server
塊中,找到處理PHP文件的部分,確保它包含以下內容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
保存并退出編輯器,然后測試Nginx配置是否正確:
sudo nginx -t
如果沒有錯誤,重啟Nginx服務:
sudo systemctl restart nginx
sudo
代替直接登錄為root用戶。使用 ufw
或 iptables
等工具限制入站和出站流量。例如,只允許HTTP、HTTPS和SSH端口的流量:
sudo ufw allow 'Nginx Full'
sudo ufw allow 'OpenSSH'
sudo ufw enable
使用工具如 Logwatch
或 Fail2ban
自動監控并報告系統活動。
通過上述步驟,你可以在Debian系統下配置一個基本的LNMP環境,并進行必要的安全設置。這些步驟有助于提高系統的安全性和穩定性,保護你的數據和系統免受潛在的威脅。