qweewq123qwe 发表于 2018-12-27 09:07:56

CGI,squid,nfs简单汇总

  一,cgi
  通用网关接口(CGI)是网站上放置动态内容的最简单的方法。CGI脚本可用于许多目
  的,但是谨慎控制使用哪个CGI脚本以及允许谁添加和运行这些脚本十分重要。编写质量差的CGI
  脚本可能为外部***者提供了破坏网站及其内容安全性的途径。因此,在Web服务器级别和
  SELinux策略级别,都存在用于限制CGI脚本使用的设置。
  #vim /etc/http/conf.d/default.conf
  
  Options +ExecCGI
  AddHandler cgi-script .cgi
  
  #cd /var/www/html
  #vimindex.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 -ysquid
  #vim /etc/squid/squid.conf
  cache_dir aufs /data/cache 100 16256
  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 -ysquid
  #vim /etc/squid/squid.conf
  http_port 3128 改为 http_port 80 accel vhost vport
  增加:
  cache_peer 192.168.217.128 parent 80 0originserver name=web1
  cache_peer 192.168.217.129 parent 80 0originserver name=web2
  cache_peer_domain web1web2www.qq.com
  #systemctl restartsquid
  D:客户端
  #vim /etc/hosts
  192.168.217.130www.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 -rvsystemctlrestart nfs
  desktop:
  #showmount -e172.25.254.110
  #mount-o rw,vers=3-t nfs 172.25.254.110:/data/mnt
  #echo "172.25.254.110:/data/mntnfs   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
  




页: [1]
查看完整版本: CGI,squid,nfs简单汇总