Alguém pode me dizer como restringir o acesso SSH apenas a determinados intervalos de IP (por exemplo, rede local) e não a Internet inteira? Eu acho que isso tem que ser feito via firewall.
20
De man sshd
:
/etc/hosts.allow
/etc/hosts.deny
Access controls that should be enforced by tcp-wrappers are defined here.
Further details are described in hosts_access(5).
https://debian-administration.org/article/87/Keeping_SSH_access_secure oferece estes exemplos:
# /etc/hosts.allow
sshd: 1.2.3.0/255.255.255.0
sshd: 192.168.0.0/255.255.255.0
# /etc/hosts.deny
sshd: ALL
O programa wrapper TCP no Mac OS X é: tcpd
Eu não testei isso, mas tentaria isso no terminal:
sudo ipfw add allow src-ip 10.0.0.0/8,172.16.0.0/16,192.168.0.0/16 dst-ip me dst-port 22
sudo ipfw add reject src-ip any dst-ip me dst-port 22
Se você está atrás de um roteador e não mapeou a porta para o seu computador, isso desabilita efetivamente o acesso SSH da Internet.