squid代理服务部署

1、squid的服务说明

主配置文件: /etc/squid.conf
检查语法: squid -k parse
初始化: squid -z
启动服务: squid
重新加载服务: squid -k reconfigure
端口号: tcp 3128
查看端口: netstat -anpt | grep squid
用内部服务器通过squid代理访问外部web服务器

 2、安装squid服务

共三台Linux,内部linux需要配置默认网关,外部linux web不需要配置默认网关 ifconfig查看网卡
 

(1)内部Linux配置ip

vim /etc/sysconfig/network-scripts/ifcfg-ens33
    (添加)

IPADDR=192.168.1.20
GATEWAY=192.168.1.1
 
systemctl restart network
       
route -n查看网关

(2)Linux squid服务器

ifconfig  查看网卡

vim /etc/sysconfig/network-scripts/ifcfg-ens33

(添加)
IPADDR=192.168.1.1

cd /etc/sysconfig/network-scripts/

cp ifcfg-ens33  ifcfg-ens37



vim ifcfg-ens37
    (修改)
NAME=ens37
DEVICE=ens37
IPADDR=200.0.0.1



systemctl restart network

        (3)外部Linux web服务器

vim /etc/sysconfig/network-scripts/ifcfg-ens33

(添加)
IPADDR=200.0.0.10


systemctl restart network

3、web服务器安装 

        (1)安装yum服务
 

rm -rf /etc/yum.repos.d/*

vim /etc/yum.repos.d/test.repo
    (添加)

[aaa]
name=aaa
baseurl=file:///media
gpgcheck=0

        (2)安装并测试 web

插入1611光盘

yum -y install httpd        (安装http)


echo 1234 > /var/www/html/index.html        (创建一个测试网页)


systemctl  start  httpd
systemctl  enable  httpd

用内部Linux访问web,为访问失败

4、安装及运行控制squid

        (1)编译安装squid
插入squid光盘

tar zxf squid-3.5.23.tar.gz -C /usr/src/

cd /usr/src/squid-3.5.23/

./configure  --prefix=/usr/local/squid  --sysconfdir=/etc  --enable-linux-netfilter  --enable-async-io=240  --enable-default-err-language=Simplify_Chinese  --disable-poll   --enable-epoll  --enable-gnuregex


make && make install

        (2)创建链接文件、创建用户和组

ln -s /usr/local/squid/sbin/* /usr/local/sbin/

useradd -M -s /sbin/nologin squid 

chown -R squid:squid  /usr/local/squid/var/

        (3)squid的配置文件

vim /etc/squid.conf

(添加)

cache_effective_user squid
cache_effective_group squid        (指定squid的程序用户,用来设置初始化,运行时缓存的账户)

squid -k parse                     (检查配置文件语法是否正确)

        (4)squid的运行控制

squid -z                    (初始化缓存目录)

squid                       (启动squid服务)

squid -k reconfigure        (重新启动squid服务)

netstat -anpt | grep "squid"

5、传统代理

        (5)内部Linux访问代理
打开火狐浏览器→首选项→高级→网络→设置→指定代理服务器ip,


 直接访问web服务器ip200.0.0.10,显示1234则成功

        (6) 限制下载文件大小

squid服务器上配置

vim /etc/squid.conf

(添加)

reply_body_max_size 10 MB      (允许下载文件大小为10MB)

squid -k reconfigure           (重启服务)

在web服务器上设置
 

cat  /dev/zero   >  /var/www/html/000        (生成一个大文件)

ll -hd /var/www/html/000                     (查看大小)      

在内部Linux访问webIP地址,会提示文件过大,无法访问,

6、透明代理 

         (1)查看squid访问日志的新增记录

tail -f /usr/local/squid/var/logs/access.log   (在squid服务器上查看)

        (2)查看web 访问日志的新增记录

tail -f /var/log/httpd/access_log            (在web服务器上查看)

        (3)配置squid支持透明代理

vim /etc/squid.conf
(在端口号添加)

http_port 192.168.1.1:3128 transparent        (添加支持透明代理)

squid -k reconfigure        

        (4)开启路由转发

vim /etc/sysctl.conf

(添加)
net.ipv4.ip_forward = 1 

sysctl -p

        (5)设置firewalld重定向策略
防火墙做端口转发操作,将访问本机80, 443端口的请求转发到3128端口。
 

systemctl start firewalld        (开启防火墙)

firewall-cmd --zone=external --add-interface=ens33

firewall-cmd --zone=internal --add-interface=ens37

firewall-cmd --zone=external --add-service=http

firewall-cmd --zone=external --add-service=https

firewall-cmd --zone=external --add-port=3128/tcp

firewall-cmd --direct --add-rule  ipv4  nat   PREROUTING 0 -i ens33  -p  tcp  --dport  80  -j  REDIRECT  --to-ports 3128

firewall-cmd --direct --add-rule  ipv4  nat   PREROUTING 0 -i ens33  -p  tcp  --dport  443  -j  REDIRECT  --to-ports 3128


firewall-cmd --runtime-to-permanent

内部Linux客户端访问web服务器即可(浏览器不需任何配置)

7、ACL访问控制

 192.168.1.0、24网段在周一到周五的9:00--17:00才能使用代理上网

vim /etc/squid.conf

#acl localnet src 192.168.0.0/16   (注释掉)

acl MYLAN src 192.168.1.0/24        (添加)
acl WORKTIME time MTWHF 9:00-17:00
http_access allow MYLAN WORKTIME    (应用规则必须放在拒绝所有http_access deny all 之前)


squid -k reconfigure  

修改日期和时间测试

date -s 年-月-日    (修改日期)

date -s 时:分       (修改时间)

 8、squid日志分析

squid服务器插入 1611镜像

        (1)安装yum

        (2)安装GD库和http

yum -y install gd gd-devel httpd

systemctl start httpd
systemctl enable httpd

        (3)安装SARG
插入squid光盘

mkdir  /usr/local/sarg

tar zxf sarg-2.3.7.tar.gz -C /usr/src/  

cd /usr/src/sarg-2.3.7/

./configure --prefix=/usr/local/sarg --sysconfdir=/etc/sarg  --enable-extraprotection && make && make install

        (4)配置

vim /etc/sarg/sarg.conf 

    (以下去掉#注释)
access_log /usr/local/squid/var/logs/access.log        

title "Squid User Access Reports"

output_dir /var/www/html/sarg        (修改路径)

www_document_root /var/www/html

        (5)运行

touch /usr/local/sarg/noreport

ln -s /usr/local/sarg/bin/sarg  /usr/local/bin/

sarg

         (6)查看日志报告
squid访问:squid服务器IP/sarg

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值