Squid(Proxy)----代理服务器 proxy的意思就是代理软件或代理服务器,接受用户的请求后,在internet读取的网页数据保存在硬盘上, 在将数据传给用户,当其他用户也需要同一份数据的时候,proxy server就可以直接从硬盘将数据传给 用户,减少数据的获取

默认端口为3128,建议修改,尽量较少人使用的端口,这样扫描到的几率低,降低使用效率和带宽
vim /etc/squid/squid.conf

配置防火墙: -A INPUT -m state --state NEW -m tcp -p tcp --dport 3128 -j ACCEPT 
重启生效
配置squid缓存目录:
	cache缓存目录可以等价与squid的硬盘:用户访问同一个页面,如果squid代理服务器发现网页有更新
		会自动下载新的数据,在给用户
	开启squid缓存目录,cache_dir 默认不启动被注释掉,
						cache_dir ufs /var/spool/squid 100 16 256    
						默认 100M  第一层子目录最多16个,第一层子目录下最多256个子目录
	
	清除cache缓存目录:		停止squid服务。
							删除cache缓存目录,/var/spool/squid 
							新建cache缓存目录。mkdir /var/spool/squid 
							修改文件属性。其他人也能写chown  squid  /var/spool/squid 
							mysql -z 重新加载

	配置squid链接限制:	有效的管理链接限制,使squid代理服务器的效率及带宽达到有效利用
		限制某一网段:
					按照配置文件/etc/squid/squid.conf 里面的ACL语法配置
					acl  quanwindow src 192.168.31.100-192.168.31.200/24
					http_access deny quanwindow
							注意: quanwindow是自定义的,上下一定要一致
					重启生效 
					
		限制某ip地址无法链接:
					acl  quanip src 192.168.31.71/24
					http_access deny quanip 
					
		限制读取指定网址:	限制用户不可访问的特定网站,其他网站都可以正常链接
					acl baidu dstdomain .baidu.com 
					http_access deny baidu 
					
		配置禁止网站清单:
					用文件清单去限制用户不可访问的网络清单
					acl wwwdeny url_regex "/etc/squid/deny.txt"
					http_access deny wwwdeny 
					建立限制清单:echo ".baidu.comm " >/etc/squid/deny.txt 
								  echo ".bsblog.com " >>/etc/squid/deny.txt 
								
		限制用户链接时间:,在规定的时间范围内链接不到的特定网址,其他时间正常链接
							特定的网zhi
					acl timedeny time  W  22:00-23:00
					http_access deny timedeny 
					
					其中星期的代码为1-7   :  M T W H F A S 
	
	使用ncsa-auth认证: 网络上有很多的proxy list网站,专门收集对外服务的proxy服务器。每天都会更新
						都是扫描3128端口或80,一旦proxy服务器被公开,会拖慢网络速度,容易当成跳板
						所以建议加一层帐户认证和密码保护
								一种是LDAP认证
								一种是使用htpasswd 建立认证账号和密码
									htpasswd -c /etc/squid/passwd quan
									chmod o+r /etc/squid/passwd  配置为所有人都可读
									查看nsca_auth认证服务:
									rpm -ql squid |grep ncsa_auth  //检查nsca_auth 目录位置
								配置squid认证使用nsca_auth 
(认证方式及账号密码位置)auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/passwd 
						auth_param basic children 5		//5个程序来验证
						auth_param basic realm  Welcom to quan  //登录时的欢迎词
						
						acl squid_user proxy_auth REQUIRED
						http_access allow squid_user
						
						
						注意:auth_param 必须在acl前面添加且在最前面
							要安装apache服务
	SARG监控squid代理服务器:squid Analysis Report Generator
				产生报表可以让我们轻松的掌握squid代理服务器使用寂记录
				注意:安装sarg软件之前,要安装apache网页服务器。因为sarg是以网页的形式呈现
						需要GD软件
		编辑配置文件/etc/httpd/conf.d下的sarg.conf
			其中的意思为 Deny from all 限制所有网段不可连
						 Allow from all
						 Allow from 127.0.0.1  //只允许本机ipv4连接
						 Allow from  ::1  允许本机ipv6连接  
						重启Apache服务生效 
		根据sarg可根据日,周,月报表手机squid代理服务器的数据,建议自行加入计划任务以便
			每天完成:
				一次:sarg -o /var/www/sarg/ONE-SHOT
			日:sarg -o /var/www/sarg/daily
			周:sarg -o /var/www/sarg/weekly
			月:sarg -o /var/www/sarg/monthly
			
	Dansguardian过滤网站:免费的proxy filter,限制Client端不应该访问的网页
							可以过滤指定的URL和IP ,指定那些文件不可以下载,
		安装完成之后必须做一些proxy服务器之间的配置
		vim /etc/dansguardian/dansguardian.conf
		languagedir = '/etc/dansguardian/languages'

		# language to use from languagedir.
		language = 'chinesegb2312' 修改为简体中文。chinesegb2312
		filterport=8080  Dansguardian默认的端口为8080
		注意:如果Dansguardian和proxy服务器是在同一天主机则无需修改proxyip
				如果在另一台主机上则必须配置该主机IP
				如果使用简体中文,必须修改forcequicksearch设置为on 默认为off
		配置防火墙: -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
		启动dansguardian即可 service dansguardian start
		
		
		配置客户端,将原本使用的squid代理服务器的端口给为8080即可
		
		加入禁止网址:bannedsitelist 禁止网站清单
			vim /etc/dansguardian/bannedsitelist 
			加入baidu.com
		加入禁止的关键字: bannedphraselist
			vim /etc/dansguardian/bannedphraselist
			加入 <xxxxo>
		禁止下载的文件类型:bannedextensionlist
			vim /etc/dansguardian/bannedphraselist
			加入 .exe