Se você sabe que um de seu computador está sempre ativo, também tem a possibilidade de usá-lo como um proxy ssh.
digamos que você tenha uma configuração de nome de domínio para o seu endereço IP externo (por exemplo, myhome.dyndns.com ou o que for), o que você fará é conectar-se em um computador (digamos que o framboesa esteja sempre ativo e você encaminhar a porta do roteador para o ), suas conexões ssh serão:
escola -> (roteador, transparente aqui) -> framboesa -> ubuntu ou windows
agora, em seu ~ / .ssh / config na escola, adicione as linhas:
Host ubuntu 192.168.1.51
Hostname ubuntu (change to match your setup)
User myraspberryuser (change it ;-) )
IdentityFile ~/.ssh/id_rsa (The path to your private key, on the school computer, better on an usb key if public computer)
ForwardAgent yes
RequestTTY yes
ProxyCommand ssh -W %h:%p %r@myhome.dyndns.com
Para conectar-se então:
ssh-add ~/.ssh/id_rsa # to do only once per session
ssh myuser@ubuntu (login without password)
A partir de agora, se você digitar ssh ubuntu, o computador se conectará primeiro ao raspberry e, em seguida, iniciará uma sessão ssh no computador ubuntu.
Eu recomendo que, seja qual for a porta que você escolher encaminhar, desabilite a senha no /etc/sshd.conf para permitir apenas o login através da chave ssh. Dessa forma, se você configurar a chave no framboesa e no ubuntu, com o parâmetro 'ForwardAgent', precisará desbloquear a chave e não será necessária nenhuma senha para conectar-se. Dessa forma, mesmo que os robôs estejam tentando fazer login no seu ssh, eles nunca poderão fazer login, pois você não permite o logon da senha.
Bônus, isso também funciona com scp, scp foo ubuntu: / tmp / foo usará a mesma configuração sem parâmetros adicionais. Bônus 2, essa configuração não exige nenhuma alteração em casa, se amanhã você e outro computador, apenas copiar / colar o código na sua configuração ssh, alterar o host e o ip, é isso, não é necessário abrir uma nova porta no roteador