Pular para o conteúdo

Proxy Squid Transparente

Script que visa instalar o Squid em modo transparente, deixando  squid.conf extremamente limpo e ainda compilando opções para o uso de autenticação posteriormente, caso necessário.

PS: Funciona em qualquer distribuição, porém certifique-se que tenha removido o pacote Squid de seu sistema antes de rodar esse script, isso evitará conflito de arquivos.
Leandro L. Santos slackuser_
Hits: 10.026 Categoria: Shell Script Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Script que visa instalar o Squid em modo transparente, deixando  squid.conf extremamente limpo e ainda compilando opções para o uso de autenticação posteriormente, caso necessário.

PS: Funciona em qualquer distribuição, porém certifique-se que tenha removido o pacote Squid de seu sistema antes de rodar esse script, isso evitará conflito de arquivos.
Download Squid-Install.txt Enviar nova versão

Esconder código-fonte

#!/bin/sh
# Este Script Visa Instalar o Proxy Squid em Modo Transparente, também
# deixando oferecendo a compilação de módulos caso queira usar Proxy Autenticado.
 
# criando o grupo do squid
groupadd squid
 
# criando usuario pro squid
useradd -g squid -s /dev/null squid >/dev/null 2>&1 
 
# baixando o squid
cd /root/
wget http://www.squid-cache.org/Versions/v2/2.5/squid-2.5.STABLE12.tar.bz2 
 
# descompactando o squid
cd /root/
tar -jxvf squid-2.5.STABLE12.tar.bz2

# compilando o squid com todas as flags lembradas, rs...
cd /root/squid-2.5.STABLE12
CFLAGS="-O2 -march=i486 -mcpu=i686" \
CXXFLAGS="-O2 -march=i486 -mcpu=i686" \
./configure --prefix=/usr \
   --localstatedir=/var/squid \
   --datadir=/usr/share/squid \ 
   --mandir=/usr/share/man \
   --sysconfdir=/usr/etc \
   --enable-auth="basic,digest,ntlm" \
   --enable-removal-policies="lru,heap" \
   --enable-digest-auth-helpers="password" \ 
   --enable-storeio="aufs,ufs,diskd,coss,null" \
   --enable-basic-auth-helpers="getpwnam,YP,NCSA,SMB,MSNT,multi-domain-NTLM,winbind" \
   --enable-external-acl-helpers="ip_user,unix_group,wbinfo_group,winbind_group" \ 
   --enable-ntlm-auth-helpers="SMB,fakeauth,no_check,winbind" \
   --enable-linux-netfilter \
   --enable-ident-lookups \
   --enable-useragent-log \
   --enable-cache-digests \
   --enable-delay-pools \ 
   --enable-referer-log \
   --enable-underscores \
   --enable-async-io \
   --enable-truncate \
   --enable-arp-acl \
   --with-pthreads \
   --enable-icmp \
   --enable-htcp \
   --enable-carp \ 
   --enable-poll \
   --enable-snmp \
   --enable-wccp \
   --enable-ssl
make all
make install
 
# ativando o modulo de autenticação/ncsa
cd /root/squid-2.5.STABLE12\helpers\basic_auth\NCSA
make
make install

# ativando o modulo de autenticação/Samba
cd /root/squid-2.5.STABLE12\helpers\basic_auth\SMB
make
make install

# ativando o modulo de autenticação/SASL
cd /root/squid-2.5.STABLE12\helpers\basic_auth\SASL
make
make install

# ativando o modulo de autenticação/LDAP
cd /root/squid-2.5.STABLE12\helpers\basic_auth\LDAP
make
make install

# ativando o modulo de autenticação/PAM
cd /root/squid-2.5.STABLE12\helpers\basic_auth\PAM
make
make install

# ativando o modulo de autenticação/winbind
cd /root/squid-2.5.STABLE12\helpers\basic_auth\winbind
make
make install

# ativando o modulo de autenticação/YP - NIS
cd /root/squid-2.5.STABLE12\helpers\basic_auth\YP
make
make install

# ativando o modulo de autenticação/MSNT
cd /root/squid-2.5.STABLE12\helpers\basic_auth\MSNT
make
make install

# ativando o modulo de autenticação/multi-domain-NTLM
cd /root/squid-2.5.STABLE12\helpers\basic_auth\multi-domain-NTLM
make
make install
 
# criando os arquivos de logs
touch /var/squid/logs/store.log
touch /var/squid/logs/access.log
 
# setando as devidas permissões
chmod 0777 /var/squid/logs/access.log
chmod 0777 /var/squid/logs/store.log
chown -R squid.squid /var/squid/
 
# criando o diretório de cache e setando as permissões
mkdir /var/squid/cache
chmod 0777 /var/squid/cache
chown -R squid.squid /var/squid/cache
 
# limpando o squid.conf e deixando-o em modo transparente
cd /usr/etc/
cd /usr/etc ; egrep -v "^#|^$" squid.conf.default > squid.conf
echo "httpd_accel_host virtual" >> /usr/etc/squid.conf
echo "httpd_accel_port 80" >> /usr/etc/squid.conf 
echo "httpd_accel_with_proxy on" >> /usr/etc/squid.conf
echo "httpd_accel_uses_host_header on" >> /usr/etc/squid.conf
echo "visible_hostname slackuser.ath.cx" >> /usr/etc/squid.conf
echo "error_directory /usr/share/squid/errors/Portuguese" >> /usr/etc/squid.conf 
# P.S.: Executar na pasta root e setar regras de firewall da 
# porta 3128 do squid para a porta 80 (nat de serviço)

Digitalizar em batch e remover páginas em branco

get-geo2 - localiza o endereço de um IP/HOST no Google Maps

DHCP Configurator

Antivírus no Linux para usuários de domínio

Cálculo de intervalo de tempo

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.