一,cgihtml
通用網關接口(CGI)是網站上放置動態內容的最簡單的方法。CGI腳本可用於許多目前端
的,可是謹慎控制使用哪一個CGI腳本以及容許誰添加和運行這些腳本十分重要。編寫質量差的CGIlinux
腳本可能爲外部***者提供了破壞網站及其內容安全性的途徑。所以,在Web服務器級別和web
SELinux策略級別,都存在用於限制CGI腳本使用的設置。vim
#vim /etc/http/conf.d/default.conf瀏覽器
<Directory /var/www/html>緩存
Options +ExecCGI安全
AddHandler cgi-script .cgi服務器
</Directory> dom
#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://cla***oom.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://cla***oom.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