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

Publicado por Rick em 08/08/2012

[ Hits: 10.660 ]

Blog: http://www.guiadoti.com

 


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

Servidor FTP com ProFTPD - Instalação e configuração

MySQL - Comandos básicos

Ambiente seguro com chroot

Auditando com Lastcomm

Auditando com Snoopy

Leitura recomendada

Canal grátis de reportagens sobre informática

Como fazer um alias para uma placa de rede

Liberando acesso ao TSWEB (Terminal Services) externo no firewall

Montando imagens criadas pelo dd de um dispositivo RAID

Mudando horário no GNU/Linux de forma rápida

  

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.

[2] Comentário enviado por luisfeliperm em 25/11/2019 - 02:59h

Vou usar sempre



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts