系统运维

15.httpd服务配置

2021-01-13 11:14:23 阅读数 9077 收藏 0

Apache(yum: httpd)

  • yum仓库的配置
    • 挂载:mount/dev/cdrom /media/cdrom
    • 编辑仓库文件:vim/etc/yum.repos.d/xxx.repo

[xxx]
name=xxx
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0

  • 安装Package:yum install<package>

  • Apache配置

    • vim/etc/httpd/conf/httpd.conf

虚拟网站主机功能

  • 基于IP地址

如果一台服务器有多个IP地址,而且每个IP地址与服务器上部署的每个网站一一对应,这样当用户请求访问不同的IP地址时,会访问到不同网站的页面资源。

  • 基于主机域名

当服务器无法为每个网站都分配一个独立IP地址的时候,可以尝试让Apache自动识别用户请求的域名,从而根据不同的域名请求来传输不同的内容。在这种情况下的配置更加简单,只需要保证位于生产环境中的服务器上有一个可用的IP地址(这里以192.168.10.10为例)就可以了。由于当前还没有介绍如何配置DNS解析服务,因此需要手工定义IP地址与域名之间的对应关系。/etc/hosts是Linux系统中用于强制把某个主机域名解析到指定IP地址的配置文件。简单来说,只要这个文件配置正确,即使网卡参数中没有DNS信息也依然能够将域名解析为某个IP地址。

  • 基于端口号

基于端口号的虚拟主机功能可以让用户通过指定的端口号来访问服务器上的网站资源。在使用Apache配置虚拟网站主机功能时,基于端口号的配置方式是最复杂的。因此我们不仅要考虑httpd服务程序的配置因素,还需要考虑到SELinux服务对新开设端口的监控。一般来说,使用80、443、8080等端口号来提供网站访问服务是比较合理的,如果使用其他端口号则会受到SELinux服务的限制。

  • 基于不同浏览器的访问控制

SELinux安全子系统

  • 三种模式:

    • enforcing:强制启用安全策略模式,将拦截服务的不合法请求。
    • permissive:遇到服务越权访问时,只发出警告而不强制拦截。
    • disabled:对于越权的行为不警告也不拦截。
  • getenforce- 获得当前SELinux服务的运行模式

  • setenforce0 / 1 -临时修改SELinux当前的运行模式(0为禁用,1为启用)

  • semanage<options>__<file>- 管理SELinux的策略

    • [-l] - 查询
    • [-a] - 添加
    • [-m] - 修改
    • [-d] - 删除
    • fcontext-安全上下文
    • [-t] - 设定默认安全上下文类型
  • restorecon- 将设置好的SELinux安全上下文立即生效

    • [-R] - 递归.当前目录和目录下所有的子文件同时恢复
    • [-V] - 把恢复过程显示到屏幕上