RHCE:web服务

!!写自定义的web服务器配置文件

 cd /etc/httpd/conf.d    --/etc/httpd是最原始的路径 /conf.d 进入到需要创建的路径下进行修改
 vim vhost.conf          --在/conf.d 路径文件下建立vhost.conf
 mkdir /www       --创建 /www 目录
ll                             --查看vhost.conf下的所有文件
cat /var/www/html/index.html        --查看网站内的目前存在的内容
systemctl restart httpd        --重启httpd系统
 setenforce 0    --宽容模式  “0”为关闭 SELinux 重启系统之后需要执行下面的内容  可以执行任意命令  “1”为关闭
echo welcome to xixi > index.html            --修改程下面的内容  覆盖index.html页面中的内容

!!创建3个虚拟主机(133本机、138、139)都在同一文件内(vhost.conf)的操作 --同一端口不同ip

 mkdir /www/{138,139}    --在www下创建目录 138 139
echo welcome to 138 > /www/138/index.html      --创建内容
echo welcome to 139 > /www/139/index.html
systemctl status network    
systemctl status NetworkManager          -- 查看networkmanager的状态
nmcli n
nmcli d     --查看状态是打开的且为**ens33**
nmcli connection modify ens33 ipv4.addresses 192.168.183.133/24  ---搭建ip 手动搭建
nmcli connection modify ens33 ipv4.gateway 192.168.183.2        --默认网关
nmcli connection modify ens33 ipv4.method manual     --修改网络获取方式
nmcli connection up ens33     ---打开一下ens33的会话
nmcli connection modify ens33 +ipv4.addresses 192.168.183.138/24   --“+”自动加入138的ip
nmcli connection modify ens33 +ipv4.addresses 192.168.183.139/24   --“+”自动加入139的ip
nmcli connection up ens33           ---打开ens33的会话
echo welcome 138 > /www/138/index.html     --在网址138中输入内容
echo welcome 139 > /www/139/index.html     --在网址139中输入内容
vim vhost.conf                      ---在vhost.conf文件中加入138  139的命令
<directory /www>
allowoverride none
require all granted
</directory>
<virtualhost 192.168.183.133:80>  //本身的ip
documentroot /www
servername 192.168.183.133
</virtualhost>
<virtualhost 192.168.183.138:80>   //添加的138
documentroot /www/138
servername 192.168.183.138
</virtualhost>
<virtualhost 192.168.183.139:80>   //添加的139
documentroot /www/139
servername 192.168.183.139
</virtualhost>

!!创建新的虚拟主机--修改端口 不同端口 同一ip

setenforce 0 systemctl stop firewalld systemctl start httpd --重启服务 (做了任何修改都需要进行重启)

cd /etc/httpd/conf.d mkdir /www/9090 --创建网址9090

mkdir /www/9091 --创建网址9091

echo www 9090 > /www/9090/index.html --并且在其中输入内容

echo www 9091 > /www/9091/index.html

systemctl stop firewalld --关闭防火墙

vim vhost.conf
Listen 9090
Listen 9091      --加入监听
<directory /www>
allowoverride none
require all granted
</directory>
<virtualhost 192.168.183.133:80>
documentroot /www
servername 192.168.183.133
</virtualhost>
<virtualhost 192.168.183.138:80>
documentroot /www/138
servername 192.168.183.138
</virtualhost>
<virtualhost 192.168.183.139:80>
documentroot /www/139
servername 192.168.183.139
</virtualhost>
<virtualhost 192.168.183.133:9090>   --创建虚拟机
documentroot /www/9090
servername 192.168.183.133
</virtualhost>
<virtualhost 192.168.183.133:9091>
documentroot /www/9091
servername 192.168.183.133
</virtualhost>

hostname 主机名

主机名和ip地址之间的关系 --地址解析

---查看ip地址时 先查看本地解析文件 再去查看dns服务器

    本地解析文件

    名称服务器=dns服务器 nameserver 解决主机名和ip地址之间的关系

