
Como uso a batida de porta com autoSSH?
Minha solução atual é executar o script -
#! /bin/bash
while :
do
knock myhomecomputer.com 64001 && sleep 1 && knock myhomecomputer.com 64002 && sleep 1 && knock myhomecomputer.com 64003 && sleep 1 && knock myhomecomputer.com 64004
ssh -R 65522:localhost:22 myhomecomputer.com
done
O script acima é colocado no crontab como -
@reboot screen -dmS reverseSSH /home/user_me/reverse_ssh_4_myhomecomputer
Qual a diferença entre esse script e o autoSSH? Quais casos adicionais o autoSSH trata?
A ideia é fazer com que o script acima ou autoSSH seja executado em minha máquina de laboratório atrás do firewall da universidade para que eu possa fazer SSH de casa. Meu computador doméstico enfrentou uma grande quantidade de ataques SSH de força bruta, então tive que colocá-lo atrás de um firewall ativado por sequência de batidas. Existe uma maneira melhor de lidar com isso?
O script acima funciona e posso fazer ssh no computador da universidade usando o seguinte comando no meu computador doméstico -
ssh -p 65522 localhost
Responder1
Foi assim que contornei o problema
Eu editei
~/.ssh/config
na máquina do laboratório para adicionar o seguintehost myhomecomputer.com HostName myhomecomputer.com user user_me IdentityFile ~/.ssh/user_me.openSSH host myhomecomputer HostName myhomecomputer.com user user_me IdentityFile ~/.ssh/user_me.openSSH ProxyCommand bash -c 'source knock_myhomecomputer_ssh; ssh -TN -R 65522:localhost:22 myhomecomputer.com'
Observe os nomes -
myhomecomputer
(alias/atalho) emyhomecomputer.com
(host real).O
knock_myhomecomputer_ssh
é como -SLEEP_T=0.75 knock myhomecomputer.com 64001 && sleep $SLEEP_T && knock myhomecomputer.com 64002 && sleep $SLEEP_T && knock myhomecomputer.com 64003 && sleep $SLEEP_T && knock myhomecomputer.com 64004
Adicionei o seguinte ao meu
crontab
@reboot autossh -f myhomecomputer