29.3. Iniciando o Squid

O Squid já é pré-configurado no SUSE Linux, é possível iniciá-lo logo após a instalação. Para assegurar uma inicialização mais fácil, a rede deve ser configurada de maneira que pelo menos um servidor e a Internet possam ser alcançados. Pode haver problemas se for usada uma conexão discada com uma configuração DNS dinâmica. Neste caso, deve ser digitado pelo menos o nome do servidor, porque o Squid não inicia se não detectar um servidor DNS em /etc/resolv.conf.

29.3.1. Comandos para iniciar e interromper o Squid

Para iniciar o Squid, digite rcsquid start na linha de comando como root. Na inicialização, a estrutura do diretório do cache deve ser definida primeiro em /var/cache/squid. Isto é feito automaticamente pelo script de inicialização /etc/init.d/squid e pode levar alguns segundo ou mesmo minutos. Se aparecer concluído à direita em verde, o Squid foi carregado com êxito. Para testar a funcionalidade do Squid no sistema local, digite localhost como proxy e 3128 como porta no browser.

Para permitir que usuários do sistema local e outros sistemas acessem o Squid e a Internet, mude a entrada nos arquivos de configuração /etc/squid/squid.conf de http_access deny all para http_access allow all. Entretanto, ao fazer isto, leve em conta que, com esta ação, o Squid fica totalmente acessível a qualquer um. Assim, defina ACLs que acessam o controle ao proxy. Mais informações sobre isto estão disponíveis na Seção 29.4.2, “Opções de controles de acesso”.

Após modificar o arquivo de configuração /etc/squid/squid.conf, o Squid deve recarregar o arquivo de configuração. Faça isto com rcsquid reload. Outra alternativa é reiniciar o Squid com rcsquid restart.

O comando rcsquid status pode ser usado para verificar se o proxy está sendo executado. O comando rcsquid stop faz o Squid desligar. Pode demorar um pouco, porque o Squid espera até meio minuto (shutdown_lifetime option in /etc/squid/squid.conf) antes de soltar as conexões para os clientes e gravar seus dados no disco.

[Warning]Encerrando o Squid

Encerrar o Squid com kill ou killall pode danificar o cache. Para poder reiniciar o Squid, o cache danificado deve ser apagado.

Se o Squid morrer após um curto período de tempo mesmo que tenha sido iniciado com êxito, verifique se há uma entrada de nome de servidor com falha ou se o arquivo /etc/resolv.conf está faltando. O Squid registra a causa da falha de inicialização no arquivo /var/log/squid/cache.log. Se o Squid tiver que ser carregado automaticamente quando o sistema é inicializado, use o editor de nível de execução YaST para ativar o Squid para os níveis de execução desejados. Consulte a Seção 2.9.8, “Serviços do Sistema (Runlevel)” (↑Inicialização).

Uma desinstalação do Squid não remove a hierarquia de cache nem os arquivos de registro. Para removê-los, apague o diretório /var/cache/squid manualmente.

29.3.2. Servidor DNS local

Configurar um servidor DNS local é útil mesmo se ele não gerencia o seu próprio domínio. Ele então atua simplesmente como um servidor de nomes apenas para caches e é capaz de resolver as solicitações de DNS através dos servidores de nome raiz sem necessitar de qualquer configuração especial (consulte a Seção 20.3, “Iniciando o BIND do servidor de nomes”). Como isto pode ser feito depende de como você escolhe o DNS dinâmico durante a configuração da conexão da Internet.

DNS dinâmico

Normalmente, com DNS dinâmico, o servidor DNS é configurado pelo provedor durante o estabelecimento da conexão Internet e o arquivo local /etc/resolv.conf é ajustado automaticamente. Este comportamento é controlado no arquivo /etc/sysconfig/network/config com a variável sysconfig MODIFY_RESOLV_CONF_DYNAMICALLY, que é definida como "yes". Defina esta variável para "no" com o editor sysconfig do YaST (consulte a Seção 8.3.1, “Mudando a configuração do sistema usando o Editor sysconfig do YaST”). Digite o servidor DNS local no arquivo /etc/resolv.conf com o endereço IP 127.0.0.1 para localhost. Desta maneira o Squid pode sempre encontrar o nome do servidor local quando inicia.

Para tornar o nome do servidor do provedor acessível, digite-o no arquivo de configuração /etc/named.conf em forwarders junto com seu endereço IP. Com DNS dinâmico, isto pode ser feito automaticamente durante o estabelecimento da conexão, definindo a variável sysconfig MODIFY_NAMED_CONF_DYNAMICALLY para SIM.

DNS estático

Com DNS estático, não ocorre nenhum ajuste de DNS automático enquanto é estabelecida uma conexão, assim não é necessário mudar quaisquer variáveis sysconfig. Entretanto, é preciso digitar o servidor DNS local no arquivo /etc/resolv.conf como descrito acima. Para tornar o nome do servidor do provedor acessível, digite-o no arquivo de configuração /etc/named.conf sob forwarders junto com seu endereço IP.

[Tip]DNS e Firewall

Se você tiver um firewall em execução, verifique se as solicitações de DNS podem passar por ele.