CGI,squid,nfs簡單彙總

一,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://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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章