Sua INPUT
chain aceita tudo. Você não mostrou sua OUTPUT
chain, mas vou assumir que ela aceita tudo também. Isso implica que a conexão está bloqueada em algum lugar entre você e o Github. É possível que o firewall da sua escola bloqueie as conexões de saída para a porta 22.
Você pode ter uma idéia melhor de onde seus pacotes são interceptados instalando tcptraceroute e executando tcptraceroute github.com 22
.
Peça ao administrador da sua escola para abrir a porta 22 ou, pelo menos (se estiver relutante), a porta 22 para github.com
. Seu uso da rede é um uso sério, que deve ser permitido aos alunos.
Se os administradores não se mexerem e você usar um proxy para se conectar à Web, poderá conseguir que o proxy retransmita o tráfego (pode ou não funcionar, dependendo de como o proxy está configurado). Veja É possível o SSH através da porta 80?
A propósito, sua INPUT
cadeia permite todo o tráfego de entrada, pois você tem apenas ACCEPT
regras e uma ACCEPT
política. Um conjunto de regras típico bloquearia o tráfego UDP de entrada em portas não verificadas e bloquearia conexões TCP de entrada em portas não verificadas:
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 123 -j ACCEPT
iptables -P INPUT DROP