Questo mi sta facendo impazzire. Ho creato un'istanza AWS e non riesco ad inviarla dal mio Macbook. Posso ssh altrove. Posso ssh da altre macchine sulla stessa rete all'istanza AWS. Quindi non è il mio firewall e non è la mia istanza AWS.
Che cosa sul mio Macbook potrebbe impedirmi di essere in grado di SSH in uscita verso un determinato IP o intervallo di IP?
xxx@yyy:~/notes/Software/AWS $ tcpdump tcp port 22 &tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
ssh 54.247.29.171
ssh: connect to host 54.247.29.171 port 22: Connection refused
xxx@yyy:~/notes/Software/AWS $ ssh 50.247.29.171
10:45:47.857206 IP 172.31.255.253.56694 > 50.247.29.171.ssh: Flags [S], seq 3668893593, win 65535, options [mss 1460,nop,wscale 3,nop,nop,TS val 128333370 ecr 0,sackOK,eol], length 0
Esso si presenta come una cosa firewall o di instradamento, ma il percorso è morto semplice e il mio firewall software Macbook è disattivato. Presto riavvio per testarlo, ma voglio davvero sapere di più su come funzionano i Mac e perché questa connessione potrebbe non funzionare?
Da tcpdump, puoi vedere sopra che non sta nemmeno cercando di connettersi a 54.247.29.171. Ma se gli do un falso IP 50.247.29.171, almeno invia un pacchetto.
Di seguito, puoi vedere che è in qualche modo opprimente il routing
xxx@yyy :~/notes/Software/AWS $ traceroute 54.247.29.171
traceroute to 54.247.29.171 (54.247.29.171), 64 hops max, 40 byte packets
traceroute: sendto: No route to host
1 traceroute: wrote 54.247.29.171 40 chars, ret=-1
^C
Ma niente mi salta addosso:
xxx@yyy :~/notes/Software/AWS $ netstat -nr
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 172.31.255.1 UGSc 10 16 en0
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 0 73859 lo0
169.254 link#4 UCS 0 0 en0
172.31.255/24 link#4 UCS 3 0 en0
172.31.255.1 0:e0:52:aa:bb:cc UHLWI 12 231 en0 1176
172.31.255.18 0:26:ab:dd:ee:ff UHLWI 0 0 en0 1182
172.31.255.253 127.0.0.1 UHS 0 0 lo0
Pensieri? Questo deve essere qualcosa di veramente semplice.
Ho pensato che forse era il mio programma torrent, trasmissione, ma ho disabilitato la lista nera dei peer e mi sarei aspettato che usasse ipfw o qualcosa del genere.
Non sei sicuro che questo coprirebbe tutto, c'è un altro modo per bloccare le connessioni in uscita ?:
$ sudo ipfw list
65535 allow ip from any to any
aggiornamenti:
- un riavvio non ha risolto il problema.
- Neanche l'immagine Debian di VirtualBox sul mio Macbook può raggiungerla
Come richiesto
$ ssh -v 54.247.29.171
OpenSSH_5.2p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to 54.247.29.171 [54.247.29.171] port 22.
debug1: connect to address 54.247.29.171 port 22: Connection refused
ssh: connect to host 54.247.29.171 port 22: Connection refused
Dal test di sotto, sembra che la porta 80 è al lavoro ... qualcosa sta bloccando la porta in uscita 22 per questo particolare host.
Da allora ho trovato ppload nell'elenco delle attività, è il processo di peer guardian. Ho dimenticato di averlo persino installato, ma spiegherebbe questo comportamento (anche la porta 80). L'ho ucciso, ma il blocco è rimasto al suo posto. L'ho disinstallato da allora, ma devo ancora riavviare. (Stavo torrentando Libreoffice e non volevo ricevere un avviso di rimozione :-))
Come potrebbe peerguardian eseguire un tale blocco? In Linux, non è così facile vedere tutte le regole del firewall come "elenco ipfw", mancherà le tabelle come il prerouting ecc. Ci sono altre "tabelle" o equivalenti in MacOS?
xxx@yyy:~ $ tcpdump host 54.247.29.171&
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
xxx@yyy:~ $ ssh -v 54.247.29.171&
OpenSSH_5.2p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to 54.247.29.171 [54.247.29.171] port 22.
debug1: connect to address 54.247.29.171 port 22: Connection refused
ssh: connect to host 54.247.29.171 port 22: Connection refused
xxx@yyy:~ $ telnet 54.247.29.171 22
Trying 54.247.29.171...
telnet: connect to address 54.247.29.171: Connection refused
telnet: Unable to connect to remote host
xxx@yyy:~ $ telnet 54.247.29.171 80
Trying 54.247.29.171...
telnet: connect to address 54.247.29.171: Connection refused
telnet: Unable to connect to remote host
xxx@yyy:~ $ 09:09:35.738770 IP 172.31.255.11.49874 > ec2-54-247-29-171.eu-west-1.compute.amazonaws.com.http: Flags [S], seq 3011923576, win 65535, options [mss 1460,nop,wscale 3,nop,nop,TS val 573636510 ecr 0,sackOK,eol], length 0
09:09:35.841506 IP ec2-54-247-29-171.eu-west-1.compute.amazonaws.com.http > 172.31.255.11.49874: Flags [R.], seq 0, ack 3011923577, win 0, length 0
dig 54.247.29.171 any
e nslookup 54.247.29.171
tornare per te? Ricevo: gist.github.com/2998601