
Zašto da naučiš postavljanje Linux servera i cloud rešenja kao početnik
Ako želiš da razvijaš sopstvene projekte, pokreneš sajt, API ili učiš sistemsku administraciju, poznavanje Linux servera i cloud koncepata je ključna veština. Linux dominira serverima i cloud infrastrukturama zbog stabilnosti, fleksibilnosti i velike zajednice. U ovom delu ćeš dobiti jasan pregled šta te očekuje, koje su prednosti i osnovni termini koje treba da znaš pre nego što uploviš u praktičan rad.
- Otvoren izvor i troškovi: većina Linux distribucija je besplatna, što ti omogućava da učiš bez finansijskog pritiska.
- Skalabilnost i kompatibilnost: isti alati i servisi rade na lokalnim serverima i u cloud provajderima (AWS, Google Cloud, DigitalOcean).
- Sigurnost i kontrola: uz osnovne prakse možeš lako da kontrolišeš pristup i ažuriranja, što je posebno važno za produkciju.
- Velika zajednica i resursi: tutorijali, forumi i dokumentacija su dostupni za svaki korak.
Prvi koraci koje treba da preduzmeš: pojmovi, distribucija i radno okruženje
Razumevanje osnovnih pojmova
Pre nego što instaliraš server, upoznaj se sa terminima kao što su kernel, distribucija (distro), SSH, root korisnik, package manager i virtualizacija/kontejneri. Ti pojmovi ti pomažu da razumeš kako ćeš upravljati sistemom i komunicirati sa serverom sa udaljene mašine.
Izbor distribucije za početak
Za početnike često su preporučene distribucije sa velikom dokumentacijom i podrškom. Evo brzog pregleda:
- Ubuntu Server: prijateljski za početnike, veliki repozitorijumi i mnogo tutorijala.
- Debian: stabilan i pouzdan, dobar izbor ako želiš konzervativniju postavku.
- CentOS / AlmaLinux / Rocky Linux: popularni u enterprise okruženjima (ako radiš sa Red Hat ekosistemom).
Osnovna oprema i softver za učenje
Ne treba ti skup hardver da bi počeo. Možeš koristiti:
- Stari laptop ili desktop za lokalni server.
- Virtualna mašina (VirtualBox, VMWare) za testiranje instalacija bez rizika.
- Cloud nalog kod provajdera (besplatni krediti često dolaze) da naučiš razlike između lokalnog i cloud okruženja.
- Terminal i SSH klijent (na Linux/Mac terminаl je ugrađen, na Windows-u možeš koristiti PuTTY ili Windows Terminal).
Kada ovladaš ovim osnovama, bićeš spreman da pređeš na praktičnu instalaciju: izbor particionisanja, postavljanje mreže, korisnika i osnovne bezbednosne mere kao što su podešavanje SSH ključeva i firewall-a. U sledećem delu ćemo korak-po-korak instalirati server i pokazati prvih nekoliko komandi koje će ti trebati za dalje napredovanje.
Korak po korak: praktična instalacija servera (Ubuntu Server primer)
Za primer ćemo proći osnovnu instalaciju Ubuntu Servera na VM ili cloud instanci — postupak je sličan i kod drugih distribucija, samo su nazivi paketa i nekih konfiguracionih fajlova drugačiji.
- Pokreni instalacioni ISO ili kreiraj novu instancu kod cloud provajdera. Izaberi jezik, tastaturu i mrežu (obično DHCP).
- Postavi hostname (npr. moj-server) i kreiraj prvog korisnika (ne koristi root za svakodnevni rad). Instaliraj OpenSSH server tokom instalacije ako je opcija dostupna — to ti omogućava pristup udaljeno odmah nakon boot-a.
- Nakon prvog logovanja, odmah uradi osnovno ažuriranje:
sudo apt update && sudo apt upgrade -y. - Postavi vremensku zonu i sinhronizaciju:
sudo timedatectl set-timezone Europe/Belgradei proveri status:timedatectl. - Instaliraj korisne alate:
sudo apt install -y curl wget git htop unzip. - Na tvojoj lokalnoj mašini generiši SSH ključ ako ga nemaš:
ssh-keygen -t ed25519, pa prekopiraj ključ na server:ssh-copy-id user@ip_servera. - Kad radiš preko ključeva i assumes da imaš pristup, učini SSH sigurnijim: u /etc/ssh/sshd_config postavi
PermitRootLogin noiPasswordAuthentication no(pre nego što isključiš password, uveri se da ti ključevi rade). Restartuj SSH servis:sudo systemctl restart sshd.

