Nov 3, 2023

Linux distribucije

  Linux distribucije su različite verzije Linux operativnog sistema koje se baziraju na Linux kernelu. Postoje stotine različitih Linux distribucija, svaka sa svojim karakteristikama i ciljevima. Neke od najpoznatijih Linux distribucija uključuju:

  1. Ubuntu: Popularna distribucija koja se fokusira na jednostavnost korišćenja i pristupačnost.

  2. Fedora: Razvijena od strane zajednice i sponzorisana od strane kompanije Red Hat. Koristi najnovije tehnologije.

  3. Debian: Stabilna i pouzdana distribucija, često korišćena kao osnova za druge distribucije.

  4. CentOS: Distribucija bazirana na Red Hat Enterprise Linux (RHEL) i fokusirana na servere i poslovnu upotrebu.

  5. Arch Linux: Distribucija koja je prilagodljiva i zahteva napredno znanje korisnika.

  6. openSUSE: Distribucija koja se fokusira na stabilnost i koristi alat YAST za konfiguraciju sistema.

  7. Linux Mint: Osnovana na Ubuntu distribuciji, fokusira se na jednostavno korisničko iskustvo i estetiku.

  8. Slackware: Stara i tradicionalna distribucija koja se drži jednostavnosti i minimalizma.

  9. elementary OS: Fokusira se na estetiku i korisničko iskustvo, slično macOS-u.

  10. Kali Linux: Specijalizovana distribucija za testiranje sigurnosti i penetraciono testiranje.

Svaka od ovih distribucija ima svoje prednosti i specifične namene, pa korisnici biraju distribuciju u skladu sa svojim potrebama i preferencijama.

Oct 31, 2023

firewalld

Šta je firewalld

firewalld je dinamički firewall menadžer koji se koristi na mnogim Linux distribucijama kako bi se upravljalo sigurnosnim politikama i pravilima firewall-a. firewalld je dizajniran da bude jednostavan za upotrebu i omogućava korisnicima da konfigurišu firewall pravila za zaštitu sistema od neovlašćenog mrežnog saobraćaja.

Ovde su neke od glavnih karakteristika i funkcija firewalld-a:

  1. Dinamička rekonfiguracija: firewalld omogućava dinamičku promenu firewall pravila bez potrebe za ručnim ponovnim pokretanjem firewall-a. To znači da možete dodavati, izmenjivati i uklanjati pravila dok je firewall aktivan.

  2. Zone: firewalld koristi koncept zona kako bi organizovao sigurnosne politike. Svaka zona ima svoja pravila koja se primenjuju na mrežni saobraćaj koji prolazi kroz određeni mrežni interfejs. Primeri zona uključuju "Public" (Javna), "Internal" (Unutrašnja) i "DMZ" (Demilitarizovana zona).

  3. Servisi i portovi: Možete lako omogućiti ili onemogućiti određene servise i portove za mrežni saobraćaj u okviru firewalld-a. To omogućava preciznu kontrolu nad aplikacijama i uslugama koje su dostupne preko mreže.

  4. Rich Rules: firewalld podržava "Rich Rules" koje omogućavaju složenije uslove za filtriranje saobraćaja, uključujući specifične adrese, portove, protokole i mnoge druge faktore.

  5. CLI i GUI podrška: Možete konfigurisati firewalld putem komandne linije koristeći firewall-cmd, ali takođe mnoge Linux distribucije nude i grafičke korisničke interfejse (GUI) za konfiguraciju firewall-a.

  6. Integracija sa D-Bus: firewalld se integriše sa D-Bus sistemom, omogućavajući aplikacijama da lako komuniciraju sa firewall-om.

firewalld je postao popularan izbor za upravljanje firewall-om na Linux sistemu jer omogućava korisnicima da efikasno konfigurišu sigurnosne politike bez potrebe za naprednim znanjem o firewall-ima.

Instalacija Firewalld

Instalacija firewalld na Linux sistemu zavisi od distribucije koju koristite. Evo kako se može instalirati na nekoliko popularnih distribucija:

1. Za CentOS i RHEL (Red Hat Enterprise Linux):

Koristite yum za instalaciju:

sudo yum install firewalld

Zatim aktivirajte servis i postavite ga da se pokreće pri svakom pokretanju sistema:

sudo systemctl start firewalld sudo systemctl enable firewalld

2. Za Fedora:

Koristite dnf za instalaciju:

sudo dnf install firewalld

Aktivirajte servis i postavite ga da se pokreće pri svakom pokretanju sistema:

sudo systemctl start firewalld sudo systemctl enable firewalld

3. Za Ubuntu:

Na Ubuntu, firewalld nije standardno dostupan, već se umesto toga koristi ufw (Uncomplicated Firewall). Možete instalirati ufw i koristiti ga umesto firewalld. Ako ipak želite instalirati firewalld, možete to uraditi ovako:

sudo apt update sudo apt install firewalld

Aktivirajte servis i postavite ga da se pokreće pri svakom pokretanju sistema:

sudo systemctl start firewalld sudo systemctl enable firewalld

