Puncte:0

Nu se poate conecta pentru a deschide portul securizat pe Ubuntu

drapel tk

Am deschis portul 8443 pe care rulez serverul Clickhouse. Mă pot conecta la SSH pe portul 22, mă pot conecta și la 8443 prin tunelul SSH, dar nu mă pot conecta normal la gazda respectivă. Încerc să mă conectez de la mașina Windows, dacă oricum are legătură. Am deschis chiar și portul de ieșire (destul de sigur că este redundant).

Am încercat să dezactivez firewall-ul și apoi am reușit să mă conectez. Ce poate fi greșit?

user@myhost:~/d/clickhouse$ sudo ufw status
La Acțiune De la
-- ------ ----
22/tcp PERMITERE oriunde                  
9440/tcp ALLOW oriunde                  
8443/tcp ALLOW oriunde                  
8443 PERMITERE oriunde                  
22/tcp (v6) PERMITERE oriunde (v6)             
9440/tcp (v6) PERMITERE oriunde (v6)             
8443 (v6) PERMITERE oriunde (v6)             
8443/tcp (v6) PERMITERE oriunde (v6)

user@myhost:~/d/clickhouse$ sudo lsof -iTCP -sTCP:ASCULTA -P
COMANDA PID UTILIZATOR TIP FD DIMENSIUNEA DISPOZITIV/OPRIT NUMELE NODULUI
systemd-r 841 systemd-resolve 13u IPv4 26021 0t0 TCP localhost:53 (ASCULTATE)
vsftpd 901 root 3u IPv6 26299 0t0 TCP *:21 (ASCULTATE)
sshd 1037 root 3u IPv4 29181 0t0 TCP *:22 (ASCULTATE)
sshd 1037 root 4u IPv6 29183 0t0 TCP *:22 (ASCULTATE)
docker-pr 86081 root 4u IPv6 520074 0t0 TCP *:8088 (ASCULTARE)
docker-pr 287023 root 4u IPv6 1831110 0t0 TCP *:8086 (ASCULTATE)
docker-pr 318522 root 4u IPv6 2109586 0t0 TCP *:9440 (ASCULTATE)
docker-pr 318537 root 4u IPv6 2110806 0t0 TCP *:8443 (ASCULTATE)
nodul 354955 utilizator 18u IPv4 2274703 0t0 TCP localhost:34575 (ASCULTARE)

user@myhost:~/d/clickhouse$ netstat -an | grep "ASCULTĂ"
tcp 0 0 127.0.0.53:53 0.0.0.0:* ASCULTĂ     
tcp 0 0 0.0.0.0:22 0.0.0.0:* ASCULTĂ     
tcp 0 0 127.0.0.1:34575 0.0.0.0:* ASCULTĂ     
tcp6 0 0 :::21 :::* ASCULTĂ     
tcp6 0 0 :::8086 :::* ASCULTĂ     
tcp6 0 0 :::22 :::* ASCULTĂ     
tcp6 0 0 :::8088 :::* ASCULTĂ     
tcp6 0 0 :::8443 :::* ASCULTĂ     
tcp6 0 0 :::9440 :::* ASCULTĂ 

ACTUALIZAȚI:

pe serverul pe care l-am rulat sudo tcpdump -ni eth0 portul 8443 și apoi pe mașina client am alergat nc -zv 192.168.1.58 8443:

