KNOCK + SSH
Knock adiciona uma camada simples e eficaz pra acesso via SSH. Normalmente você deixa a porta do SSH aberta pra conseguir acesso remoto, entretanto recebe inúmeras tentativas de invasão. O knock elimina a necessidade de portas abertas no firewall e só abre se você bater antes numa sequência pré-definida de portas.
Parte 2: Configuração do servidor
Pacotes:
# aptitude search knock
knockd - small port-knock daemon
knocker - a simple and easy to use TCP security port scanner
No servidor Instalar o knockd e definir as portas de batida do SSH.
# aptitude install knockd
Arquivo principal do knock, onde você vai definir as portas de batida e tempo entre cada batida, veja o padrão de instalação.
/etc/knockd.conf
Editar /etc/default/knockd e deixar as duas linhas seguintes:
Isto define a placa que vai aceitar conexão e manter sempre o knock rodando.
Pronto, aqui acaba a configuração do servidor, mas antes reinicie.
# /etc/init.d/knockd restart
Se não estiver fechada, então feche a porta SSH do firewall pra testar se o serviço funciona. ; )
# iptables -A INPUT -p tcp --dport 22 -j DROP
# iptables -L
DROP tcp -- anywhere anywhere tcp dpt:ssh
Tente um acesso SSH. Com a porta fechada, assim além de não conseguir o acesso remoto , ainda vai deixar o atacante travado, pois nem resposta ele vai receber, ponto pra você. : )
# aptitude search knock
knockd - small port-knock daemon
knocker - a simple and easy to use TCP security port scanner
No servidor Instalar o knockd e definir as portas de batida do SSH.
# aptitude install knockd
Arquivo principal do knock, onde você vai definir as portas de batida e tempo entre cada batida, veja o padrão de instalação.
/etc/knockd.conf
[options]
logfile = /var/log/knockd.log
[openSSH]
sequence = 7000,8000,9000
seq_timeout = 5
command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
[closeSSH]
sequence = 9000,8000,7000
seq_timeout = 5
command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
logfile = /var/log/knockd.log
[openSSH]
sequence = 7000,8000,9000
seq_timeout = 5
command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
[closeSSH]
sequence = 9000,8000,7000
seq_timeout = 5
command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
Editar /etc/default/knockd e deixar as duas linhas seguintes:
START_KNOCKD=1
KNOCKD_OPTS="-i eth0"
KNOCKD_OPTS="-i eth0"
Isto define a placa que vai aceitar conexão e manter sempre o knock rodando.
Pronto, aqui acaba a configuração do servidor, mas antes reinicie.
# /etc/init.d/knockd restart
Se não estiver fechada, então feche a porta SSH do firewall pra testar se o serviço funciona. ; )
# iptables -A INPUT -p tcp --dport 22 -j DROP
# iptables -L
DROP tcp -- anywhere anywhere tcp dpt:ssh
Tente um acesso SSH. Com a porta fechada, assim além de não conseguir o acesso remoto , ainda vai deixar o atacante travado, pois nem resposta ele vai receber, ponto pra você. : )