虚拟网站主机功能
基于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__- 管理SELinux的策略
[-l] - 查询
[-a] - 添加
[-m] - 修改
[-d] - 删除
fcontext-安全上下文
[-t] - 设定默认安全上下文类型
restorecon- 将设置好的SELinux安全上下文立即生效
[-R] - 递归.当前目录和目录下所有的子文件同时恢复
[-V] - 把恢复过程显示到屏幕上
文件传输协议(FTP)
Package: vsftpd, ftp
工作模式
主动模式:FTP服务器主动向客户端发起连接请求
被动模式:FTP服务器等待客户端发起连接请求(FTP的默认工作模式)
systemctl enable__应用配置
vsftpd工作模式
匿名开放模式(不安全)【匿名用户:anonymous】
本地用户模式
虚拟用户模式(安全,但配置较复杂,要用到PAM)
-6 使用IPv6协议