天天看点

【基础部分】之apache配置与应用

          apache服务

修改主机名为 apacheserver.example.com

http:超文本传输协议

如何查看服务默认开启端口

cat /etc/services | grep http

netstat -antlpe | grep http

1.先安装httpd

开启httpd

允许通过防火墙

firewall-cmd --permanent --add-service=http

firewall-cmd --reload

通过火狐浏览器 访问安装httpd的主机(172.25.15.10)

默认显示的是apache的test 页面

在apache默认发布目录里创建文件

vim /var/www/html/index.html

写入 helloworld 重启服务

重新访问172.25.15.10 页面显示为

【基础部分】之apache配置与应用

在默认发布目录里新写一个 test文件

【基础部分】之apache配置与应用

修改/etc/httpd/conf/httpd.conf

【基础部分】之apache配置与应用

访问 172.25.15.10 可以看到

【基础部分】之apache配置与应用

2.修改apache默认发布目录

查看 /var/www/html 的selinux标签

【基础部分】之apache配置与应用

创建新的默认发布目录: mkdir -p /www/html/

修改这个目录的 安全上下文

【基础部分】之apache配置与应用

restorecon -FvvR /www/ (刷新SELINUX 标签)

修改http的配置文件

vim /etc/httpd/conf/httpd.conf

【基础部分】之apache配置与应用

119 行: 修改默认发布目录

120-122行: 设置允许 所有人访问该文件夹

重启服务

测试: 在/www/html/ 下 创建test文件 写入 nihao~~~~

访问172.25.15.10 如下

【基础部分】之apache配置与应用

3.虚拟主机

目的:访问www.qq.com music.qq.com news.qq.com 显示不同效果

mkdir -p /var/www/qq.com/music

mkdir -p /var/www/qq.com/news

echo music.qq.com > /var/www/qq.com/music/index.html (默认显示文件)

echo news.qq.com > /var/www/qq.com/news/index.html (默认显示文件)

进入 /etc/httpd/conf.d/

创建三个文件

【基础部分】之apache配置与应用
【基础部分】之apache配置与应用
【基础部分】之apache配置与应用
【基础部分】之apache配置与应用

80代表端口 Documentroot 代表默认发布目录

combined

重启httpd 服务

测试:

需要修改打开浏览器的主机的 /etc/hosts 文件

【基础部分】之apache配置与应用

访问 www.qq.com

【基础部分】之apache配置与应用

访问music.qq.com

【基础部分】之apache配置与应用

访问news.qq.com

【基础部分】之apache配置与应用

4.给被访问的文件加上用户密码

在apache默认发布目录下 创建个被加密的文件

mkdir /var/www/html/admin/

echo no key no see > /var/www/html/admin/test

建立用户加密文件

该加密文件必须在 /etc/* 下才会生效 (可以在别的地方生成该文件 再复制到/etc下)

如果在其他地方selinux会提示报错 同时访问的时候会有如下提示

【基础部分】之apache配置与应用

cd /etc/httpd/

htpasswd -cm userfile westos (创建westos用户到userfile内)(-c 代表创建文件)

接着输入密码

htpasswd -m userfile westos1 (把westos1用户加入到userfile内)

cat userfile

【基础部分】之apache配置与应用

vim /etc/httpd/conf.d/default.conf

设置文件内某一个用户允许登陆

【基础部分】之apache配置与应用

设置文件内所有用户可以登陆

【基础部分】之apache配置与应用

www.qq.com/admin

输入账户密码

5.控制用户访问某网站

拒绝用户访问

以 music.qq.com 为例

vim /etc/httpd/conf.d/music.conf

【基础部分】之apache配置与应用
【基础部分】之apache配置与应用

允许用户访问

【基础部分】之apache配置与应用
【基础部分】之apache配置与应用

注意:deny和allow有顺序 在Order一栏 可以看到

6.https(443端口 证书登陆,为了保证用户输入账户密码的安全)

创建一个 login.qq.com

将 login.qq.com 写到 火狐所在的主机的 /etc/hosts 内

cd /etc/httpd/conf.d/ 下

vim login.conf

【基础部分】之apache配置与应用

给login创建一个目录

mkdir -p /var/www/qq.com/login/ echo logintest > /var/www/qq.com/login/test

查看端口http 只有一个80端口

https 是通过 443端口传输

所以 安装下载 mod_ssl 软件

将443端口加入到防火墙允许列表

firewall-cmd --permanent --add-port=443/tcp

Firewall-cmd --reload

重启 httpd 服务 查看端口信息

【基础部分】之apache配置与应用

说明可以通过443端口 https 访问

自定义自签名证书

下载安装crypto-utils软件包

yum install crypto-utils -y

自己制作证书:

输入:genkey [email protected] ( 需要制作证书的主机名)

【基础部分】之apache配置与应用
【基础部分】之apache配置与应用

选择 1024 或者2048 都可以 越大生成的越慢

【基础部分】之apache配置与应用

第二个加载的时候 需要在主机上敲命令 可以加速生成

【基础部分】之apache配置与应用
【基础部分】之apache配置与应用
【基础部分】之apache配置与应用

主机名为 apacheserver.example.com (根据自己主机名写)

修改 /etc/httpd/conf.d/login.conf

【基础部分】之apache配置与应用

https://login.qq.com

下载证书 可以看到login的内容

SSLEngine on

SSLCertificateFile

SSLCertificateKeyFile

均可在 /etc/httpd/conf.d/ssl.conf中查询到

网页重定向

【基础部分】之apache配置与应用
1. 如何设置代理 ( 相当于××× )

原理:一台代理服务器(可以访问其他网段的主机),和一个客户机(无法访问其他网段),

将代理服务器设置为 客户机的代理,客户机通过代理的页面缓存去访问非同网段的页面。

Squid 正向代理

要求:需要两台主机,一台为代理服务器(双网卡)

IP1:172.25.15.10

IP2:172.25.254.115

另一台主机 ip :172.25.15.20

配置:

代理服务器的主机:yum install squid -y

vim /etc/squid/squid.conf

【基础部分】之apache配置与应用

重启 squid 服务,关闭火墙

第二台主机 在firefox里 设置

编辑 > 首选项 > 高级 > 网络 > 设置 >

【基础部分】之apache配置与应用

此时 客户机可以访问 非同网段的 网页

squid 反向代理
【基础部分】之apache配置与应用

重启 squid 服务

关闭客户机的代理服务

firefox 可以访问254.40的页面

继续阅读