在cloud上有了可操作的VM/VPC,就可以自己建站了。
简单并且安全的站点构造如下:

CloudFlare到VM/VPC之间必须是proxied,并且是full(strict)设定(HTTPS/自定义证书)。
本地操作VM/VPC的SSH,必须是限定IP访问。
1.防火墙ufw/iptables
只允许HTTP/HTTPS,SSH协议。
并且限定HTTP/HTTPS的来源地址是CloudFlare。关于CF的的IP范围参照:Ipranges
严格限定SSH的来源IP地址。
其余的端口/协议均不开放。所有应用均是通过HTTPS来访问。
2.恶意访问防止fail2ban
两个必须设定:SSH的ban和web服务器(nginx)访问失败ban。
3.web服务器(nginx)
HTTP访问无效设定,或者直接转到HTTPS设定。
全站的流量控制设定。
针对敏感资源(app或则路劲),必须进行认证(basic_auth)设定。
docker内部署的应用,必须通过proxy reverse来代理。
4.做好备份shell
应用资源/资料的定期备份(我这里是通过CLI备份到AWS的S3上)。
DB的整体DUMP定期备份(同样是备份到AWS的S3上)。
整体的AP服务器基本上简单必要的设定就这些。之后就是日常维护了。