一,cgi
通用网关接口(CGI)是网站上放置动态内容的最简单的方法。CGI脚本可用于许多目
的,但是谨慎控制使用哪个CGI脚本以及允许谁添加和运行这些脚本十分重要。编写质量差的CGI
脚本可能为外部攻击者提供了破坏网站及其内容安全性的途径。因此,在Web服务器级别和
SELinux策略级别,都存在用于限制CGI脚本使用的设置。
#vim /etc/http/conf.d/default.conf
<Directory /var/www/html>
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>
#cd /var/www/html
#vim index.cgi
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello, World.";
二,squid(腾讯公司就用的是squid反向代理类似CDN加速)代理通常理解为翻墙,我们访问YouTube
1,正向代理:
A:提供Apache服务,和B机器在同一网段。
B:双网卡机器,一个与A机器在同一网段,另一个和C机器在同一网段。
#yum install -y squid
#vim /etc/squid/squid.conf
cache_dir aufs /data/cache 100 16 256
http_access allow all
#mkdir /data/cache
#chown -R squid:squid /data/cache
#systemctl restart squid
C:客户端,浏览器访问A机器的IP(A和C不在同一网段也不能通信,只是B机器代理将A机器提供的Apache服务缓存在B机器)
2,反向代理加速
A:提供前端Apache服务网站首页IP:192.168.217.128
B:提供前端Apache服务网站首页IP:192.168.217.129
C:代理服务器端
#yum install -y squid
#vim /etc/squid/squid.conf
http_port 3128 改为 http_port 80 accel vhost vport
增加:
cache_peer 192.168.217.128 parent 80 0 originserver name=web1
cache_peer 192.168.217.129 parent 80 0 originserver name=web2
cache_peer_domain web1 web2 www.qq.com
#systemctl restart squid
D:客户端
#vim /etc/hosts
192.168.217.130 www.qq.com
测试访问
三,nfs
server:
#yum install -y nfs-utils
#vim /etc/exports
/data 172.25.254.0/24(rw,sync)
#mkdir /data
#chmod 777 /data
#exportfs -rv <==> systemctl restart nfs
desktop:
#showmount -e 172.25.254.110
#mount -o rw,vers=3 -t nfs 172.25.254.110:/data /mnt
#echo "172.25.254.110:/data /mnt nfs defaults 0 0" >> /etc/fstab
默认情况下,NFS服务器将NFS客户端上的root视为用户nfsnobody。即,如果root尝试访问挂载的
导出中的文件,服务器会将其视作用户nfsnobody访问。在NFS导出被无磁盘客户端用作/和root需
要被视作root的情况中,这种安全措施存在隐患。若要禁用此保护,服务器需要将no_root_squash
添加到在/etc/exports中导出设置的选项列表:
客户端NFS挂载选项
rw:挂载可读写的文件系统
ro:挂载只读文件系统
vers=4:尝试只使用指定的NFS版本进行挂载。如果服务器不支持该版本,则挂载
请求失败
soft:如果NFS请求超时,三次尝试后返回错误。权衡数据完整性与提高客户端响应
性。(默认行为hard,将无限期地重试)。
保护NFS输出
Demo:
在serverx和desktopx上运行脚本,加入kerberos认证域:
# lab nfskrb5 setup
安装kerberos服务所需的keytab:(以下操作都在server0上进行)
# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/server0.keytab
激活NFS v4.2版本,可以输出selinux标签,编辑/etc/sysconfig/nfs修改如下选项:
RPCNFSDARGS="-V 4.2"
启动nfs-secure-server服务:
# systemctl start nfs-secure-server; systemctl enable nfs-secure-server
配置NFS输出:
# mkdir /securenfs
# echo ‘/securenfs desktop0(sec=krb5p,rw)‘ >> /etc/exports
# exportfs -rv
安装kerberos服务所需keytab:(以下操作都在dekstop0进行)
# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab
启动nfs-secure服务:
# systemctl start nfs-secure; systemctl enable nfs-secure
配置客户端挂载:
# mkdir /mnt/secureshare
# echo ‘server0:/securenfs /mnt/secureshare nfs defaults,v4.2,sec=krb5p 0 0‘ >>
/etc/fstab
# mount -a
本文出自 “在时间里愛着你” 博客,谢绝转载!
原文地址:http://solongcc.blog.51cto.com/8979378/1630547