user@myhost:~$ sudo tcpdump -ni eth0 portul 8443
tcpdump: ieșirea verbosă a fost suprimată, utilizați -v sau -vv pentru decodarea completă a protocolului
ascultare pe eth0, tip link EN10MB (Ethernet), dimensiunea capturii 262144 octeți
15:05:51.368952 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], secv 2263747478, win 64240, opțiuni [mss 1468.1.58.8443, TS93, esa 1437, TS903, TS947, 1460, 2263747478
15:05:52.380268 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1468.1.58.8443, TS93, esa 9434, TS903, esa 9434, TS93, 1463747478
15:05:54.460280 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1460.1.58.8443, TS930, esa 804, lungime, TS90, esa 802, TS90, 800, 2263747478
15:05:58.540705 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1460.1.58.8443, TS947403, TS94740, TS94740, TS920, SW 1400
15:06:06.940802 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1468.1.58.8443, TS950, esa 900, lungime
15:06:23.581056 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1468.1.58.8443, TS960, esa 1434, TS97474, lungime
15:06:56.221198 IP 192.168.1.70.59364 > 192.168.1.58.8443: Steaguri [S], seq 2263747478, win 64240, opțiuni [mss 1468.1.58.8443, TS997470, esa 8434], seq 2263747478

și nc a eșuat cu mesajul nc: conectarea la portul 192.168.1.58 8443 (tcp) a eșuat: conexiune a expirat

Ieșirea de sudo ufw status verbose

user@myhost:~$ sudo ufw status verbose
Stare: activ
Înregistrare: activată (scăzută)
Implicit: deny (incoming), allow (outgoing), deny (direcționat)
Profiluri noi: săriți

La Acțiune De la
-- ------ ----
22/tcp PERMITERE PENTRU Oriunde                  
9440/tcp PERMISĂ IN Oriunde                  
8443/tcp PERMISĂ ÎN Oriunde                  
8443 PERMITĂȚI PENTRU Oriunde                  
22/tcp (v6) PERMISĂ IN Oriunde (v6)             
9440/tcp (v6) PERMITERE Oriunde (v6)             
8443 (v6) PERMISĂ IN Oriunde (v6)             
8443/tcp (v6) PERMITERE Oriunde (v6)  

Mă pot conecta la service dacă firewall-ul este dezactivat:

nc -zv 192.168.1.58 8443 
Conexiunea la portul 192.168.1.58 8443 [tcp/*] a reușit!

Mă pot conecta la service cu adresa IPv4 dacă firewall-ul este dezactivat: introduceți descrierea imaginii aici

Wayne Vosberg avatar
drapel bd
La prima vedere, se pare că ați deschis 8443 (ufw) pe IPv4, dar ascultă doar pe IPv6 (ieșire lsof/netstat). Încercați `sudo ufw disable` și vedeți dacă funcționează atunci.
Wayne Vosberg avatar
drapel bd
doar pentru a fi clar, `ufw disable` este doar pentru un test rapid. Dacă funcționează atunci, faceți `sudo ufw enable` și deschideți 8443 și pe IPv6 (ceva de genul `sudo ufw allow from any to any port 8443`
Dmitrij Kultasev avatar
drapel tk
@WayneVosberg a funcționat cu firewall dezactivat. După aceea ți-am rulat comanda și tot nu mă pot conecta. Am actualizat întrebarea cu noile rezultate pentru netstat/lsof
Dmitrij Kultasev avatar
drapel tk
De asemenea, am încercat să rulez `sudo ufw allow proto tcp from any to any port 8443`. A fost actualizată și partea „starea ufw”.
raj avatar
drapel cn
raj
Ieșirea dvs. `netstat` arată că un serviciu ascultă pe portul 8443 **numai pe adresa IPv6**. Nimic nu ascultă pe portul 8443 pe adresa IPv4. Acest lucru nu are nimic de-a face cu firewall-ul, ci cu configurația serviciului în sine. Din anumite motive, serviciul se leagă numai la adresa IPv6. Trebuie să verificați configurația.
Dmitrij Kultasev avatar
drapel tk
@raj atunci cum mă pot conecta la el specificând adresa IPv4 când firewall-ul este dezactivat? (captură de ecran adăugată)
raj avatar
drapel cn
raj
Pot doar să ghicesc - există ceva configurat pe serverul dvs. care redirecționează conexiunile de la IPv4 la IPv6? Văd că serviciul tău rulează în containerul Docker, apoi acel „ceva” poate sta undeva la nivelul Docker, între sistemul de operare gazdă și serviciul în sine. Și poate firewall-ul interferează cu acel „ceva”. Cred că va fi mai bine dacă serviciul ar asculta direct pe IPv4.
Dmitrij Kultasev avatar
drapel tk
asta e ciudat ca vad din `docker ps` ca portul este redirectionat catre portul IPv4, la fel si din toate configuratiile pot vedea la fel: `2229b0ce11e7 test/clickhouse "/entrypoint.sh" acum 2 zile Sus 2 zile 8123/tcp, 9000/tcp, 0.0.0.0:8443->8443/tcp, 9009/tcp, 0.0.0.0:9440->9440/tcp clickhouse`
Puncte:1
drapel tk

În cele din urmă, am rezolvat asta executând următoarea comandă: ruta sudo ufw permite proto tcp de la oricare la orice port 8443

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.