Portovi: koje otvoriti i kako proveriti
Koji portovi trebaju tipičnim servisima, kako da vidiš na čemu mašina sluša, kako da proveriš spoljnu dostupnost i šta da radiš ako je port zatvoren.
Ažurirano 23. avgust 2026.
Port je broj koji govori sistemu koji servis treba da primi dolaznu konekciju. Pravilo je jednostavno: otvoreno je samo ono što zaista koristiš. Svaki dodatni otvoreni port je još jedna vrata koja će neko testirati na slabosti.
Uobičajeni brojevi portova
| Port | Servis | Otvoren ka spolja |
|---|---|---|
| 22 | SSH | Da, poželjno ograničen po adresi |
| 80 | HTTP | Da, ako imaš sajt |
| 443 | HTTPS | Da, ako imaš sajt |
| 25, 465, 587 | Mejl | Dolasno — samo ako sam hostuješ mejl server. Odlazno je zatvoreno na našoj strani i otvara se na zahtev |
| 3306 | MySQL | Ne, samo lokalno |
| 5432 | PostgreSQL | Ne, samo lokalno |
| 6379 | Redis | Ne, samo lokalno |
| 27017 | MongoDB | Ne, samo lokalno |
| 25565 | Minecraft | Da, ako je gejm server |
Napomena o mejlu: dolazne konekcije nisu ograničene, dok su odlazne konekcije na portovima 25, 465 i 587 zatvorene na nivou noda dok nas ne zamoliš da ih otvorimo. Pravila unutar mašine to ne menjaju — vidi Mejl server: zašto je težak i šta treba uzeti u obzir za detalje.
Baze podataka se skoro nikada ne izlažu spolja. Ako ti treba pristup sa radnog računara, pravi način je SSH tunel, a ne otvoren port:
ssh -L 5432:127.0.0.1:5432 artem@<address>
Na čemu mašina sluša
ss -tulpn
ss -tlpn | grep 443
lsof -i -P -n | grep LISTEN
Pogledaj adresu pre broja porta. 127.0.0.1:5432 znači da je servis dostupan samo iznutra — nije dostupan spolja, koliko god pravila dodao. 0.0.0.0:5432 znači da je servis otvoren na svim mrežnim interfejsima i mora biti zaštićen firewall-om.
Provera spolja
Sa svog računara:
nc -vz <address> 443
curl -I http://<address>
Provera ping-om je besmislena: ICMP i TCP su različite stvari; port može da radi dok je ping blokiran, i obrnuto.
Port je zatvoren: rešavanje korak po korak
- Da li servis radi?
systemctl status <service> - Da li sluša na pravoj adresi?
ss -tulpn— ne127.0.0.1 - Da li firewall dozvoljava?
ufw status verboseilinft list ruleset - Da li Docker smeta? Objavljeni portovi kontejnera zaobilaze ufw
- Pogledaj logove servisa:
journalctl -u <service> -n 50
Redosled je važan: najčešće je problem u drugom koraku, a ne u firewall-u.
Promena porta servisa
Na primer, premeštanje SSH-a:
sed -i "s/^#\?Port 22/Port 2222/" /etc/ssh/sshd_config
ufw allow 2222/tcp
sshd -t
systemctl restart ssh
Proveri da možeš da se prijaviš na novi port u odvojenom prozoru, i tek onda ukloni pravilo za port 22. Za detalje vidi Jačanje SSH-a.
Uobičajene greške
| Simptom | Uzrok | Rešenje |
|---|---|---|
Connection refused | Servis ne radi | systemctl status, proveri logove |
Connection timed out | Paket odbacuje firewall | Proveri pravila |
| Radi lokalno, ne radi spolja | Vezan na 127.0.0.1 | Promeni adresu u konfiguraciji |
Address already in use | Port je zauzeo drugi servis | ss -tulpn i zaustavi dodatni servis |
Otvori port tek nakon što proveriš šta odgovara na njemu. Zaboravljen port od starog eksperimenta je tipična ulazna tačka za hakovanje; vidi znakovi kompromitovanja.