立即注册 找回密码

QQ登录

只需一步,快速开始

第一站长论坛

搜索
1框架
查看: 200|回复: 0

使用squid搭建http和https的代理服务器设置指南

[复制链接]
发表于 2019-1-6 08:23 | 显示全部楼层 |阅读模式
我们曾经在介绍nginx的时候顺便使用nginx做过正向代理的设定,但是如果希望支持https的话,直接使用nginx则较为困难,而使用在这方面术业有专攻的squid则要简单的多。这篇文章用于记录在centos7上安装和设定squid3.5来实现http和https的步骤。
机器配置
  1. [root@liumiaocn ~]# uname -aLinux mail.163.com 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux[root@liumiaocn ~]# [root@liumiaocn ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@liumiaocn ~]#
复制代码
安装squid
安装命令: yum install squid
确认版本
版本确认: rpm -qa |grep squid
  1. [root@liumiaocn ~]# rpm -qa |grep squidsquid-migration-script-3.5.20-12.el7.x86_64squid-3.5.20-12.el7.x86_64[root@liumiaocn ~]#
复制代码
确认ip_forward
ip_forward需要设定为1,缺省centos已设定,详细如下:
  1. [root@liumiaocn ~]# sysctl -a |grep -w ip_forwardnet.ipv4.ip_forward = 1[root@liumiaocn ~]#
复制代码
修改设定文件
修改前
  1. [root@liumiaocn ~]# grep -n 'http_access deny all' /etc/squid/squid.conf56:http_access deny all[root@liumiaocn ~]#
复制代码
修改后
  1. [root@liumiaocn ~]# grep -n http /etc/squid/squid.conf |grep -w all56:http_access allow all[root@liumiaocn ~]#
复制代码
启动squid
systemctl start squid
问题1:libssl错误
启动squid时提示如下错误
squid: relocation error: squid: symbol SSL_set_alpn_protos, version libssl.so.10 not defined in file libssl.so.10 with link time reference
原因:未安装openssl
对应方法: yum install openssl
安装之后启动squid即可:
  1. [root@liumiaocn ~]# systemctl start squid[root@liumiaocn ~]# systemctl status squid● squid.service - Squid caching proxy  Loaded: loaded (/usr/lib/systemd/system/squid.service; disabled; vendor preset: disabled)  Active: active (running) since Tue 2018-06-05 20:07:56 CST; 8s ago Process: 28548 ExecStart=/usr/sbin/squid $SQUID_OPTS -f $SQUID_CONF (code=exited, status=0/SUCCESS) Process: 28540 ExecStartPre=/usr/libexec/squid/cache_swap.sh (code=exited, status=0/SUCCESS) Main PID: 28551 (squid)  Memory: 14.3M  CGroup: /system.slice/squid.service      ├─28551 /usr/sbin/squid -f /etc/squid/squid.conf      ├─28553 (squid-1) -f /etc/squid/squid.conf      └─28557 (logfile-daemon) /var/log/squid/access.logJun 05 20:07:56 liumiaocn systemd[1]: Starting Squid caching proxy...Jun 05 20:07:56 liumiaocn squid[28551]: Squid Parent: will start 1 kidsJun 05 20:07:56 liumiaocn squid[28551]: Squid Parent: (squid-1) process 28553 startedJun 05 20:07:56 liumiaocn systemd[1]: Started Squid caching proxy.[root@liumiaocn ~]#
复制代码
问题2:无法进行域名解析
此时发现无法使用域名只能使用ip来访问
原因:dns未配置,在squid的配置文件中添加8.8.8.8和8.8.4.4
  1. [root@liumiaocn ~]# grep nameserver /etc/squid/squid.confdns_nameservers 8.8.8.8 8.8.4.4[root@liumiaocn ~]# [root@liumiaocn ~]# systemctl restart squid[root@liumiaocn ~]#
复制代码
客户端的访问
squid的缺省port为3128,在这里没有修改,在客户端使用如下方式即可访问:
http方式
export http_proxy=http://192.168.163.117:3128
curl http://www.baidu.com
https方式
export https_proxy=http://192.168.163.117:3128
curl https://www.baidu.com
总结
以上就是这篇文章的全部内容了,希望本文的内容对各人的学习或者工作具有一定的参考学习价值,谢谢各人对脚本之家的支持。如果你想相识更多相关内容请查看下面相关链接

免责声明:如果侵犯了您的权益,请联系我们,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站长论坛 ( 闽ICP备16019670号 )|申请友情链接

GMT+8, 2019-3-23 19:17 , Processed in 0.057181 second(s), 23 queries .

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc & Style Design

本站提供网上自由讨论使用,所有言论内容来自互联网并不代表本站立场,本站不负任何责任.
如发现有侵权行为,请与我们联系. 我们将立刻从网站上删除,并向所有持版权者致最深歉意.
联系QQ:2837195923

快速回复 返回顶部 返回列表