xingyu655 发表于 2018-12-27 12:07:39

利用squid实现局域网内主机的上网功能

  192.168.1.10:两张网卡eth0为内网网卡,eth1外网网卡
  192.168.1.11-17:局域网内需要联网的客户机
  


[*]  在10主机上安装squid

[*]  yum -y install squid
  2.配置squid
  编辑/etc/squid/squid.conf文件,内容如下,本文使用较简单的配置,只求实现功能
  http_port 3128
  cache_mem 64 MB
  maximum_object_size 4 MB
  cache_dir ufs /var/spool/squid 100 16 256
  access_log /var/log/squid/access.log
  acl localnet src 192.168.1.0/24
  http_access allow localnet
  http_access deny all
  visible_hostname squid.taotie.dev
  cache_mgr admin@test.com
  

  注:acl处需要根据具体的情况更改,可以添加多个条件
  

  3.客户机上设置http_proxy变量
  在/etc/profile.d/目录中添加http.sh文件,并添加一行
  export http_proxy=http://192.168.1.10:3128
  source/etc/profile.d/http.sh使其生效
  4.客户机直接访问
  curl   www.baidu.com
  

  

  配置透明代理(网上资料,并没有做过)
  端口处配置添加transparent
  即   http_port 3128transparent
  开启服务器端口转发功能
  echo "1" > /proc/sys/net/ipv4/ip_forward
  配置防火墙转发
  /sbin/iptables -t nat -A POSTROUTING -j MASQUERADE
  iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 8.8.8.8
  iptables -t nat -A PREROUTING -i eth0 -p tcp -s 192.168.1.0/24 --dport 80   -j REDIRECT --to-ports 3128
  

  客户端网关和DNS均指向squid服务器内网IP地址



页: [1]
查看完整版本: 利用squid实现局域网内主机的上网功能