4. WEB
安装 WEB 服务;
服务以用户 webuser 系统用户运行;
限制 web 服务只能使用系统 500M 物理内存;
全站点启用 TLS 访问,使用本机上的“CSK Global Root CA”颁发机构颁发,网站证书信息如下:
C = CN
ST = China
L = BeiJing
O = skills
OU = Operations Departments
CN = *.chinaskills.cn
客户端访问 https 时应无浏览器(含终端)安全警告信息;
当用户使用 http 访问时自动跳转到 https 安全连接;
搭建 www.chinaskills.cn 站点;
网页文件放在 StorgeSrv 服务器上;
在 StorageSrv 上安装MriaDB,在本机上安装 PHP,发布 WordPress网站;
MariaDB 数据库管理员信息:User: root/ Password: Chinaskill21!
创建网站 download.chinaskills.cn 站点;
仅允许 ldsgp 用户组访问;
网页文件存放在 StorageSrv 服务器上;
在该站点的根目录下创建以下文件“test.mp3, test.mp4, test.pdf”,其中 test.mp4 文件的大小为 100M,页面访问成功后能够列出目录所有文件;
安全加固,在任何页面不会出现系统和 WEB 服务器版本信息。
| 实验所需压缩包(提取码S1Qk) |
|:----|
| 点击查看视频解析 |
|:----|
安装httpd软件包:
[root@appsrv ~]# yum install httpd mod_ssl -y
编辑配置文件:
[root@appsrv ~]# vim /etc/httpd/conf/httpd.conf
66 User webuser
67 Group webuser
创建系统用户:(使用-r表示创建系统用户)
[root@appsrv ~]# useradd -r webuser
备份默认访问页:
[root@appsrv ~]# cd /etc/httpd/conf.d/
[root@appsrv conf.d]# mv welcome.conf welcome.conf.bak
编辑网页文件:
[root@appsrv conf.d]# cat vhost.conf
<Virtualhost *:80>
servername www.chinaskills.cn
Redirect 302 / https://www.chinaskills.cn
</Virtualhost>
<Virtualhost *:443>
servername www.chinaskills.cn
Documentroot /webdata/wordpress
<Directory /webdata/wordpress>
require all granted
</Directory>
sslengine on
sslcertificatefile /csk-rootca/apache.crt
sslcertificatekeyfile /csk-rootca/apache.key
</Virtualhost>
<Virtualhost *:443>
servername download.chinaskills.cn
Documentroot /webdata/download
<Directory /webdata/download>
Options Indexes
authname "download"
authtype basic
authuserfile "/var/passwd"
require valid-user
</Directory>
sslengine on
sslcertificatefile /csk-rootca/apache.crt
sslcertificatekeyfile /csk-rootca/apache.key
[root@appsrv conf.d]#
创建download目录并创建文件设置大小:
[root@appsrv ~]# mkdir /webdata/download/
[root@appsrv ~]# cd /webdata/download
[root@appsrv download]# touch test.mp3
[root@appsrv download]# touch test.pdf
[root@appsrv download]# dd if=/dev/zero of=test.mp4 bs=100M count=1
创建用户并设置密码:
[root@appsrv ~]# useradd zsuser
[root@appsrv ~]# useradd lsusr
[root@appsrv ~]# useradd wuusr
[root@appsrv ~]# htpasswd -c /var/passwd lsusr
[root@appsrv ~]# htpasswd -c /var/passwd zsusr
[root@appsrv ~]# htpasswd -c /var/passwd wuusr
限制内存500M:
[root@appsrv ~]# vim /etc/systemd/system/multi-user.target.wants/httpd.service
# 添加
menmorylimit=500M
NFS挂载查看,如未配置点击跳转NFS配置
[root@appsrv ~]# mount -a | grep /webdata
上传压缩包到root目录下,并解压到/webdata目录下:
[root@appsrv ~]# yum install unzip -y
[root@appsrv ~]# ls
anaconda-ks.cfg roundcubemail-1.3.8-complete.tar.gz wordpress-4.9.4-zh_CN.zip
[root@appsrv ~]#
[root@appsrv ~]# unzip -q wordpress-4.9.4-zh_CN.zip
[root@appsrv ~]# tar -xf roundcubemail-1.3.8-complete.tar.gz
[root@appsrv ~]# mv wordpress /webdata/
[root@appsrv ~]# mv roundcubemail-1.3.8 roundcubemail
[root@appsrv ~]# mv roundcubemail /webdata/
将/webdata/
目录及其所有子目录和文件的所有者(owner)和所属组(group)都修改为 webuser
,并且使用递归(-R
)方式操作,以确保所有子目录和文件都被修改。
[root@appsrv ~]# chown webuser:webuser /webdata/ -R
证书传入客户端:
[root@appsrv ~]# scp /csk-rootca/csk-ca.pem root@192.168.0.190:/root
root@192.168.0.190's password:
csk-ca.pem 100% 1383 1.1MB/s 00:00
[root@appsrv ~]#
客户端导入证书:
[root@insidecli ~]# cp -a csk-ca.pem /etc/pki/ca-trust/source/anchors/
[root@insidecli ~]# cd /etc/pki/ca-trust/source/anchors/
[root@insidecli anchors]# update-ca-trust csk-ca.pem
[root@insidecli anchors]# reboot
StorageSrv 服务器上配置数据库:
安装数据库并启动:
[root@storagesrv ~]# yum install mariadb-server -y
[root@storagesrv ~]# systemctl enable mariadb.service --now
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@storagesrv ~]#
--now: 这个选项用于在启用服务的同时立即启动它,而不需要等待下一次系统启动。
通常,启用服务只会在下一次系统启动时生效,但使用 --now 选项可以立即启动服务。
创建wordpress数据库:
[root@storagesrv ~]# mysql
MariaDB [(none)]> create database wordpress;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all on wordpress.* to root@"%" identified by "ChinaSkill23!";
Query OK, 0 rows affected (0.00 sec)
[root@storagesrv ~]#
[root@storagesrv ~]#
grant all: 这表示你正在授予用户 root 所有权限。
on wordpress.*: 这表示你正在将权限授予 wordpress 数据库中的所有表(* 表示通配符,匹配所有表)。
to root@"%": 这表示你将授予权限给用户 root,允许该用户从任何主机(% 是通配符,匹配所有主机)连接到数据库。
identified by "ChinaSkill23!": 这部分用于设置用户 root 的密码,密码为 "ChinaSkill23!"。
AppSrv 启动apache:
安装php:
[root@appsrv ~]# yum install php php-fpm php-mysql -y
启动apache:
[root@appsrv ~]# systemctl restart httpd
客户端进行访问
客户端进行访问 https://download.chinaskills.cn