Come posso determinare se una porta è aperta sul mio server? Se è chiuso, come posso aprirlo?


2

Ho appena impostato ElasticSearch sul mio server, ma non riesco a collegarmi ad esso in remoto (l'impostazione predefinita è la porta 9200). Posso collegarmi tramite localhost, ma non riesco a collegarmi in remoto quando specifico l'indirizzo IP. Suppongo che ciò avvenga perché la porta è chiusa (ma non ne sono sicuro). Pertanto, vorrei sapere come verificare se una determinata porta è aperta o meno e, inoltre, come aprire una porta che può essere chiusa.

Risposte:


5

Per controllare le porte aperte sul tuo server puoi farlo come sudo:

iptables --list

Per aprire una porta TCP (porta 9200)

iptables -I INPUT -p tcp --dport 9200 --syn -j ACCEPT

Per la porta UPD si utilizzerà (porta 9200)

iptables -I INPUT -p udp --dport 9200 -j ACCEPT

Infine, per salvare le modifiche utilizzare:

servizio iptables save

Tuttavia, come indicato da @Codezilla, probabilmente sei dietro un router e devi inoltrare le porte.


2

Sembra che tu sia dietro un router, probabilmente dovrai inoltrare le porte. In questo caso, visita questo sito per una procedura abbastanza semplice su come impostare il port forwarding. Devi inoltrare le porte sul tuo router affinché le persone esterne alla tua rete possano accedere ad alcune applicazioni / servizi su determinate porte. Fondamentalmente dice al router che ogni volta che qualcuno vuole visualizzare il server web al tuo indirizzo IP per esempio (o che le applicazioni ElasticSearch), sa inoltrare quella richiesta al computer appropriato dietro il tuo router.

http://portforward.com/english/routers/port_forwarding/routerindex.htm


Grazie per quella spiegazione sul port forwarding, ma come posso verificare se una porta è aperta (in particolare, con bash)
Eva

1

Ci sono alcuni modi per farlo.

Prima di tutto, su quale sistema operativo stai ospitando ElasticSearch? Finestre? Linux? Quando dici a distanza, intendi macchine diverse dalla tua macchina o intendi computer non collegati alla tua LAN su Internet?

Per riferimento futuro, ti preghiamo di dire quale sistema operativo stai utilizzando IN THE POST. Non ho notato i tag CentOS fino a quando non ho avuto 20 minuti per scrivere una risposta su come farlo in Windows ...

Provare

sudo iptables -L

vedi una regola che consente la porta 9200 in quell'elenco? in caso contrario, probabilmente devi solo aggiungere una nuova regola per consentire le connessioni su 9200 (TCP indovinerò)

prova questo (come root)

iptables -A INPUT -m tcp -p tcp --dport 9200 -j ACCEPT  
iptables -A INPUT -m udp -p udp --dport 9200 -j ACCEPT

Ciao Richie, ho a che fare con CentOS (server) e Ubuntu (client). Ma questa sembra un'ottima risposta per gli utenti Windows. Sai per caso come farlo su Linux?
Eva,

Mi dispiace per il sistema operativo, ho taggato centos quando ho creato il post, ma sarò sicuro di essere più specifico nella domanda la prossima volta che posterò, il tuo tempo / impegno è molto apprezzato (votato) :)
Eva

iptables -A INPUT -m tcp -p tcp --dport 9200 -j ACCEPT iptables -A INPUT -m udp -p udp --dport 9200 -j ACCEPT
Richie086

Il server si trova in un data center, il client si trova su un'altra rete
Eva,

ah, la risposta (di Greg, sopra) è esattamente giusta - si merita i punti. grazie per il voto tho!
Richie086,

1

Se hai problemi di autorizzazione puoi provare a usare shper salvare la tua iptablesconfigurazione:

sudo sh -c "iptables-save > /etc/iptables/rules.v4"

Questo non fornisce una risposta alla domanda. Per criticare o richiedere chiarimenti a un autore, lascia un commento sotto il suo post: puoi sempre commentare i tuoi post e una volta che avrai una reputazione sufficiente sarai in grado di commentare qualsiasi post . - Dalla recensione
Enigma

vorrei commentare il post, ma per ora non posso. mai meno vorrei condividere i miei pensieri. qualche idea per renderlo adatto? voglio solo aiutare.
DaviideSnow

Ogni risposta deve essere autonoma. Se vuoi lasciare un commento ma non una risposta completa, dovrai lavorare per guadagnare abbastanza reputazione per lasciare commenti.
Enigma,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.