A模块.note

noteId: WEB1f7d3bd0bb56639eca683e58cec251f4 · 原始路径:/ALL/世赛题目(练习) - 笔记/第三届广东省赛题目解析/A模块.note · 图片:34 · 附件待处理:4

 
·题目:
 
 
·解决方案:
 
 
 
一、CA(Server2):
 
1、设置 CA有效期为100年(默认为3年):
需要在创建CA之前修改
# 修改 openssl.cnf 文件是没有用的
vim /usr/lib/ssl/misc/CA.pl
# 设置为你想要的时间:
然后正常创建CA即可
 
只有99年是因为可能有的一年不止365天
 
2、设置证书有效期为 730天(默认为1年):
需要在CA创建后,证书创建前修改,且该时间不能够超过CA的有效期
 
vim /etc/ssl/openssl.cnf
# [ CA_default ] 字段下的
 
然后正常申请证书即可
 
 
二、Web:
 
1、内网Web:
 
(1)Haproxy(Server3):
vim /etc/haproxy/haproxy.cfg
# 主体在 /usr/share/doc/haproxy/examples/content-sw-sample.cfg 照抄
# server ... ssl verify none check 配置在 /usr/share/doc/haproxy/examples/socks4.cfg 照抄
如果有以 .png 结尾的内容,就使用 static 访问
 
 
(2)Nginx(Server4):
# 隐藏版本号:
vim /etc/nginx/nginx.conf
取消注释
 
vim /etc/nginx/sites-enabled/default
拒绝 和 重定向 的条目建议放在最下方
 
 
 
(3)Apache2(Server5):
# 隐藏版本号和系统:
vim /etc/apache2/conf-enabled/security.conf
 
# 开启php:
apt install -y php8.2-fpm
a2enconf php8.2-fpm
 
# 开启 OPCache缓存:
vim /etc/php/8.2/apache2/php.ini
## 使用 /opcache.e ... 检索
取消注释
 
vim /etc/apache2/sites-enables/000-default
拒绝 和 重定向 虚拟主机尽量放在最后
 
 
 
 
(4)配置伪静态:
# Server4、Server5:
chmod 777 -R /htdocs/appsrv/www
chmod 777 /htodcs/appsrv/www/.htaccess
 
# Server4:
vim /etc/nginx/sites-enabled/default
 
# Server5:
a2enmod rewrite
vim /etc/apache2/apache2.conf
 
Server4、Server5(两台都需要配置):
在客户端写 hosts分别指向 Server4和Server5,然后配置
 
 
(5)发布中文文章:
 
注意:这样修改之后,语言环境就不是 us了,而是 zh_CN.UTF-8
 
1、安装输入法:
## 安装中文输入法:
apt install ibus-pinyin ibus-table fonts-wqy-* -y
 
## 设置语言环境为中文:
dpkg-reconfigure locale
 
默认语言选择中文
 
然后重启即可生效
 
 
2、添加中文输入法:
 
 
3、发布文章:
无法直接在网站中输入中文,可以先将中文输入在 终端中,然后复制给网站
 
切换输入法:
 
 
图片直接拖进去即可
 
 
2、外网 Web:
 
(1)Nginx Web(Server1):
# 隐藏版本号:
vim /etc/nginx/nginx.conf
取消注释
 
vim /etc/nginx/sites-enabled/default
拒绝 和 重定向 的条目建议放在最下方
 
 
(2)Nginx 反向代理:
 
 
 
 
 
·遇到的问题:
 
1、外网能访问web,内网无法访问web(路由问题):
原因:因为只在 ROUTER1 和 ROUTER2配置了 frr动态路由,SERVRE3(代理)、SERVER4、SERVER5(后端服务器)上没有配置 frr(使用默认路由指向 ROUTER1),因此,内网客户端访问WEB需要通过ROUTER2,然后ROUTER2将数据包路由给SERVER3,WEB处理数据包后,因为没有去往内网客户端的路由,因此使用默认路由将数据包交给ROUTER2,此时就出现问题了,ROUTER2上的SNAT直接将该数据包的源地址给转换了,然后再将该数据包路由给ROUTER2,ROUTER2再路由给内网客户端(CLIENT2),但是此时因为数据包的源地址被转换了,此时内网客户端会将该数据包识别为无用数据包,直接丢弃。
 
红线 —— 去
蓝线 —— 回
 
·解决方案:
在 SERVRE3(代理)、SERVER4、SERVER5(后端服务器)上也配置 frr,让他们有路由能够直接访问内网客户端
# frr:ROUTER1、ROUTER2、SERVER3、SERVER4、SERVER5