晋城市建设局 网站,网站建设主要营销内客,袜子的网站建设方案,浙江网站建设推广公司找哪家文章目录 第八章 使用Apache服务部署静态网站一、网站服务程序1、网站服务介绍2、Apache程序介绍 二、配置服务文件参数1、Linux系统中的配置文件2、配置httpd服务程序时最常用的参数以及用途描述 三、SELinux安全子系统1、SELinux介绍2、SELinux服务配置模式3、Semanage命令4、… 文章目录 第八章 使用Apache服务部署静态网站一、网站服务程序1、网站服务介绍2、Apache程序介绍 二、配置服务文件参数1、Linux系统中的配置文件2、配置httpd服务程序时最常用的参数以及用途描述 三、SELinux安全子系统1、SELinux介绍2、SELinux服务配置模式3、Semanage命令4、Semanage命令中常用的参数以及作用 四、个人用户主页功能1、开启主页功能2、在用户家目录中配置相关文件3、重启服务4、访问网站5、修改SELinux策略规则6、重启服务7、访问网站8、生成密码数据库9、编辑用户主页的配置文件10、重启服务11、访问网站 五、虚拟网站主机功能1、基于IP地址1、编辑网卡2、重启网卡3、创建网站目录并编辑首页文件4、编辑配置文件5、设置SELinux6、重启服务7、访问网站 2、基于主机域名1、编辑hosts文件2、创建目录并编辑网站首页内容3、编辑配置文件4、设置SELinux5、重启服务6、访问网站 2、基于端口号1、创建目录并编辑网站首页2、添加端口3、设置SELinux4、查询过滤所有与HTTP协议并且SELinux服务允许的端口列表5、手动添加端口并重启服务6、访问网站 六、Apache的访问控制1、创建目录并编辑网站首页2、编辑配置文件3、重启服务4、访问网站 第八章 使用Apache服务部署静态网站
一、网站服务程序
1、网站服务介绍 网站服务就是指Web网络服务一般是只允许用户通过浏览器访问到互联网中各种资源的服务。Web网络服务是一种被动访问的服务程序即只有接收到互联网中其他主机发出的请求后才会响应最终用于提供服务程序的Web服务器会通过HTTP超文本传输协议或者HTTPS安全超文本传输协议把请求的内容传送给用户。 2、Apache程序介绍 Apache程序是目前拥有很高市场占有率的Web服务程序之一其跨平台和安全性广泛被认可且拥有快速、可靠、简单的API扩展。Apache服务程序可以运行在Linux系统、Unix系统甚至是Windows系统中支持基于IP、域名和端口号的虚拟主机功能支持多种认证方式集成有代理服务器模块、安全Socket层SSL能够实时监视服务状态与定制日志消息并有着各类丰富的模块支持。 二、配置服务文件参数
1、Linux系统中的配置文件
文件名称作用/etc/httpd服务目录/etc/httpd/conf/httpd.conf主配置文件/var/www/html网站数据目录/var/log/httpd/access_log访问日志/var/log/httpd/error_log错误日志
2、配置httpd服务程序时最常用的参数以及用途描述
参数作用ServerRoot服务目录ServerAdmin管理员邮箱User运行服务的用户Group运行服务的用户组ServerName网站服务器的域名DocumentRoot网站数据目录Listen监听的IP地址和端口号DirectoryIndex默认的索引页页面ErrorLog错误日志文件CustomLog访问日志文件Timeout网页超时时间默认为300秒
三、SELinux安全子系统
1、SELinux介绍 SELinuxSecurity-Enhanced Linux是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制MACMandatory Access Control的安全子系统。Linux系统使用SELinux技术的目的是为了让各个服务进程都受到约束使其仅获取到本应获取的资源。 2、SELinux服务配置模式
第一种enforcing强制启用安全策略模式将拦截服务的不合法请求。
第二种permissive遇到服务越权访问时只发出警告而不强制拦截。
第三种disabled对于越权的行为不警告也不拦截3、Semanage命令
semanage命令用于管理SELinux的策略英文全称为“SELinux manage”。
语法格式semanage [参数] [文件]4、Semanage命令中常用的参数以及作用
参数作用-l查询-a添加-m修改-d删除
四、个人用户主页功能
1、开启主页功能
//第17行添加井号#
//第24行去掉井号#[rootcentos ~]# vim /etc/httpd/conf.d/userdir.conf
1 #
2 # UserDir: The name of the directory that is appended onto a users home
3 # directory if a ~user request is received.
4 #
5 # The path to the end user account public_html directory must be
6 # accessible to the webserver userid. This usually means that ~userid
7 # must have permissions of 711, ~userid/public_html must have permissions
8 # of 755, and documents contained therein must be world-readable.
9 # Otherwise, the client will only receive a 403 Forbidden message.
10 #
11 IfModule mod_userdir.c
12 #
13 # UserDir is disabled by default since it can confirm the presence
14 # of a username on the system (depending on home directory
15 # permissions).
16 #
17 # UserDir disabled
18
19 #
20 # To enable requests to /~user/ to serve the users public_html
21 # directory, remove the UserDir disabled line above, and uncomment
22 # the following line instead:
23 #
24 UserDir public_html
25 /IfModule
26
27 #
28 # Control access to UserDir directories. The following is an example
29 # for a site where these directories are restricted to read-only.
30 #
31 Directory /home/*/public_html
32 AllowOverride FileInfo AuthConfig Limit Indexes
33 Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
34 Require method GET POST OPTIONS
35 /Directory2、在用户家目录中配置相关文件
//切换普通用户
[rootcentos ~]# su - centos
//创建目录
[centoscentos ~]$ mkdir pubic_html
//编辑网站首页内容
[centoscentos ~]$ echo Welcome to my website! pubic_html/index.html
//家目录权限为755保证其他用户也有quanx
[centoscentos ~]$ chmod 775 /home/centos/3、重启服务
//退出普通用户登录
[centoscentos ~]$ exit
注销
//重启httpd服务程序
[rootcentos ~]# systemctl restart httpd.service 4、访问网站
http://192.168.2.22/~centos5、修改SELinux策略规则
[rootcentos ~]# setsebool -P httpd_enable_homedirs on6、重启服务
[rootcentos ~]# systemctl restart httpd7、访问网站
http://192.168.2.22/~centos8、生成密码数据库
[rootcentos ~]# htpasswd -c /etc/httpd/passwd centos
New password: //密码
Re-type new password: //重新输入密码
Adding password for user centos9、编辑用户主页的配置文件
[rootcentos ~]# vim /etc/httpd/conf.d/userdir.conf
1 #
2 # UserDir: The name of the directory that is appended onto a users home
3 # directory if a ~user request is received.
4 #
5 # The path to the end user account public_html directory must be
6 # accessible to the webserver userid. This usually means that ~userid
7 # must have permissions of 711, ~userid/public_html must have permissions
8 # of 755, and documents contained therein must be world-readable.
9 # Otherwise, the client will only receive a 403 Forbidden message.
10 #
11 IfModule mod_userdir.c
12 #
13 # UserDir is disabled by default since it can confirm the presence
14 # of a username on the system (depending on home directory
15 # permissions).
16 #
17 # UserDir disabled
18
19 #
20 # To enable requests to /~user/ to serve the users public_html
21 # directory, remove the UserDir disabled line above, and uncomment
22 # the following line instead:
23 #
24 UserDir public_html
25 /IfModule
26
27 #
28 # Control access to UserDir directories. The following is an example
29 # for a site where these directories are restricted to read-only.
30 #
31 Directory /home/*/public_html
32 AllowOverride all
33 authuserfile /etc/httpd/passwd
34 authname My privately website
35 authtype basic
36 require user centos
37 /Directory10、重启服务
[rootcentos ~]# systemctl restart httpd11、访问网站
http://192.168.2.22/~centos/五、虚拟网站主机功能
1、基于IP地址
1、编辑网卡
[rootcentos ~]# nmtui2、重启网卡
[rootcentos ~]# nmcli connection up ens160
连接已成功激活D-Bus 活动路径/org/freedesktop/NetworkManager/ActiveConnection/43、创建网站目录并编辑首页文件
//创建网站目录
[rootcentos ~]# mkdir -p /home/wwwroot/10
[rootcentos ~]# mkdir -p /home/wwwroot/20
[rootcentos ~]# mkdir -p /home/wwwroot/30
//编辑网站首页文件
[rootcentos ~]# echo IP:192.168.2.10 /home/wwwroot/10/index.html
[rootcentos ~]# echo IP:192.168.2.20 /home/wwwroot/20/index.html
[rootcentos ~]# echo IP:192.168.2.30 /home/wwwroot/30/index.html4、编辑配置文件
[rootcentos ~]# vim /etc/httpd/conf/httpd.conf
133 VirtualHost 192.168.2.10
134 DocumentRoot /home/wwwroot/10
135 ServerName www.aaa.com
136 Directory /home/wwwroot/10
137 AllowOverride None
138 Require all granted
139 /Directory
140 /VirtualHost
141
142 VirtualHost 192.168.2.20
143 DocumentRoot /home/wwwroot/20
144 ServerName www.bbb.com
145 Directory /home/wwwroot/20
146 AllowOverride None
147 Require all granted
148 /Directory
149 /VirtualHost
150
151 VirtualHost 192.168.2.30
152 DocumentRoot /home/wwwroot/30
153 ServerName www.ccc.com
154 Directory /home/wwwroot/30
155 AllowOverride None
156 Require all granted
157 /Directory
158 /VirtualHost5、设置SELinux
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30/*
[rootcentos ~]# restorecon -Rv /home/wwwroot/
Relabeled /home/wwwroot from unconfined_u:object_r:user_home_dir_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/10 from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/10/index.html from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/20 from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/20/index.html from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/30 from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
Relabeled /home/wwwroot/30/index.html from unconfined_u:object_r:user_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s06、重启服务
[rootcentos ~]# systemctl restart httpd.service 7、访问网站
http://192.168.2.10/
http://192.168.2.20/
http://192.168.2.30/2、基于主机域名
1、编辑hosts文件
[rootcentos ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.2.10 www.aaa.com
192.168.2.20 www.bbb.com
192.168.2.30 www.ccc.com2、创建目录并编辑网站首页内容
//创建目录
[rootcentos ~]# mkdir -p /home/wwwroot/aaa
[rootcentos ~]# mkdir -p /home/wwwroot/bbb
[rootcentos ~]# mkdir -p /home/wwwroot/ccc
//编辑网站首页内容
[rootcentos ~]# echo www.aaa.com /home/wwwroot/aaa/index.html
[rootcentos ~]# echo www.bbb.com /home/wwwroot/bbb/index.html
[rootcentos ~]# echo www.ccc.com /home/wwwroot/ccc/index.html3、编辑配置文件
[rootcentos ~]# vim /etc/httpd/conf/httpd.conf
133 VirtualHost 192.168.2.10
134 DocumentRoot /home/wwwroot/aaa
135 ServerName www.aaa.com
136 Directory /home/wwwroot/aaa
137 AllowOverride None
138 Require all granted
139 /Directory
140 /VirtualHost
141
142 VirtualHost 192.168.2.20
143 DocumentRoot /home/wwwroot/bbb
144 ServerName www.bbb.com
145 Directory /home/wwwroot/bbb
146 AllowOverride None
147 Require all granted
148 /Directory
149 /VirtualHost
150
151 VirtualHost 192.168.2.30
152 DocumentRoot /home/wwwroot/ccc
153 ServerName www.ccc.com
154 Directory /home/wwwroot/ccc
155 AllowOverride None
156 Require all granted
157 /Directory
158 /VirtualHost4、设置SELinux
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/aaa
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/aaa/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/bbb
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/bbb/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/ccc
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/ccc/*
[rootcentos ~]# restorecon -Rv /home/wwwroot/5、重启服务
[rootcentos ~]# systemctl restart httpd.service 6、访问网站
http://192.168.2.10/
http://www.aaa.com/
http://192.168.2.20/
http://www.bbb.com/
http://192.168.2.30/
http://www.ccc.com/2、基于端口号
1、创建目录并编辑网站首页
//创建目录
[rootcentos ~]# mkdir -p /home/wwwroot/6111
[rootcentos ~]# mkdir -p /home/wwwroot/6222
[rootcentos ~]# mkdir -p /home/wwwroot/6333
//编辑网站首页
[rootcentos ~]# echo port:6111 /home/wwwroot/6111/index.html
[rootcentos ~]# echo port:6222 /home/wwwroot/6222/index.html
[rootcentos ~]# echo port:6333 /home/wwwroot/6333/index.html2、添加端口
[rootcentos ~]# vim /etc/httpd/conf/httpd.conf 45 Listen 8046 Listen 611147 Listen 622248 Listen 6333
135 VirtualHost 192.168.2.10:6111
136 DocumentRoot /home/wwwroot/6111
137 ServerName www.aaa.com
138 Directory /home/wwwroot/6111
139 AllowOverride None
140 Require all granted
141 /Directory
142 /VirtualHost
143
144 VirtualHost 192.168.2.20:6222
145 DocumentRoot /home/wwwroot/6222
146 ServerName www.bbb.com
147 Directory /home/wwwroot/6222
148 AllowOverride None
149 Require all granted
150 /Directory
151 /VirtualHost
152
153 VirtualHost 192.168.2.30:6333
154 DocumentRoot /home/wwwroot/6333
155 ServerName www.ccc.com
156 Directory /home/wwwroot/6333
157 AllowOverride None
158 Require all granted
159 /Directory
160 /VirtualHost
3、设置SELinux
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222/*
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6333
[rootcentos ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6333/*
[rootcentos ~]# restorecon -Rv /home/wwwroot/4、查询过滤所有与HTTP协议并且SELinux服务允许的端口列表
[rootcentos ~]# semanage port -l | grep http
http_cache_port_t tcp 8080, 8118, 8123, 10001-10010
http_cache_port_t udp 3130
http_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t tcp 5988
pegasus_https_port_t tcp 59895、手动添加端口并重启服务
//添加端口
[rootcentos ~]# semanage port -a -t http_port_t -p tcp 6111
[rootcentos ~]# semanage port -a -t http_port_t -p tcp 6222
[rootcentos ~]# semanage port -a -t http_port_t -p tcp 6333
//重启服务
[rootcentos ~]# systemctl restart httpd.service 6、访问网站
http://192.168.2.10:6111/
http://192.168.2.20:6222/
http://192.168.2.30:6333/六、Apache的访问控制
1、创建目录并编辑网站首页
[rootcentos ~]# mkdir /var/www/html/server
[rootcentos ~]# echo Successful /var/www/html/server/index.html2、编辑配置文件
[rootcentos ~]# vim /etc/httpd/conf/httpd.conf
162 Directory /var/www/html/server
163 SetEnvIf User-Agent Firefox ff1
164 Order allow,deny
165 Allow from envff
166 /Directory3、重启服务
[rootcentos ~]# systemctl restart httpd.service 4、访问网站
http://192.168.2.10/server/