一、申请须知
此文档适用于非网站群站点,网站群上的站点全部已经接入反代。
二、 反代提供的新能力
- *.xmu.edu.cn域名的站点获得HTTPS,IPv6和HTTP2支持
- 被反代以后,限制只有反代才能访问80端口,真实服务器被隐藏起来,更安全
- 可以设置站点只能校内IP访问,在校外通过输入VPN密码或者在企业微信内打开可访问。安全性更高。
三、 以下情况不支持反代
- HTTPS只针对*.xmu.edu.cn,www.example.xmu.edu.cn类似的域名不支持HTTPS,只能使用HTTP协议。
- 非标准80端口不支持,建议修改到80端口。
- 类似邮件系统等含有MX、POP3等服务的站点(DNS不止是网站,还有其他服务)不提供反代服务。
- 下载量大、并发高的站点暂时不提供反代服务,例如:选课系统、网盘、视频播放。
四、 接入前还需确认的事项
- 需要设置反代IP(219.229.81.192/26)到白名单,源网站服务器防火墙需要允许反代IP访问80端口。
- 如果你有使用一些安全软件,应当将反代IP段加入白名单,以免因为访问量过大被安全软件拦截。
- 源网站服务器防火墙需要允许反代IP段访问80端口。
- 你的域名已经指向反代IP,所以如果原先数据库连接串有使用域名来访问的,应当改成IP访问。
- 接入后源网站域名对应的IP对校外开放的HTTP将被关闭。请确认源网站域名对应的IP上面没有其它服务。
- 请确认非80端口是否提供服务。如有面向用户的服务,请以子目录的方式提供,或者多申请一个域名,将服务修改到80端口,如果是管理用端口,请使用IP访问。
- 源站点如果支持HTTP2,需先关掉。
- 源站点如果访问80端口会跳转到443端口,需要先禁掉跳转。
五、 测试方法
- 第一步:本地设置DNS测试访问是否正常。https://www.cnblogs.com/toSeeMyDream/p/9313440.html ,在hosts文件内输入 219.229.81.200 XXX.xmu.edu.cn 。在cmd窗口内确认ping xxx.xmu.edu.cn 为219.229.81.200。在Chrome浏览器F12确认Network地址为219.229.81.200。
- 第二步:验证是否存在HTTP和HTTPS混合模式。用Chrome浏览器访问网站,按F12进去调试,进入Console,查看提示是否存在混合模式页面。如有Mixed-Content的内容,一般是将http://改成// 。
- 第三步:确认访问没有任何问题,通知我们正式切换DNS后再次验证。
六、 上线后注意事项
- 由于反代后Web服务器将无法直接获取到客户端IP,请从 https://imququ.com/post/x-forwarded-for-header-in-http.html HTTP 的Header里的 X-Forwarded-For 字段里获取客户端IP,获取前需要确认request的IP是否是反代IP以免IP欺骗。
- 原有的HTTP服务器(IIS、Apache、NGINX等)的日志记录里面可能无法获取到真实IP地址,请相应调整。比如NGINX可使用realip模块。
七、 对服务器进行加固,在互联网隐藏起来
- 对外限制所有端口,并只开放管理员IP和反代IP段才能访问你的80端口。
- 根据业务需要,将数据库端口类似3306、1521限制只有管理员IP才能访问。3306端口建议如果是Linux,从SSH隧道连接。
- 根据业务需要,将管理端口比如22、3389限制只有管理员IP才能访问。