Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Porsche
Por naldin
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Port knocking - Instalação e configuração
Linux user
Publicado por Rik em 08/08/2012

Login: rik_99, 172818 pontos | Blog: http://guiadoti.blogspot.com.br/
[ Hits: 1388 ]

Port knocking - Instalação e configuração

Esta dica mostra como melhorar a segurança de um servidor utilizando o Port knocking. É extremamente simples, porém funcional.

Espero que gostem. :)

Instalando e configurando

Pessoal, hoje nós iremos abordar a instalação e configuração do knockd, ele é um port knocking que atua ouvindo conexões em determinadas portas previamente determinadas e executa comandos quando as sequências de conexões são enviadas corretamente.

Assim, podemos deixar nossas portas fechadas e abrir quando é conveniente e depois fechá-las novamente. Isso ajuda bastante a segurança em nosso servidor, pois se um possível atacante scanear nosso servidor, ele verá que está tudo fechado (nesta dica, iremos abordar somente a configuração do SSH, mas para os demais serviços, a lógica é a mesma).

Isto dificultará bastante o trabalho dele, para utilizar o knockd, precisamos instalá-lo em nosso servidor e no cliente.

Execute o seguinte comando, para instalar o knockd no servidor e no cliente:

# aptitude install knockd

Obs.: No ambiente de teste, o IP do meu servidor é 192.168.0.55.

Bem, depois de instalar o pacote no servidor, precisamos configurar o knockd, para isso, entre no arquivo /etc/knockd.conf:

# pico /etc/knockd.conf

O arquivo de configuração do knockd é bem simples de entender, mas para aqueles que não tem muita intimidade, segue as linhas comentadas:

[options]
# Define que o Syslog será o responsável pelo log.
UseSyslog

# Aqui temos duas sequencias uma “Open SSH” e outra “Close SSH”.

[openSSH]
# Define a sequencia das portas para executar o comando da linha abaixo.
sequence = 7000,8000,9000
# Define o tempo em segundos que os pacotes não poderão ultrapassar para a sequencia ser validada.
seq_timeout = 5
# Comando a ser executado se a sequencia for validada.
command = /usr/sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
# Tipo da flag para conexão
tcpflags = syn

# A lógica das opções abaixo é exatamente das opções acima

[closeSSH]
sequence = 9000,8000,7000
seq_timeout = 5
command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn


Obs.1: Lembrando que, aqui estamos usando a porta padrão do SSH, caso você esteja utilizando outra porta para seu SSH mude de acordo com a sua configuração.

Obs.2: Aqui estamos utilizando as portas que já vem por padrão no knockd, é de suma importância que elas sejam alteradas, e de preferência as portas tem de ser aleatórias e não sequenciais.

Feita as configurações necessárias, precisamos alterar o arquivo default do knockd:

# pico /etc/default/knockd

- Altere a opção "START_KNOCKD=0" para "=1" e,
- Altere a opção KNOCKD_OPTS="-I eth0"

Obs.: Altere a interface de acordo com a sua configuração.

Depois disso, podemos iniciar nosso port knocking:

# /etc/init.dknockd start

Com nosso servidor já configurado. é hora de testar. Em nosso cliente, iremos executar os seguintes comandos:

# knock 192.168.0.55 7000:tcp 8000:tcp 9000:tcp

Feito isso execute iptables -nL no servidor, e veja se a regra foi criada. Agora é só conectar-se normalmente ao SSH:

# ssh user@192.168.0.55

Quando encerramos nossa conexão com o SSH, não podemos esquecer de fechar a porta do SSH no servidor, para isso execute o comando abaixo:

# knock 192.168.0.55 9000:tcp 8000:tcp 7000:tcp

Feito isso, nosso servidor já esta com a porta 22 fechada.

Bem pessoal, é isso. Esta é uma ótima ferramenta, e vale a pena ser usada. Até a próxima. :)

Dica previamente publicada em:


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Automação do X com XAutomation
   Dica Linux recomendada JavaScript sem mistérios para Mozilla/Netscape e Microsoft Internet Explorer
   Dica Linux recomendada Canal grátis de reportagens sobre informática
   Dica Linux recomendada Hospede seus endereços .com.br na sua máquina com LAMP de forma gratuita, ocultando IP e porta (DNS Grátis)
   Dica Linux recomendada Matrizes e vetores numéricos em Python: A solução

Comentários
[1] Comentário enviado por removido em 08/08/2012 - 12:08h:

vou ler com calma para ver se é de fácil uso.



Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.