linux服务(三)squid

Squid 是一种在 Linux 系统下使用的优秀的代理服务器软件。
   squid 不仅可用在 Linux 系统上,还可以用在 AIX Digital Unix FreeBSD HP-UX Irix NetBSD Nextstep SCO Solaris 等系统上。
  下载安装简单,配置简单灵活,支持缓存和多种协议   Squid 是一个缓存 internet 数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户象要下载一个主页时,它向 Squid 发出一个申请,要 Squid 替它下载,然后 Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时, Squid 把保存的备份立即传给用户,使用户觉得速度相当快。
  对于 Web 用户来说, Squid 是一个高性能的代理缓存服务器,可以加快内部网浏览 Internet 的速度,提高客户机的访问命中率。 Squid 不仅支持 HTTP 协议,还支持 FTP gopher SSL WAIS 等协议。和一般的代理缓存软件不同, Squid 用一个单独的、非模块化的、 I/O 驱动的进程来处理所有的客户端请求。
   Squid 将数据元缓存在内存中,同时也缓存 DNS 查寻的结果,除此之外,它还支持非模块化的 DNS 查询,对失败的请求进行消极缓存。 Squid 支持 SSL ,支持访问控制。由于使用了 ICP Squid 能够实现重叠的代理阵列,从而最大限度的节约带宽。
Squid 的另一个优越性在于它使用访问控制清单( ACL )和访问权限清单( ARL )。访问控制清单和访问权限清单通过阻止特定的网络连接来减少潜在的 Internet 非法连接,可以使用这些清单来确保内部网的主机无法访问有威胁的或不适宜的站点。
1 ,正向代理:就是实现代理上网
yum �Cy install squid
vim /etc/squid/squid.conf
http_port 3128 也可以是 ip 3128
cache_mem   定义代理服务器使用的内存,建议为物理内存的三分之一
visible_hostname
cache_dir    定义缓存目录
例子: cache_dir ufs /var/spool/squid 1000 16 256   ufs 类型 路径   文件大小 目录数 文件数
reply_body_max_size  N allow all 定义限制文件大小    N 字节数
cache_swap_low  N
cache_swap_hight M   这两项是定义当缓存超过 M 时,新是数据取代旧的内容,到 N 时停止,这里的 N M 都是百分比
http_access allow all
截止简单的 squid 正向代理完成了 .
squid �Cz 初始化 squid 文件
squid -k parse 验证语法错误
service squid start|stop|restart|reload
  2 ,透明代理:首先开启转发功能: echo 1 > /proc/sys/net/ipv4/ip_forward
然后: iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j SNAT --to 192.168.0.88
192.168.10.0/24 内网 ip  192.168.0.88 外网地址 �Co 对应的外网网卡接口
   3 ,反向代理的实现:
内网 web ip 192.168.0.156
代理服务器内网 ip 192.168.0.88 外网 ip 192.168.10.1
我们安装好 squid 后配置:
Host_port 192.168.0.88:80 vhost
cache_mgr [email protected]
cache_mem
cache_dir  ufs /var/spool/squid 1024 16 256
visible_hostname
error_directory /usr/share/squid/errors/ 的文件
cache_peer WebIP parent 80 0 originserver weight =n max-conn=n
http_access allow all
squid 还可以以使用强大的 acl 控制上网:
acl 格式: acl 列表名 列表类型 列表内容
例: acl localhost src 192.168.0.0/24
列表类型: src :源 ip (单个 ip, 网段,连续的 ip 段)
dst :目标网络( ip
dstdomain :目标域名    //acl NOBAIDU dstdomain baodu.com
url_regex: 完整的路径
urlpath_regex : 包含的内容 //acl reject url_regex -i ^http://www.baidu.com/index.html
//acl NOMP3 urlpath_regex -i \.mp3$
port: 基于端口
maxconn :最大连接数
time :时间的控制
当我们定义好 acl 后就可以应用了,我们把匹配详细的放于最前面,在某个列表前加叹号是取反。
 

你可能感兴趣的:(linux,职场,squid,休闲,linux服务)