Descrição: Neste artigo serão abordados os principais aspectos para a implantação de um servidor proxy com os serviços de DHCP, Proxy Transparente, Sarg, Samba, exemplos de scripts para automatização de atualização remota, cron e repositórios locais para clientes GNU/Linux.
O servidor DHCP será o responsável por distribuir IPs na rede local, para editar as configurações iniciais localize o arquivo dhcpd.conf na pasta /etc/dhcp e tenha em mãos as informações relativas ao servidor DNS primário e secundário, para este exemplo foi usado o servidor do opendns.com:
# systemctl status isc-dhcp-server
● isc-dhcp-server.service - LSB: DHCP server
Loaded: loaded (/etc/init.d/isc-dhcp-server)
Active: active (running) since Qua 2015-07-08 23:28:36 BRT; 2s ago
Process: 9399 ExecStart=/etc/init.d/isc-dhcp-server start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/isc-dhcp-server.service
└─9407 /usr/sbin/dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf /var/run/dhcpd.pid
Jul 08 23:28:33 onix dhcpd[9406]: Wrote 0 leases to leases file.
Jul 08 23:28:34 onix dhcpd[9407]: Server starting service.
Jul 08 23:28:36 onix isc-dhcp-server[9399]: Starting ISC DHCP server: dhcpd.
Em caráter opcional é possível realizar a atualização do arquivo /etc/resolv.conf de forma que é possível apontar quais servidores DNS serão consultados primeiramente. A cada nova conexão o arquivo resolv.conf é atualizado, a forma mais apropriada para a atualização deste arquivo e através do dhclient.conf na pasta /etc/dhcp. Localize no arquivo as linhas:
A definição do firewall será realizado pelo iptables através de um script. O conteúdo deste script deve ser definido de acordo com as necessidades e normas de segurança da rede. Neste exemplo será utilizado um firewall básico para redirecionar todas as requisições para a porta 3128:
# touch /etc/init.d/rc.firewall
#!/bin/bash
### BEGIN INIT INFO
# Provides: Script Firewall
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Decription: Script Firewall based on Iptables
### END INIT INFO
# Clean modules
iptables -F
iptables -t nat -F
iptables -t mangle -F
# Proxy
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
# Masquerading IP
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Forward
echo 1 > /proc/sys/net/ipv4/ip_forward
Atribua o valor de executável para o arquivo e adicione o script à inicialização do sistema:
[1] Comentário enviado por wagnerfs em 29/07/2015 - 21:41h
Muito bom mesmo. Parabéns por compartilhar o conhecimento e fico no aguardo do próximo artigo.
_________________________
Wagner F. de Souza
Técnico/Instrutor de Informática
"GNU/Linux for human beings."
LPI ID: LPI000297782
[3] Comentário enviado por l0g1in em 01/08/2015 - 09:35h
Parabéns pelo artigo muito bom mesmo. Gostaria de saber se no quesito segurança o que implica esse certificado gerado pelo Squid quanto ao Certificado dos bancos por exemplo, já o Squid vai pegar todo trafego e passar pelo seu certificado.
[4] Comentário enviado por rbonfim em 03/08/2015 - 09:53h
astsilva,
Muito obrigado pela leitura do artigo. A cerca do certificado, o Squid com estas configurações funciona com o MITM (Man in the middle) recebendo os dados HTTPS, lendo o certificado e comparando com as diretivas de acesso, como você mesmo já citou. As informações arquivadas pelo Squid relacionados aos sites HTTPS referem-se somente aos dados dos certificados, grande parte das informações pessoais não são arquivadas pelo Squid, acredito que a segurança não será comprometida e que para manter a segurança de acesso as diretivas do Firewall devem ser aplicadas principalmente par evitar acessos externos. Na dúvida leia: http://www.squid-cache.org/Doc/config/ssl_bump/
__#$
root@human:/#apt-get install -y brain
"Conhecimento é livre"
[5] Comentário enviado por tiago1 em 03/08/2015 - 15:53h
Cara, muito legal mesmo! Mas tenho uma dúvida: proxy, tipo o Squid, funciona em outras modalidades de acesso a internet, além de ADSL, com modens, como tu disse no artigo? Ou funciona em internet a rádio? Moro numa região onde a maioria das pessoas usa internet a rádio e poucos usam ADSL e estou pensando em mudar a minha pra rádio também.
[6] Comentário enviado por chaplinux em 03/08/2015 - 16:12h
[5] Comentário enviado por tiago1 em 03/08/2015 - 15:53h
Cara, muito legal mesmo! Mas tenho uma dúvida: proxy, tipo o Squid, funciona em outras modalidades de acesso a internet, além de ADSL, com modens, como tu disse no artigo? Ou funciona em internet a rádio? Moro numa região onde a maioria das pessoas usa internet a rádio e poucos usam ADSL e estou pensando em mudar a minha pra rádio também.
Um abraço e parabéns!
Primeiramente Parabens pelo artigo! salvando aqui nos favoritos.!
Respondento o nosso amigo Thiago ai de cima! amigo... o squid server pra qualquer tipo de internet... independe se vem de radio ou ADSL ou qualquer q seja. desde que vc conecte os cabos e defina as rotas! ta valendo.
[7] Comentário enviado por tiago1 em 03/08/2015 - 20:47h
[6] Comentário enviado por chaplinux em 03/08/2015 - 16:12h
[5] Comentário enviado por tiago1 em 03/08/2015 - 15:53h
Cara, muito legal mesmo! Mas tenho uma dúvida: proxy, tipo o Squid, funciona em outras modalidades de acesso a internet, além de ADSL, com modens, como tu disse no artigo? Ou funciona em internet a rádio? Moro numa região onde a maioria das pessoas usa internet a rádio e poucos usam ADSL e estou pensando em mudar a minha pra rádio também.
Um abraço e parabéns!
Primeiramente Parabens pelo artigo! salvando aqui nos favoritos.!
Respondento o nosso amigo Thiago ai de cima! amigo... o squid server pra qualquer tipo de internet... independe se vem de radio ou ADSL ou qualquer q seja. desde que vc conecte os cabos e defina as rotas! ta valendo.
[8] Comentário enviado por rbonfim em 04/08/2015 - 14:31h
Pessoal! Muito obrigado pelos comentários, qualquer contribuição à melhoria do artigo são bem vindas demais!
__#$
root@human:/#apt-get install -y brain
"Conhecimento é livre"
[9] Comentário enviado por tonyhts em 04/08/2015 - 18:59h
Favoritadáááço !!
parabens ! Belo artigo
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.
[11] Comentário enviado por yurifc4 em 19/08/2015 - 09:52h
Muito bom o artigo... tenho uma dúvida no servidor DHCP, é possível eu atribuir um IP para um determinado MAC ADDRESS?? E como ficaria a configuração? Se alguém puder me ajudar... valeu.
[12] Comentário enviado por rbonfim em 19/08/2015 - 10:14h
É possível sim Yuri, no arquivo dhpd.conf faça o seguinte:
host nome_do_computador {
hardware ethernet AA:BB:CC:DD:EE:FF; # Endereço MAC da interface de rede
fixed-address 111.222.333.444; # Endereço IP fixo
}
__#$
root@human:/#apt-get install -y brain
"Conhecimento é livre"
[14] Comentário enviado por chaplinux em 20/08/2015 - 21:31h
Renato, nao daria para implementar na compilação do Squid os parametro p/ cache full?,
para uma possivel controle de banda. ? saberia como ficaria essa implementacao?
[21] Comentário enviado por yurifc4 em 26/08/2015 - 14:16h
Sobre o DHCP novamente, existe alguma maneira de ver as máquinas e os ips que o servidor atribuiu? Dei uma pesquisada antes e tudo que encontrei foi o comando dhclient... no --help não diz muita coisa. Se alguém souber como ver essas informações?! Valeu.
[23] Comentário enviado por yurifc4 em 03/09/2015 - 17:11h
Uma outra coisa... pq será que o isc-dhcp-server não inicia com o sistema? Aqui o meu "servidor" eu preciso desligá-lo e se no outro dia eu esqueço de startar o serviço, fica todo mundo sem conexão... já tentei o "# update-rc.d isc-dhcp-server defaults" mas ele me retorna: "using dependency based boot sequencing". Alguém tem ideia disso? Uso o Debian Wheezy. Abraço!
[25] Comentário enviado por detneto em 30/05/2017 - 17:24h
Pessoal, estou recebendo este erro...
Sou iniciante, alguém poderia me ajudar?
sc-dhcp-server.service - ISC DHCP IPv4 server
Loaded: loaded (/lib/systemd/system/isc-dhcp-server.service; enabled; vendor
Active: failed (Result: exit-code) since Ter 2017-05-30 15:05:08 ACT; 2min 22
Docs: man:dhcpd(8)
Process: 1189 ExecStart=/bin/sh -ec CONFIG_FILE=/etc/dhcp/dhcpd.conf;
Main PID: 1189 (code=exited, status=1/FAILURE)
Mai 30 15:05:08 servidor-radio sh[1189]: Configuration file errors encountered -
Mai 30 15:05:08 servidor-radio sh[1189]: If you think you have received this mes
Mai 30 15:05:08 servidor-radio sh[1189]: than a configuration issue please read
Mai 30 15:05:08 servidor-radio sh[1189]: bugs on either our web page at www.isc.
Mai 30 15:05:08 servidor-radio sh[1189]: before submitting a bug. These pages e
Mai 30 15:05:08 servidor-radio sh[1189]: process and the information we find hel
Mai 30 15:05:08 servidor-radio sh[1189]: exiting.
Mai 30 15:05:08 servidor-radio systemd[1]: isc-dhcp-server.service: Main process
Mai 30 15:05:08 servidor-radio systemd[1]: isc-dhcp-server.service: Unit entered
Mai 30 15:05:08 servidor-radio systemd[1]: isc-dhcp-server.service: Failed with
...skipping...