Prve korisne komande za administraciju i dijagnostiku
Nakon instalacije često ćeš koristiti nekoliko osnovnih komandi za proveru stanja sistema. Evo kratkog vodiča šta rade i kada ih pozvati:
- Informacije o sistemu:
uname -a,lsb_release -a— osnovne informacije o kernelu i distribuciji. - Diska i particije:
df -h(sve montirane particije i slobodan prostor),lsblk(blok uređaji i particije). - Memorija i procesi:
free -m,topilihtop(pregled potrošnje RAM/CPU i procesa). - Mreža:
ip a(interfejsi),ip route(rute),ss -tulpn(otvoreni portovi i servisi). - Servisi i logovi:
sudo systemctl status ime-servisaza proveru servisa;sudo journalctl -u ime-servisa -n 100za poslednjih 100 log zapisa. - Korisnici i privilegije:
sudo adduser ime,sudo usermod -aG sudo ime— pravljenje i davanje sudo privilegija.
Osnovne bezbednosne prakse i automatsko održavanje
Odmah nakon što server radi, uloži vreme u par osnovnih bezbednosnih podešavanja — to štedi mnogo problema kasnije.
- Firewall: UFW je jednostavan za početak. Primer:
sudo ufw allow OpenSSH,sudo ufw enable,sudo ufw status numbered. - Automatska ažuriranja: Instaliraj unattended-upgrades:
sudo apt install unattended-upgradesi konfiguriši sigurnosna ažuriranja tako da se primenjuju automatski. - Fail2ban: Koristan za zaštitu od brute-force napada nad SSH-om i drugim servisima:
sudo apt install fail2bani aktiviraj osnovna pravila. - Backup i snapshot: Pravljenje redovnih bekapa (rsync, tar) ili cloud snapshot-a je obavezno. Testiraj restore plan — backup koji nisi testirao nije vredan mnogo.
- Cloud-specifično: Ako koristiš cloud provajdera, konfiguriši Security Groups / Network ACL i snapshot politike; koristi cloud-init/meta podatke za inicijalno postavljanje SSH ključeva i korisnika.
U sledećem delu nastavićemo sa primerom postavljanja web servera (Nginx), konfiguracijom virtualnih hostova i jednostavnim deployment postupkom.

Postavljanje web servera i jednostavan deployment
- Instaliraj Nginx i proveri da li je servis aktivan. Kreiraj direktorijum za sajt i postavi osnovni index fajl.
- Konfiguriši virtualne hostove (server blocks) za svaki domen ili aplikaciju — postavi root direktorijum, logove i eventualne preusmeravanja.
- Omogući sajt (na Debian/Ubuntu sistemima obično preko povezivanja konfiguracionog fajla u sites-enabled) i reload-uj Nginx da učita promene.
- Za jednostavan deployment koristi git ili rsync: na serveru kreiraj korisnika/deploy skriptu koja povlači nove verzije iz repozitorijuma i ažurira prava fajlova.
- Ako koristiš aplikaciju koja zahteva servis (npr. Node.js), napravi systemd unit fajl za upravljanje procesom i omogući automatski restart i logovanje.
- Za kontejnerizovane aplikacije razmotri Docker ili Docker Compose kao način da izoluješ zavisnosti i upravljaš verzijama.
- Uvek testiraj promene u staging okruženju pre puštanja u produkciju i koristi jednostavne rollback mehanizme (snapshot, backup ili git revert).
Zaključak i sledeći koraci
Rad na sopstvenom Linux serveru je proces učenja kroz praksu: počni sa malim, automatizuj ponavljajuće zadatke i postepeno uvodi naprednije alate za monitoring, sigurnost i deployment. Fokusiraj se na sigurnost (ključevi, firewall, bekapi), pouzdanost (automatizovana ažuriranja, systemd, snapshot) i testove restore-a. Ako želiš detaljnije vodiče i referentne primere, pogledaj Ubuntu Server Guide — dobar je resurs za dalji napredak. Uči iz grešaka, dokumentuj svoje procedure i uključi se u zajednice kada zapneš.
Frequently Asked Questions
Kako bezbedno podesiti pristup preko SSH?
Generiši par ključeva (privatni i javni) na lokalnoj mašini i postavi javni ključ na server; testiraj prijavu ključem pre nego što isključiš autentifikaciju lozinkom. Onemogući direktan root login i razmisli o alternativnom portu ili dodatnim merama kao što su fail2ban i ograničavanje pristupa kroz firewall.
Koji je najbolji način za redovan backup i kako testirati restore?
Koristi kombinaciju: redovni snapshot-e ako si u cloudu i periodične kopije pomoću rsync-a ili alata za backup na udaljeni server/oblak. Kritično je testirati restore proces — povremeno radi probni restore na testnu instancu kako bi proverio da su podaci konzistentni i da procedura funkcioniše.
Kako brzo omogućiti HTTPS za Nginx?
Najjednostavnije je koristiti Certbot sa Let’s Encrypt-om koji može automatski dobiti i instalirati sertifikat za Nginx i podesiti auto-renew. Proveri da firewall dozvoljava portove 80 i 443 pre pokretanja i konfiguriši provere obnove sertifikata (cron ili systemd timer) da bi izbegao istek.