nmcli device show | grep dns/gateway 查询dns/gateway里面的信息

操作系统存在两个网卡 lo(默认存在、虚拟网卡)和ens33(本机的真实网卡)--nmcli d可查ens类型

环回网卡(lo)里面是一定可以ping通 环回网卡是操作系统存在就一定存在 不管ip是否变化 环回网卡的ip都不会改变 随时可以ping通

/dev/null 是一个丢弃所有写入的设备,/dev/zero 是一个提供无限空字符的设备,可以用于重定向、覆盖、清空等操作

cgi-bin 通用网关接口

http 超文本传输协议 :是以明文进行传输数据的 被用于在web浏览器和网站服务器之间进行传输 是可以直接访问里面的数据内容的 所以不适合传输重要信息 如密码,银行卡号等

https 超文本传输安全协议:是http+ssl的结合 --TLS

SSL协议

①SSL记录协议:建立在可靠的传输协议之上,比如TCP,为高层协议提供数据封装、压缩、加密等基本功能

②SSL握手协议:建立在SSL记录协议之上,用于在实际的数据传输开始之前,通讯双方进行身份验证、协商加密算法、交换加密密钥等的

③提供的服务:认证⽤⼾和服务器,确保数据发送到正确的客⼾机和服务器 ,加密数据以防⽌数据中途被窃取 ,维护数据的完整性,确保数据在传输过程中不被改变

DocumentRoot:设置虚拟主机的 Web 内容的路径

ServerName:设置此虚拟主机为其提供内容服务的域

SSLCertificateFlie /etc/pki/tsl/certs/localhost.crt SSL认证文件=证书 可进行签名 用公钥加密的过程

SSLCertificateKeyFile /etc/pki/tsl/private/localhost.key 进行验签 用私钥去验证签名的过程

!!创建一个服务名为www.haha.com的网址 访问/www/haha里面的内容 ---基于本地解析服务的web实验

cd /www
mkdir haha
mkdir heihei                    //创建两个网站
echo hahahaha > /www/haha/index.html        
echo heiheiheihei > /www/heihei/index.html         //在网站/www/haha或者/www/heihei里面编写内容
vim vhost.conf          //在vhost.conf里面编写对应的服务名(搜索时候的名字)和链接的root(编写进网站里面的内容),让它存在  即可运用
<virtualhost 192.168.183.141:80>
documentroot /www/haha
servername www.haha.com
</virtualhost>

<virtualhost 192.168.183.141:80>
documentroot /www/heihei
servername www.heihei.com
</virtualhost>

nmcli connection modify ens33 +ipv4.addresses 192.168.183.141/24  //添加一个141的ip地址 可以存入
nmcli connection modify ens33 +ipv4.gateway 192.168.183.2     //添加网关
nmcli connection up ens33          //更新 重启一下​      
systemctl restart httpd
firewall-cmd --permanent --add-service=http          --放行http的防火墙
firewall-cmd --reload
chcon -t httpd_sys_content_t /www/index.html   

chcon  修改文件或者目录上下文标签安全的命令
httpd_sys_content_t   需要修改的新类型的标签
/www/index.html  需要修改的标签在该目录下的index.html 文件
修改上下文标签 用于管理 SELinux 环境中文件和目录访问权限的一种方式
如果 SELinux 策略要求文件具有特定的类型标签,而文件当前的类型标签与之不匹配,那么访问该文件可能会被 SELinux 阻止,除非通过策略调整或类型标签的更改来明确允许这种访问。
vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.183.141 www.haha.com
192.168.183.141 www.heihei.com

!!链接一个网站 设置进入密码

 

