首页 > 网站 > 建站经验 > 正文

centos下简单配置安装Squid 3.0反向代理

2019-11-02 16:15:44
字体:
来源:转载
供稿:网友

安装篇:

本教程应用环境为干净centos 5.5 ,预先分好并加载/data分区,并且关闭selinux及iptables

首先修改文件描述符并设定临时端口范围,这些设置重启后生效

复制代码 代码如下:

cat >> /etc/security/limits.conf <<DDD

* soft nofile 8192

* hard nofile 20480

DDD

cat >> /etc/sysctl.conf <<DDD

#set temp port range

net.ipv4.ip_local_port_range = 32768 61000

DDD

init 6

确认修改是否正确

复制代码 代码如下:

[root@sudutest ~]# ulimit -n

8192

[root@suduotest ~]# sysctl -n net.ipv4.ip_local_port_range

net.ipv4.ip_local_port_range = 32768 61000

添加squid专用账户

复制代码 代码如下:

groupadd squid

useradd -g squid -s /bin/false -M squid

添加日志目录、设置缓存和日志目录的权限

复制代码 代码如下:

mkdir /data/squidlog/

chown -R squid.squid /data

然后上传或者wget squid3.0软件tar包,tar zxvf解压,并且进入解压后的目录安装编译

复制代码 代码如下:

./configure prefix=/usr/local/squid3 enable-async-io=100 with-pthreads enable-storeio="aufs,diskd,ufs" enable-removal-policies="heap,lru" enable-icmp enable-delay-pools enable-useragent-log enable-referer-log enable-kill-parent-hack enable-arp-acl enable-default-err-language=Simplify_Chinese enable-err-languages="Simplify_Chinese English" disable-poll disable-wccp disable-wccpv2 disable-ident-lookups disable-internal-dns enable-basic-auth-helpers="NCSA" enable-stacktrace with-large-files disable-mempools with-filedescriptors=65535 enable-ssl enable-x-accelerator-var

make

make install

make install-pinger

至此squid已经成功安装了,然后大家自己所需的/usr/local/squid3/etc/squid.conf 配置文件,我这边的配置文件将会在本文末尾贴出来供大家研究。

写好配置文件后执行下面的命令初始化cache目录

/usr/local/squid3/sbin/squid -z

然后运行squid,注:-D参数用来跳过DNS检测

/usr/local/squid3/sbin/squid -D

最后设置squid开机自动启动

echo "/usr/local/squid3/sbin/squid -D " >>/etc/rc.local

维护篇:

以下是squid常用的命令

如果修改过配置文件,则用下面的命令重读配置文件(即时生效)

/usr/local/squid3/sbin/squid -k reconfigure

检查配置文件配置的语法是否正确

注:只有像这样的“cache_cf.cc(346) squid.conf:14 unrecognized: 'http1_port'”才是语法错误,

“WARNING: use of 'reload-into-ims'……”这类提示属于意见建议,可以忽略。

/usr/local/squid3/sbin/squid -k parse

查看squid的日志和进程,看squid运行是否正常

复制代码 代码如下:

ps -ef |awk '/^squid/'

cat /data/squidlog/cache.log

/usr/local/squid3/sbin/squid -k check ;echo $?

关闭squid

发出关闭信号,等会话结束后彻底关闭

/usr/local/squid3/sbin/squid -k shutdown

关闭squid(更高优先级,直接关闭squid)
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表