Ansible WebServer
用于全自动部署的剧本(nginx + apache)
用法
-
安装Ansible和其他必需的软件包:
Debian:
sudo apt install ansible sshpass
-
安装语言文件:
sudo install languages/en.mo /usr/share/locale/en/LC_MESSAGES/init.mo sudo install languages/ru.mo /usr/share/locale/ru/LC_MESSAGES/init.mo
-
运行init.sh并按照说明:
LANGUAGE=en ./init.sh
警告:不要直接从计划部署的服务器中运行剧本!
注意:如果使用HTTPS部署Web服务器(选项1),则必须在部署时在服务器上使用证书和密钥文件!
部署选项
- http
- https
- 带有预先准备的证书(选项1)
- 从Let\’s Encrypt获得的证书(选项2)
- 带有自签名证书(选项3)
将安装和配置什么?
- nginx(前端)
- Apache(后端)
- Apache模块
- mod_fastcgi
- mod_remoteip
- php-fpm
- DBM(可选)
- Mariadb + PhpMyAdmin(可选)
- mysql + phpmyadmin(可选)
- PostgreSQL + PGADMIN(可选)(在开发中)
- 敲门(可选)
- SFTP服务器(可选)
- fail2ban(可选)(开发中)
- 防火墙(可选)
- UFW
- Firewalld(在开发中)
将采取什么措施来提高安全性?
- 隐藏nginx和apache版本
- 阻止对Apache端口的访问
- 阻止外部访问DBMS
- 通过IP阻止直接访问(重定向)
- 保护nginx免受缓慢要求
- 带端口knocking的SSH保护(可选)
- 通过.htpasswd和.htaccess(可选)阻止访问PhpMyAdmin
路线图
- 添加HTTPS支持
- 添加选择DBM的能力
- 增加对PGADMIN的支持
- GUI开发以更轻松地部署
- 增加对其他OS的支持