vim /etc/httpd/conf/httpd.conf
htpasswd -c **/etc/httpd/chengshuyu** abc    --利用htpasswd 创建一个密码文件chengshuyu  -c第一次创建
vim /etc/httpd/chengshuyu
htpasswd -c **/etc/httpd/chengshuyu** tom   --创建另外一个账号 tom
cat  /etc/httpd/chengshuyu
mkdir /usr/local/mysecret    --创建一个目录 为了不让普通用户看见 让tom和abc设计的用户看见 则需要输入tom和abc的密码才能够进入
echo "This is mysecret " > /usr/local/mysecret/index.html  --添加内容   显示内容
cd /www
mkdir hehe       --创建网页  /www/hehe
echo hehe > hehe/index.html    --写入内容  使得访问/www/hehe存在内容
vim vhost    --编辑配置文件(4个参数!!!authtype、authname、authuserfile、require)
<directory /usr/local/mysecret>      --给放秘密的目录定义内容   内容如下
authtype basic        --认证类型
authname "请输入密码:"     --认证名称  页面提示内容
authuserfile /etc/httpd/chengshuyu   --验证用户和密码  为chengshuyu文件
require user abc tom    --允许使用者abc和tom
</directory>

<virtualhost 192.168.183.140:80>
documentroot /www/hehe   --输入服务的名称之后 进去看到的内容是根据/www/hehe中的内容进行显示
alias /hehe  /usr/local/mysecret   --当用户访问/hehe时,实际是在访问/usr/local/mysecret
                                      起的一个别名为/hehe
servername www.hehe.com    --访问时输入服务的名称
</virtualhost>
systemctl restart httpd   --重启服务 

!!设置TSL加密 添加证书

cd /etc/httpd/conf.d
dnf install mod_ssl -y       ---安装ssl工具  用于加密文件
vim ssl.conf  
<VirtualHost _default_:443>
servername www.zhangsan.com
SSLCertificateFile /etc/pki/tls/certs/zsjiami.crt
SSLCertificateKeyFile /etc/pki/tls/private/zsjiami.key 

systemctl restart httpd
netstat -lntup | grep httpd       --查看监听  
cd /etc/pki/tls/certs/:
ll   --有一个默认证书  localhost.crt
ll ../private/     --上一级目录有一个默认的key  localhost.key 这是默认的 可以自己修改
**//生成钥匙**  openssl genrsa > **jiami.key**          ---添加一个jiami的钥匙
**//生成证书**  openssl req -utf8 -new -key zsjiami.key  -x509  -days  100   -out **zsjiami.crt**    --添加证书  
写入证书相关的信息  
ll   --查看是否已经存在jiami.key  和jiami.crt
mv jiami.key ../private/--将key拷贝到/private mv复制则private里面就有一个jiami.key和crt
vim ssl.conf            --进入ssl中修改 
                           **SSLCertificateFlie**/etc/pki/tsl/certs/localhost.**crt**   
                       **SSLCertificateKeyFile**   /etc/pki/tsl/private/localhost.**key** 
netstat -lntup | grep httpd       --查看监听  :443
cd /etc/httpd/conf.d
vim vhost             --写入以下内容关于SSL的部分

<virtualhost 192.168.183.140:443>
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/jiami.crt
SSLCertificateKeyFile /etc/pki/tls/private/jiami.key
documentroot /www/hehe
alias /hehe  /usr/local/mysecret
servername www.hehe.com
</virtualhost>

vim /etc/hosts        --进行本地解析

!!基于python的动态虚拟主机

dnf install python3-mod_wsgi -y      --安装软件模块
cd /var/www/cgi-bin/        --进入需要修改的文件目录下
rz -E      --直接将文件拽入
cd /etc/httpd/conf.d
vim  vhost
<virtualhost 192.168.183.140:80>
WSGIScriptAlias  / /var/www/cgi-bin/haha.wsgi
servername www.ahaha.com
</virtualhost>

vim /etc/hosts             ---进行写入本地解析
systemctl restart httpd
curl www.ahaha.com        --会显示拽入文件haha.wsgi的内容  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值