Kako da promenite SSH/SFTP port u Linux-u
Kao što verovatno već znate, SFTP (SSH File Transfer Protocol) je mrežni protokol za bezbedan prenos fajlova između dva računara putem enkriptovane konekcije. On takođe omogućava bezbedan pristup i upravljanje tim fajlovima, pa se najčeše koristi u radu sa udaljenim računarima ili serverima. U suštini predstavlja nadogradnju SSH protokola sa sličnom funkcionalnošću kao što ima FTP protokol.
U ovom tekstu ćemo objasniti kako da promenite podrazumevani SFTP port u Linux-u. Pored toga objasnićemo kako da konfigurišete vaš firewall za taj novi port.
SFTP podrazumevano koristi port 22 kao i SSH na kome je baziran. Imajući u vidu da je ovo podrazumevani port, potencijalni napadač će probati da gađa prvo ovaj port. Promenom porta dobija se dodatni nivo zaštite, jer se smanjuje rizik od automatizovanih napada.
Evo kako to da uradite na Linux-u:
Izaberite broj port-a
U Linux-u, brojevi portova do 1024 su rezervisani za dobro poznate servise. Iako za SSH servis možete koristiti neki od portova iz tog opsega, da biste izbegli potencijalne konflikte u alokaciji portova, naša preporuka je da izaberete neki port iznad broja 1024.
U ovom primeru ćemo ga promeniti na 2244, ali vi možete odabrati bilo koji port po vašoj želji.
Podesite firewall
Pre nego što promenite SFTP/SSH port potrebno je da na firewall-u otvorite novi port. Ako koristite UFW (podrazumevani firewall na Ubuntu-u) pokrenite sledeću komandu da biste otvorili port:
$ sudo ufw allow 2244/tcp
U CentOS-u je podrazumevani firewall FirewallD. Da biste u njemu otvorili novi port unesite sledeću komandu:
$ sudo firewall-cmd --permanent --zone=public --add-port=2244/tcp
$ sudo firewall-cmd --reload
CentOS korisnici takođe treba da podese SELinux pravila za novi SSH port:
$ sudo semanage port -a -t ssh_port_t -p tcp 2244
Ako koristite neku drugu Linux distribuciju koja koristi iptables, kucajte sledeću komandu:
$ sudo iptables -A INPUT -p tcp --dport 2244 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
Konfigurišite SSH/SFTP
SSH server konfiguracija se nalazi u config fajlu na lokaciji /etc/ssh/sshd_config
Otvorite ovaj fajl u nekom tekst editoru:
$ sudo vim /etc/ssh/sshd_config
Pronađite liniju koja počinje sa Port 22. Ova linija je obično komentarisana sa znakom # jer je default 22. Obrišite # i unesite novi broj SSH porta (u našem slučaju to će biti 2244).
Budite veoma obazrivi prilikom editovanja config fajla. Loša konfiguracija će rezultirati time da se SSH servis neće pokrenuti.
Kada ste završili sačuvajte fajl i restartujte SSH servis da bi izmene mogle da se primene.
$ sudo systemctl restart ssh
U CentOS-u SSH servis se zove sshd. Zato je tu potrebno da kucate:
$ sudo systemctl restart sshd
Proverite da li SSH daemon sluša na novom portu:
$ ss -an | grep 2244
Izlaz treba da izgleda otprilike ovako:
tcp LISTEN 0 128 0.0.0.0:2244 0.0.0.0:*
tcp ESTAB 0 0 192.168.121.108:2244 192.168.121.1:57638
tcp LISTEN 0 128 [::]:2244 [::]:*
Korišćenje novog SSH/SFTP porta
Da biste naveli broj porta pozovite SFTP komandu sa opcijom -P i nakon toga navedite broj porta:
$ sftp -P 2244 korisničkoime@udaljeni host ili IP adresa
Naravno, umesto korisničkoime@udaljeni host ili IP adresa
unesite prave podatke.
Ako koristite GUI SFTP klijenta jednostavno unesite novi port u interfejs klijenta.
Kako smo na početku već rekli, promenom podrazumevanog SSH/SFTP porta postižete veću bezbednost i zaštitu od automatizovanih napada, pa je naša preporuka da promenite podrazumevani port.
Bez komentara