如何在CentOS 7上安装Mailtrain新闻通讯应用程序
使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。
在本文中,我将解释如何构建受ModSecurity保护的LEMP堆栈。ModSecurity是一种开放源代码Web应用程序防火墙,可用于防止注入,PHP攻击等。如果您想使用ModSecurity设置NGINX,请继续阅读。
本文中的所有步骤都需要root访问。
如果您尚未以root用户身份运行,请升级自己:
/bin/su
我们需要一个编译器,因此请执行以下操作以确保:
yum install -y gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel httpd-devel libxml2-devel xz-devel python-devel libcurl-devel
yum groupinstall -y 'Development Tools'
为了安装NGINX,我们需要先获取软件包。下载包:
cd /usr/src && wget http://nginx.org/download/nginx-1.9.9.tar.gz
我们还将需要PHP软件包作为堆栈。
wget http://us2.php.net/distributions/php-5.6.16.tar.bz2
由于我们正在安装ModSecurity,因此将获取源代码并下载它:
wget https://www.modsecurity.org/tarball/2.9.0/modsecurity-2.9.0.tar.gz
现在,解压缩/解压缩文件。
tar xvf nginx-1.9.9.tar.gz
tar xvf php-5.6.16.tar.bz2
tar xvf modsecurity-2.9.0.tar.gz
然后,我们将安装ModSecurity。
cd /usr/src/modsecurity-2.9.0 && ./configure --enable-standalone-module --disable-mlogc
make && make install
现在我们已经获得了所有前提条件,让我们安装NGINX。以下命令集用于安装NGINX和ModSecurity。
cd /usr/src/nginx-1.9.9 && ./configure --add-module=../modsecurity-2.9.0/nginx/modsecurity/
make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
现在,让我们安装MySQL服务器。
yum install -y mysql-server
service mysqld start
mysql_secure_installation
对于mysql_secure_installation
命令:
最后一件事要安装,那就是PHP。在本文中,我们将从源代码安装PHP。
输入PHP的源目录。
cd /usr/src/php-5.6.16
现在,配置PHP。该./configure
命令中包含以下参数,因此您可以运行WordPress之类的应用程序。
./configure --with-pear=/usr/lib/pear --enable-libxml --with-pdo-mysql --with-mysqli --with-mysql --enable-mbstring --with-curl
make
make install
为NGINX安装PHP-FPM:
yum install -y php-fpm
我们需要在PHP本身之上安装PHP-FPM,因为NGINX本身并不直接与PHP集成。相反,NGINX将PHP处理传递给PHP-FPM以执行我们的脚本。
做得好!您已经安装了先决条件。
让我们开始构建一个ModSecurity规则集。除非进行配置,否则ModSecurity本身不会执行任何操作。
从他们的网站上获取OWASP规则集:
cd /usr/src && wget https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master
tar xvf master
下载规则集后,我们将默认配置与基本规则结合在一起。
cd SpiderLabs-owasp-modsecurity-crs-60c8bc9
cp /usr/src/modsecurity-2.9.0/modsecurity.conf-recommended /usr/local/nginx/conf/modsecurity.conf
cp /usr/src/modsecurity-2.9.0/unicode.mapping /usr/local/nginx/conf/
cat base_rules/*.conf >> /usr/local/nginx/conf/modsecurity.conf
cp base_rules/*.data /usr/local/nginx/conf
从理论上讲,这应该可以防止大多数Web攻击。但是,您安装的插件/代码也应该经过审核,因为ModSecurity是一种出色的安全措施,但它不是防弹的。
在/var/www
以下位置创建目录:
mkdir /var/www
以及虚拟主机的目录:
mkdir /var/www/yourwebsite.com
最后,将以下内容添加到位于的NGINX配置中/usr/local/nginx/conf/nginx.conf
。确保在出现最后一个}
符号之前附加此配置。
server {
listen 80;
root /var/www/yourwebsite.com;
index index.php index.html index.htm;
server_name yourwebsite.com www.yourwebsite.com;
location / {
ModSecurityEnabled on;
ModSecurityConfig /usr/local/nginx/modsecurity.conf;
}
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
这一步非常简单-您要做的就是执行以下命令。
service php-fpm start
/usr/sbin/nginx
恭喜你!您已经使用受ModSecurity保护的NGINX设置了您的第一个网站。有关ModSecurity的更多信息,请访问其官方网站。
在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。
快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。
学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。
使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。
了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根
ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。
Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+
閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。
最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息