Nakon što instalirate firewalld, možete ga konfigurisati korišćenjem firewall-cmd komandi za postavljanje sigurnosnih pravila i zona prema vašim potrebama.

Napomena: Uvek budite pažljivi pri konfigurisanju firewall-a kako ne biste slučajno onemogućili neophodan mrežni saobraćaj. Preporučuje se da pravilno konfigurišete sigurnosne politike i zone u skladu sa potrebama vašeg sistema i mreže.

Konfiguracioni fajlovi

Konfiguracioni fajlovi za firewalld se obično nalaze u određenim direktorijumima na Linux sistemu. Ovi fajlovi se koriste za postavljanje globalnih opcija za firewalld, definisanje pravila za zone i druge konfiguracije. Evo glavnih direktorijuma i fajlova za konfiguraciju firewalld:

  1. Glavni direktorijum konfiguracije:

    • /etc/firewalld/: Ovaj direktorijum sadrži glavne konfiguracione fajlove za firewalld.
    • /etc/firewalld/firewalld.conf: Ovde se nalazi glavni konfiguracioni fajl za firewalld, u kojem možete postaviti globalne opcije za firewalld.
  2. Zone konfiguracioni fajlovi:

    • /etc/firewalld/zones/: Ovaj direktorijum sadrži fajlove za svaku pojedinačnu zonu koja se koristi u firewalld. Na primer, "public.xml" za zonu "Public".
    • Ovi fajlovi definiraju pravila i konfiguracije za svaku zonu. Ako želite prilagoditi pravila za određenu zonu, možete uređivati odgovarajući XML fajl u ovom direktorijumu.
  3. Custom servis fajlovi:

    • /etc/firewalld/services/: Ovaj direktorijum sadrži fajlove koji opisuju custom servise koje možete koristiti u firewalld pravilima.
    • Custom servis fajlovi su obično u XML formatu i definišu portove, protokole i druge karakteristike servisa.
  4. Druge konfiguracione datoteke:

    • /etc/sysconfig/: Ovaj direktorijum sadrži dodatne konfiguracijske datoteke koje utiču na način na koji firewalld radi. Na primer, /etc/sysconfig/firewalld sadrži dodatne globalne opcije za firewalld.

Nakon što izmenite bilo koji od ovih konfiguracionih fajlova, preporučuje se ponovno pokretanje firewalld servisa kako bi se promene primenile. To možete učiniti komandom systemctl restart firewalld na većini Linux distribucija.

firewall-cmd komande

1. Da biste prikazali sve definisane zone u firewalld, možete koristiti sledeću komandu:

sudo firewall-cmd --get-zones

Ovo će prikazati listu svih zona koje su trenutno dostupne na vašem sistemu. Na primer, možete očekivati da će se prikazati zone kao što su "public", "internal", "external", "dmz" i druge, u zavisnosti od vaše specifične konfiguracije firewall-a.

2. Da biste prikazali podrazumevanu zonu (default zone) u firewalld, koristite sledeću komandu

sudo firewall-cmd --get-default-zone

Ova komanda će prikazati koja zona je postavljena kao podrazumevana za sve mrežne interfejse na vašem sistemu.

3. Da biste prikazali aktivne zone na svim mrežnim interfejsima na vašem sistemu, koristite sledeću komandu:

sudo firewall-cmd --get-active-zones

Ova komanda će prikazati liste zona koje su trenutno aktivne na svim mrežnim interfejsima. Na primer, možete dobiti informacije o tome koje zone su dodeljene interfejsima kao što su "public," "internal," i druge.

4. Da biste prikazali konfiguraciju za određenu zonu, kao što je "public" zona, možete koristiti sledeću komandu:

sudo firewall-cmd --zone=public --list-all

Ova komanda će prikazati sve pravila, servise i opcije konfiguracije koji su postavljeni za "public" zonu na vašem sistemu. Možete zamijeniti "public" sa imenom druge zone ako želite pregledati konfiguraciju za drugu zonu.

5. Za prikaz konfiguracije svih zona koristite sledeću komandu:
sudo firewall-cmd --list-all-zones

Ova komanda će prikazati konfiguraciju svih definisanih zona na sistemu, uključujući pravila, servise i druge opcije konfiguracije za svaku zonu.

6. Da biste prikazali listu servisa za određenu zonu, možete koristiti sledeću komandu:
sudo firewall-cmd --zone=public --list-services

Ova komanda će prikazati sve servise (portove) koji su konfigurisani za odabranu zonu.

7. Da biste postavili podrazumevanu zonu na vašem sistemu, koristite sledeću komandu:
sudo firewall-cmd --set-default-zone=your_zone

Zamenite "your_zone" sa imenom zone koju želite postaviti kao podrazumevanu. Na primer, ako želite postaviti "public" zonu kao podrazumevanu, koristite:

sudo firewall-cmd --set-default-zone=public

Nakon izvršenja ove komande, "public" zona će postati podrazumevana za sve mrežne interfejse na vašem sistemu.

8. Da biste ponovo učitali pravila firewall-a na Linux sistemu koristeći firewall-cmd, koristite sledeću komandu:

