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

Publicado por Rick em 08/08/2012

[ Hits: 6.951 ]

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

OSSEC - Instalação e configuração

MySQL - Comandos básicos

ProFTPD - Enjaulando usuários no diretório HOME

Configurando o Redmine para enviar e-mails via Gmail

Leitura recomendada

Nomeando / renomeando uma partição de disco

VMWare no Debian Etch (4.0)

Como habilitar login como root no Debian 8 (Jessie)

Introdução ao QT

Ubuntu 12.04 em netbook: Primeiras impressões

  

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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts