当前位置 主页 > 服务器问题 > Linux/apache问题 >

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

    栏目:Linux/apache问题 时间:2019-03-14 13:36

    以下安装及配置均为Sudu所在公司应用中使用的脚本,希望高手们能指正我的一些不足。如果测试过程中发现了问题请回复或者联系我。

    安装篇:

    本教程应用环境为干净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