sudo firewall-cmd --reload

Ova komanda će primeniti sve promene u konfiguraciji firewall-a bez potrebe za ponovnim pokretanjem samog firewall servisa. Pravila će biti odmah ažurirana i primenjena na vašem sistemu.

9. Da biste dodali servis (port) određenoj zoni na vašem sistemu, koristite sledeću komandu:

sudo firewall-cmd --zone=internal --add-service=http

Ova komanda će dodati servis "http" u odabranu zonu i omogućiti saobraćaj na portu 80 za tu zonu.x

10. Da biste dodali port (servis) public zoni na vašem sistemu, koristite sledeću komandu:

sudo firewall-cmd --zone=public --add-port=8080/tcp

Ova komanda će dodati port 8080 u public zonu i omogućiti saobraćaj na tom portu za tu zonu.

11. Da biste trajno sačuvali pravila koja dodate u firewall-cmd, koristite opciju --permanent zajedno sa komandama za dodavanje pravila. Na primer, ako želite trajno sačuvati pravilo za dodavanje servisa u zonu, koristite sledeću komandu:
sudo firewall-cmd --zone=your_zone --add-service=your_service --permanent

Ova komanda će dodati servis u odabranu zonu i sačuvati promene kao trajne, što znači da će se ta pravila očuvati i nakon ponovnog pokretanja sistema ili firewall servisa.

Obratite pažnju na upotrebu opcije --permanent kada želite sačuvati pravila, kako biste bili sigurni da će vaše konfiguracije ostati nepromenjene čak i nakon ponovnog pokretanja sistema.

12. Da biste trajno sačuvali promene iz runtime konfiguracije (konfiguracije koja se primenjuje tokom trenutnog sesije) u permanentnu konfiguraciju (koja će opstati i nakon ponovnog pokretanja sistema), koristite sledeću komandu:

sudo firewall-cmd --runtime-to-permanent

Ova komanda će kopirati sve promene iz runtime konfiguracije u permanentnu konfiguraciju i sačuvati ih. Ovo je korisno kada želite da zadržite promene koje ste napravili tokom trenutne sesije i da ih očuvate kao trajne, tako da će ostati i nakon ponovnog pokretanja sistema ili firewall servisa.

13. Da biste dodali opciju timeout (vreme isteka) za određeni port u zoni, koristite sledeću komandu:

sudo firewall-cmd --zone=public --add-port=8080/tcp --timeout=3600

Ova komanda će dodati port 8080 sa vremenom isteka od jednog sata u public zonu. Nakon isteka vremena, pravilo će biti automatski uklonjeno iz zone.

14. Da biste obrisali određeni port iz odabrane zone, koristite sledeću komandu:

sudo firewall-cmd --zone=your_zone --remove-port=your_port/tcp

Zamenite "your_zone" sa imenom zone iz koje želite ukloniti port i "your_port" sa brojem porta koji želite ukloniti. Na primer, ako želite ukloniti port 8080 iz zone "internal," koristite:

sudo firewall-cmd --zone=internal --remove-port=8080/tcp

Ova komanda će ukloniti port 8080 iz odabrane zone na vašem sistemu.

Oct 30, 2023

man

man je Linux komanda koja se koristi za prikazivanje priručnika (manuala) za druge Linux komande i programa. Priručnici su detaljne upute i dokumentacija o tome kako koristiti i konfigurisati različite komande i programe na Linux sistemu. Priručnici su vrlo korisni za upoznavanje sa funkcionalnostima i opcijama različitih alatki.

Evo osnovne strukture komande man:


man [opcije] komanda
  • komanda: Specificira ime komande ili programa za koji želite da prikažete priručnik.

Neki korisni argumenti i opcije za man uključuju:

  • -k ključna_reč ili --apropos=ključna_reč: Traži priručnike koji sadrže određenu ključnu reč.
  • -f ključna_reč ili --whatis=ključna_reč: Prikazuje krateke opise komandi koje sadrže ključnu reč.
  • -s sekcija ili --section=sekcija: Specificira sekciju priručnika koju želite pregledati.

Primeri korišćenja man:

  1. Prikazivanje priručnika za komandu ls:

man ls

Ova komanda će prikazati detaljne informacije o korišćenju komande ls za listanje fajlova i direktorijuma.

  1. Pretraga priručnika za ključnu reč "network":

man -k network

Ova komanda će prikazati popis priručnika koji sadrže ključnu reč "network" u svom opisu.

  1. Prikazivanje kratekog opisa za komandu grep:

man -f grep

Ova komanda će prikazati krateki opis komande grep.

  1. Prikazivanje priručnika za C funkciju printf iz sekcije 3 (koja se odnosi na programiranje):

man 3 printf

Ova komanda će prikazati priručnik za printf funkciju iz sekcije 3, koja se obično koristi za programiranje u C jeziku.

Priručnici su odličan izvor informacija o komandama, programima i funkcijama na Linux sistemu, i mogu vam pomoći da bolje razumete kako ih koristiti i konfigurisati. Da biste izašli iz prikaza priručnika, jednostavno pritisnite tipku "q".