Nov 5, 2023

MySQL server

 MySQL server je popularni open-source sistem za upravljanje bazama podataka (DBMS) koji se koristi za skladištenje, organizovanje i upravljanje raznim vrstama podataka. Evo nekoliko ključnih tačaka vezanih za MySQL server:

  1. Relaciona baza podataka: MySQL je relacioni DBMS, što znači da podaci se čuvaju u tabelama koje imaju veze (relacije) jedna s drugom. Ovo omogućava efikasno skladištenje i upravljanje podacima.

  2. Open-Source i besplatan: MySQL je besplatan za korišćenje, jer je open-source softver. To znači da možete preuzeti, instalirati i koristiti MySQL server bez plaćanja licence.

  3. Brz i pouzdan: MySQL je poznat po svojoj brzini i pouzdanosti. To ga čini popularnim izborom za mnoge aplikacije, uključujući web aplikacije i poslovne sisteme.

  4. Podrška za različite platforme: MySQL je dostupan za različite platforme, uključujući Windows, Linux, macOS i mnoge druge.

  5. Podrška za različite programski jezike: MySQL podržava mnoge programski jezike za razvoj aplikacija, kao što su PHP, Python, Java, i mnogi drugi.

  6. SQL (Structured Query Language): MySQL koristi SQL za upravljanje bazom podataka. SQL je standardizovani jezik za rad sa bazama podataka, što olakšava pretragu, ažuriranje i upite nad podacima.

  7. Administraorski alati: MySQL dolazi sa različitim alatima za administraciju i upravljanje bazom podataka. Na primer, MySQL Workbench je popularan vizuelni alat za dizajniranje baze podataka i upravljanje njome.

  8. Bezbednost: MySQL ima ugrađene mehanizme zaštite i autentikacije kako bi osigurao sigurnost podataka. Možete kontrolisati pristup bazama podataka i tabelama pomoću korisničkih privilegija.

MySQL se često koristi za različite vrste aplikacija, uključujući web sajtove, sisteme za upravljanje sadržajem (CMS), aplikacije za analizu podataka, mobilne aplikacije i mnoge druge. Zbog svoje popularnosti, MySQL je postao jedan od najrasprostranjenijih DBMS-ova u svetu otvorenog koda.

Instalacija i konfiguracija

Da biste instalirali i konfigurisali MySQL server na Linux sistemu (kao što je CentOS ili Ubuntu), možete slediti sledeće korake:

Instalacija MySQL servera:

Za CentOS/RHEL:

  1. Otvorite terminal.

  2. Unesite sledeću komandu da biste instalirali MySQL server:

    sudo yum install mysql-server
  3. Sledite upute za instalaciju. Biće vam zatraženo da potvrdite instalaciju, pa pritisnite "y" (yes).

Za Ubuntu:

  1. Otvorite terminal.

  2. Unesite sledeću komandu da biste instalirali MySQL server:

    sudo apt-get update sudo apt-get install mysql-server
  3. Prilikom instalacije, biće vam zatraženo da postavite šifru za "root" korisnika MySQL servera.

Konfiguracija MySQL servera:

  1. Da biste započeli MySQL server i omogućili ga da se automatski pokreće pri svakom podizanju sistema, koristite sledeće komande:

    sudo systemctl start mysqld sudo systemctl enable mysqld
  2. Da biste podesili MySQL server da bolje odgovara vašim potrebama i bezbednosnim zahtevima, pokrenite interaktivni alat za postavljanje:

    sudo mysql_secure_installation

    Pratite upute i postavite šifru za "root" korisnika, uklonite anonimni korisnik, onemogućite dalji pristup "root" korisniku sa udaljenih adresa itd.

  3. Sada možete pristupiti MySQL serveru sa sledećom komandom:

    mysql -u root -p

    Unesite šifru koju ste postavili tokom konfiguracije.

  4. Sada ste spremni za upravljanje i korišćenje MySQL servera. Možete kreirati baze podataka, tabele i korisnike, kao i izvršavati SQL upite.

Nakon instalacije i konfiguracije MySQL servera, možete početi sa razvojem aplikacija koje koriste ovu bazu podataka ili prenositi postojeće podatke u MySQL server.


dig

 dig (Domain Information Groper) je alat za izvršavanje DNS upita iz komandne linije. Pomaže vam da dobijete informacije o DNS zonama, DNS rekordima i DNS serverima. Evo osnovnih komandi i primera za dig:

  1. Osnovna upotreba: Da biste dobili informacije o određenom DNS rekordu (npr. A rekord za domen example.com), možete koristiti sledeću komandu:

    dig example.com
  2. Specifičan DNS tip rekorda: Možete specificirati tip DNS rekorda koji želite da dobijete, na primer MX rekordi (rekordi za e-poštu):

    dig example.com MX
  3. Specifičan DNS server: Ako želite upitati određeni DNS server za informacije, koristite opciju @ zajedno sa IP adresom DNS servera. Na primer:

    dig example.com @8.8.8.8
  4. Reverzna rezolucija (PTR upit): Da biste saznali naziv domaćina za datu IP adresu, koristite reverzni DNS upit. Na primer:

    dig -x 8.8.8.8
  5. Prikaz više informacija: Da biste dobili više detalja o DNS upitu, uključujući odgovor, autoritativni odgovor itd., koristite opciju +short:

    dig example.com +short
  6. Prikaz odgovora u čitljivom formatu: Opcija +noquestion vam omogućava da prikažete samo odgovore, bez pitanja, što može olakšati analizu rezultata:

    dig +noquestion example.com
  7. Prikaz sve dostupne DNS informacije: Upotrebom opcije ANY možete dobiti sve dostupne DNS informacije za datu zonu (koristite pažljivo, jer ovo može biti obimno):

    dig example.com ANY
  8. Postavljanje vremenskog ograničenja za upit: Opcijom +time=5 možete postaviti vremensko ograničenje za upit na 5 sekundi:

    dig example.com +time=5

Ove su osnovne komande za dig. Ovaj alat vam omogućava dublje razumevanje DNS-a i pomaže vam da proverite i analizirate DNS konfiguraciju i rekordove za različite domene.

BIND DNS servis

 BIND (Berkeley Internet Name Domain) je najčešće korišćen DNS (Domain Name System) server na svetu. DNS je ključna komponenta internetskog infrastrukturnog sloja i omogućava prevodjenje ljudski čitljivih imena domena (npr. www.example.com) u IP adrese koje su neophodne za identifikaciju računara i servera na internetu.

BIND je besplatan i otvoren izvor i razvija se kao open-source projekat. Kao DNS server, BIND ima nekoliko ključnih funkcija:

  1. Prevođenje domenskih imena u IP adrese (resolving).
  2. Održavanje distribuirane baze podataka sa informacijama o domenama i njihovim IP adresama.
  3. Autorizacija i autentifikacija DNS upita i odgovora.
  4. Održavanje sigurnosnih funkcija kao što su DNSSEC (Domain Name System Security Extensions) zaštita.
  5. Omogućava konfiguraciju DNS zona i rekordima.

BIND je dostupan za različite operativne sisteme i koristi se širom sveta za različite primene, uključujući rukovanje domenima, upravljanje DNS infrastrukturom, i podršku za web hosting provajdere.

Važno je napomenuti da, iako je BIND veoma moćan, njegova konfiguracija i održavanje može biti kompleksno. Za manje zahteve, postoje i jednostavniji DNS serveri koji su lakši za postavljanje.

Instalacija i konfiguracija

Instalacija i konfiguracija BIND DNS servera može biti složena, ali evo osnovnih koraka koje treba preduzeti:

  1. Instalacija BIND-a: Prvo, morate instalirati BIND DNS server na vašem serveru. Koraci se razlikuju zavisno o distribuciji Linuxa koju koristite. Na primer, na Debian ili Ubuntu sistemu to možete uraditi sa sledećim komandama:

    sudo apt update
    sudo apt install bind9

    Na CentOS ili Red Hat sistemima, koristite yum:

    sudo yum install bind
  2. Konfiguracija BIND-a: Konfiguracija se vrši putem konfiguracionih fajlova. Osnovni konfiguracioni fajl se zove named.conf ili named.conf.options. Možete ga pronaći u direktorijumu /etc/bind/ (za Debian/Ubuntu) ili /etc/named/ (za CentOS/Red Hat).

    Ovde možete konfigurisati osnovne parametre kao što su zone, forwarders, listen adrese i mnoge druge opcije.

  3. Konfiguracija zona: Da biste mapirali domenska imena na IP adrese, morate konfigurisati DNS zone. Na primer, evo kako biste konfigurisali primarnu zonu za vašu domenu example.com:


    zone "example.com" {
        type master;
        file "/etc/bind/zones/db.example.com";
    };
    

    Ovde se koristi fajl db.example.com za definisanje rekorda u toj zoni.

  4. Kreiranje zona fajlova: Kreirajte fajlove zona za svaku definisanu zonu. Na primer, za zonu example.com, kreirajte fajl /etc/bind/zones/db.example.com sa odgovarajućim DNS rekordima.

    Primer fajla zone:

    $TTL 86400
    @   IN  SOA     ns1.example.com. admin.example.com. (
            2023102701 ; Serial
            3600        ; Refresh
            1800        ; Retry
            604800      ; Expire
            86400 )     ; Negative Cache TTL
    ;
    @       IN  NS  ns1.example.com.
    @       IN  NS  ns2.example.com.
    @       IN  A   192.168.1.100
    www     IN  A   192.168.1.101
    
  5. Testiranje i pokretanje BIND-a: Pre nego što pokrenete BIND, testirajte svoju konfiguraciju na greške:

    named-checkconf /etc/bind/named.conf
    named-checkzone example.com /etc/bind/zones/db.example.com

    Ako nema grešaka, pokrenite BIND:

    sudo systemctl start bind9 # Na Debian/Ubuntu
    sudo systemctl start named # Na CentOS/Red Hat
  6. Konfiguracija automatskog pokretanja: Da biste omogućili automatsko pokretanje BIND-a pri pokretanju sistema, izvršite sledeće komande:

    sudo systemctl enable bind9 # Na Debian/Ubuntu
    sudo systemctl enable named # Na CentOS/Red Hat

Ovo su osnovni koraci za instalaciju i konfiguraciju BIND DNS servera. Dalje, možete konfigurisati dodatne opcije kao što su sigurnosne postavke, tzv. "view-ovi" i mnoge druge. Važno je obratiti pažnju na bezbednost i nadogradnju BIND servera kako biste osigurali siguran i stabilan DNS sistem.

caching-only DNS

Da biste konfigurisali samo "caching-only" DNS server koristeći BIND, možete slediti sledeće korake:

  1. Instalacija BIND-a: Prvo instalirajte BIND DNS server kao što je opisano u prethodnom odgovoru.

  2. Konfiguracija BIND-a: Konfiguracija se vrši putem named.conf datoteke. Otvorite ovu datoteku u svom omiljenom tekstualnom uređivaču. Na Debian/Ubuntu sistemima, datoteka se obično nalazi u /etc/bind/named.conf, dok se na CentOS/Red Hat sistemima može nalaziti u /etc/named.conf.

  3. Konfiguracija osnovnih postavki: Postavite osnovne parametre za "caching-only" DNS server. Evo primera kako to može izgledati:

    options {
        directory "/var/cache/bind";
        recursion yes; // Dozvoli rekuzivne upite
        allow-query { any; }; // Dozvoli upite od svih
    };
    

    Ovde se konfiguriše direktorijum za kesiranje (cache) i dozvoljava se rekuzivno traženje koje će omogućiti da vaš DNS server traži od drugih DNS servera kad nema lokalno kesiranih informacija.

  4. Konfiguracija kesiranja (caching): Konfigurišite kesiranje sa dodatnim postavkama kao što su root DNS serveri. Ovako možete omogućiti vašem DNS serveru da zapamti češće korišćene informacije:

    zone "." {
        type hint;
        file "/etc/bind/db.root";
    };
    

    Kreirajte fajl /etc/bind/db.root i dodajte informacije o root DNS serverima u njemu. Ovaj fajl možete preuzeti sa ovde i sačuvati u pomenutom direktorijumu.

  5. Zabrana rekuzivnih upita sa drugih mreža: Kako biste ograničili pristup "caching-only" DNS serveru sa drugih mreža, možete dodati sledeće:

    acl localnet {
        192.168.0.0/16;
        10.0.0.0/8;
    };
    allow-recursion { localnet; };
    allow-query { localnet; };
    

    Ovo ograničava rekuzivne upite i upite samo na određenim lokalnim mrežama.

  6. Testiranje i pokretanje BIND-a: Testirajte svoju konfiguraciju i pokrenite BIND server kako je opisano u prethodnom odgovoru.

  7. Automatsko pokretanje: Omogućite automatsko pokretanje BIND-a pri pokretanju sistema kao što je opisano ranije.

Nakon ovih koraka, vaš DNS server će biti konfigurisan kao "caching-only" DNS server i odgovaraće na upite za kesirane informacije. Obratite pažnju na sigurnosne postavke kako biste osigurali da je vaš server bezbedan i da ne može biti iskorišćen za DNS amplifikacione napade.

Forwardovanja

Konfiguracija forwardovanja (ili DNS forwarding-a) u BIND DNS serveru omogućava da DNS upiti koje vaš server ne može rešiti lokalno budu prosleđeni drugom DNS serveru, obično DNS serveru vašeg provajdera ili nekom javnom DNS serveru. Ovo je korisno ako želite da koristite lokalni DNS server za kesiranje upita, ali da za stvarna DNS rešenja oslanjate na druge servere. Evo kako to možete konfigurisati:

  1. Otvorite konfiguracionu datoteku: Otvorite konfiguracionu datoteku vašeg BIND servera (obično /etc/bind/named.conf) u tekstualnom uređivaču. Ovo možete uraditi sa superuser privilegijama ili koristeći sudo:

    sudo nano /etc/bind/named.conf
  2. Definišite zone forwardovanja: Dodajte sledeće linije unutar bloka options { } u konfiguracionoj datoteci. Ovde definišete zone forwardovanja i servere na koje će se upiti encirptovati:

    forwarders {
        8.8.8.8;  // Prvi DNS server (možete koristiti Google DNS ili neki drugi)
        8.8.4.4;  // Drugi DNS server (opciono)
    };
    
    forward only;
    

    U gornjem primeru, koristimo Google DNS servere kao forwardere. Možete koristiti i druge javne DNS servere ili DNS servere vašeg provajdera.

  3. Omogućite forwardovanje upita: Postavite forward only; kako biste omogućili samo forwardovanje upita, bez lokalnog rezolvanja. Ovo znači da će BIND server proslediti sve upite serverima navedenim u forwarders bloku, umesto da pokušava da ih rešava lokalno.

  4. Zabrana rekuzivnih upita: Da biste sprečili DNS server da vrši rekuzivne upite i pretražuje čitavu DNS hijerarhiju, dodajte sledeće:

    recursion no;

    Ovim se zabranjuju rekuzivni upiti i vaš DNS server će samo forwardovati upite drugim DNS serverima.

  5. Sačuvajte i izađite: Sačuvajte izmene i zatvorite konfiguracionu datoteku.

  6. Ponovo pokrenite BIND server: Nakon konfigurisanja forwardovanja, ponovo pokrenite BIND server kako bi se primenile izmene:

    sudo systemctl restart bind9 # Na Debian/Ubuntu

    ili

    sudo systemctl restart named # Na CentOS/Red Hat
  7. Testiranje konfiguracije: Testirajte konfiguraciju tako što ćete uputiti DNS upite putem vašeg servera i proveriti da li se upiti encirptuju i prosleđuju forwarderima.

Nakon ovih koraka, vaš BIND DNS server će forwardovati upite drugim DNS serverima umesto da ih rešava lokalno. Ovo je korisno ako želite brže i efikasnije DNS rešenje, a takođe možete koristiti lokalni BIND server za kesiranje upita i ubrzanje odgovora.

Piping i redirekcija

 Piping (cevkanje) i redirekcija su osnovni koncepti u Linuxu i Unix-sličnim operativnim sistemima koji vam omogućavaju kontrolu ulaza i izlaza za operacije putem komandne linije. Ovi koncepti se koriste za efikasno manipulisanje, obradu i upravljanje podacima u komandnoj liniji. Evo objašnjenja cevkanja i redirekcije:

Cevkanje (|): Cevkanje vam omogućava da uzmete izlaz jedne komande i koristite ga kao ulaz za drugu komandu. Karakter | se koristi za stvaranje cevke između komandi. To je moćan način za kombinovanje više komandi i izvođenje složenih zadataka.

Na primer:

komanda1 | komanda2

U ovom primeru, izlaz komande1 se koristi kao ulaz za komandu2. Možete nizati više komandi kako biste stvorili niz operacija. Svaka komanda obrađuje podatke sekvencijalno.

Redirekcija: Redirekcija je proces kontrole ulaznih i izlaznih tokova za komande. Postoje različiti simboli koji se koriste za redirekciju:

  • <: Redirektuje ulaz iz datoteke. Na primer, komanda < ulaz.txt čita podatke iz datoteke ulaz.txt kao ulaz za komandu.

  • >: Redirektuje izlaz u datoteku, prebrisavajući njen sadržaj. Na primer, komanda > izlaz.txt piše izlaz komande u datoteku izlaz.txt, prebrisavajući njen prethodni sadržaj.

  • >>: Redirektuje izlaz u datoteku, dodajući ga njenom sadržaju. Na primer, komanda >> izlaz.txt dodaje izlaz komande na kraj datoteke izlaz.txt.

  • 2>: Redirektuje izlaz grešaka (stderr) u datoteku. Na primer, komanda 2> greske.txt beleži poruke o greškama iz komande i upisuje ih u datoteku greske.txt.

  • 2>>: Redirektuje izlaz grešaka (stderr) u datoteku, dodajući ga njenom sadržaju.

  • &> ili 2>&1: Redirektuje i standardni izlaz (stdout) i izlaz grešaka (stderr) na isto mesto. Na primer, komanda &> izlaz.txt šalje i stdout i stderr u datoteku izlaz.txt.

  • |: Kao što smo već razgovarali, simbol cevke (|) povezuje izlaz jedne komande sa ulazom druge komande.

Ovi simboli za redirekciju vam omogućavaju upravljanje izvorima ulaza i odredištima izlaza za komande, omogućavajući vam da skladištite, obrađujete i analizirate podatke na različite načine.

Cevkanje i redirekcija su esencijalni za automatizaciju zadataka, obradu velikih skupova podataka i kreiranje složenih radnih tokova na Linux komandnoj liniji. Pružaju fleksibilnost i kontrolu prilikom rada sa tekstom i podacima putem komandi i skripti.

STDOUT

Standardni izlaz (engl. Standard Output), skraćeno stdout, je osnovni tok podataka koji se koristi za ispisivanje izlaznih informacija iz komandi ili programa u Linux i Unix okruženjima. Ovo je uobičajeni izlazni kanal koji se koristi za prikazivanje rezultata izvršenih komandi na ekranu korisnika.

Na primer, kada izvršite komandu kao što je ls za listanje datoteka u trenutnom direktorijumu, izlaz se šalje na standardni izlaz, koji se obično prikazuje na ekranu kako biste videli listu datoteka i direktorijuma.

Osim prikazivanja na ekranu, stdout može biti preusmeren i redirektovan na različite načine. Na primer, možete ga preusmeriti u datoteku pomoću operatora >, >> ili 2>&1 za zajednički tretman standardnog izlaza (stdout) i standardnog izlaza grešaka (stderr).

Standardni izlaz je važan za rad sa komandama i skriptama u Linuxu jer omogućava komunikaciju između komandi, čime se omogućava da rezultati jedne komande postanu ulaz za drugu. Ovo čini Linux komandnu liniju izuzetno svestranom i moćnom za automatizaciju i manipulaciju podacima.

STDERR

Standardni izlaz za greške (engl. Standard Error), skraćeno STDERR, je drugi osnovni tok podataka koji se koristi za ispisivanje grešaka ili izlaznih informacija koje ukazuju na probleme tokom izvršenja komandi ili programa u Linux i Unix okruženjima.

Kada se tok greške STDERR koristi, greške ili obaveštenja o problemima se odvajaju od redovnog izlaza (stdout), omogućavajući tako da se greške i standardni izlaz jasno razlikuju. To je korisno za praćenje i ispravljanje grešaka prilikom izvršenja komandi ili skripti.

Na primer, ako pokušate da otvorite nepostojeću datoteku u komandnoj liniji, poruka o grešci će biti ispisana na toku STDERR kako biste bili obavešteni da datoteka ne postoji.

Standardni izlaz za greške takođe može biti preusmeren i redirektovan na sličan način kao i standardni izlaz (stdout), koristeći operator 2> ili 2>> za preusmeravanje grešaka u datoteku.

Korišćenje STDERR je ključno za debagovanje i praćenje izvršenja komandi i programa, omogućavajući korisnicima da identifikuju i rešavaju probleme koji se javljaju tokom upotrebe Linux i Unix sistema.

STDIN

Standardni unos (STDIN) je jedan od osnovnih tokova podataka u Linux i Unix okruženjima. STDIN služi za unos podataka sa tastature ili drugih izvora u komandnu liniju, komande ili programe koji se izvršavaju u terminalu.

STDIN omogućava korisnicima da unesu tekstualne podatke ili druge vrste ulaza direktno u komande ili skripte. Na primer, možete koristiti STDIN za unos teksta u program koji očekuje unos podataka ili za čitanje podataka iz datoteka pomoću određenih komandi.

STDIN se obično koristi u kombinaciji sa operatorom za preusmeravanje < kako bi se unos izvršavao iz datoteke umesto sa tastature. Na primer, komanda cat < datoteka.txt koristi STDIN za čitanje sadržaja datoteke "datoteka.txt" i prikazivanje tog sadržaja na ekranu.

STDIN, zajedno sa STDOUT (standardni izlaz) i STDERR (standardni izlaz za greške), čini osnovni mehanizam za unos, izlaz i praćenje komandi i programa u Linux i Unix sistemima.


Tekstualni editori

 Linux ima mnogo tekstualnih editora dostupnih korisnicima za uređivanje tekstualnih datoteka. Evo nekoliko popularnih tekstualnih editora u Linux-u:

  1. Vi/Vim:

    • Vi je stariji tekstualni editor, dok je Vim (Vi Improved) modernizovana verzija sa naprednim mogućnostima.
    • Vim je možda najmoćniji tekstualni editor i često se koristi na serverima.
    • Za pokretanje Vi, koristi se komanda vi, dok za Vim koristite vim.
  2. Emacs:

    • Emacs je još jedan moćan tekstualni editor sa mnogo proširenja i funkcionalnosti.
    • Za pokretanje Emacsa, koristi se komanda emacs.
  3. Nano:

    • Nano je jednostavan i lak za korišćenje tekstualni editor.
    • Za pokretanje Nano, koristi se komanda nano.
  4. Gedit:

    • Gedit je popularan tekstualni editor za Linux desktop okruženja kao što su GNOME.
    • Dostupan je sa grafičkim korisničkim interfejsom, ali može se koristiti i iz terminala sa komandom gedit.
  5. Sublime Text:

    • Sublime Text je komercijalni editor sa besplatnom evaluacionom verzijom.
    • Ima bogate mogućnosti za uređivanje koda i tekstualnih datoteka.
    • Može se instalirati i koristiti na Linux sistemu.
  6. Atom:

    • Atom je besplatan i open-source tekstualni editor razvijen od strane GitHub-a.
    • Dizajniran je za programere i ima mnogo proširenja dostupnih.
  7. Visual Studio Code:

    • Visual Studio Code (VSCode) je još jedan popularan besplatan i open-source tekstualni editor koji je razvila Microsoft.
    • Ima mnogo proširenja i podržava mnoge programske jezike.
  8. Kate:

    • Kate je tekstualni editor za KDE desktop okruženje.
    • Dostupan je sa grafičkim korisničkim interfejsom, ali se može koristiti i iz terminala sa komandom kate.

Ovo su samo neki od mnogih tekstualnih editora dostupnih u Linux-u. Izbor editora zavisi od vaših potreba i ličnih preferencija.

gluster

gluster je komandna linija za upravljanje i konfigurisanje GlusterFS klastera. GlusterFS je distribuirani sistem za upravljanje fajlovima koji omogućava skladištenje podataka na više servera i njihovu sinhronizaciju kako bi obezbedili visoku dostupnost i skalabilnost.

Evo nekoliko osnovnih komandi za rad sa GlusterFS klasterom:

  1. Kreiranje GlusterFS Volumena:

    Prilikom kreiranja GlusterFS volumena, koristite gluster volume create komandu. Na primer:

    sudo gluster volume create myvolume replica 2 transport tcp server1:/data server2:/data

    Ova komanda kreira volumen nazvan "myvolume" sa replikacijom faktora 2 i koristi TCP za prenos podataka između servera "server1" i "server2".

  2. Startovanje GlusterFS Volumena:

    Kada kreirate volumen, možete ga pokrenuti sa gluster volume start komandom:

    sudo gluster volume start myvolume
  3. Prikazivanje Statusa Volumena:

    Da biste videli status volumena, koristite gluster volume info komandu:

    sudo gluster volume info
  4. Dodavanje Članova Volumenu:

    Da biste dodali članove klastera u postojeći volumen, koristite gluster volume add-brick komandu:

    sudo gluster volume add-brick myvolume replica 2 server3:/data
  5. Proširivanje Volumena:

    Možete proširiti volumen dodavanjem više članova ili replika. Na primer, da biste dodali još jedan član u volumen:

    sudo gluster volume add-brick myvolume replica 3 server4:/data
  6. Pregledanje Statusa Volumena:

    Pomoću gluster volume status možete pregledati trenutni status volumena:

    sudo gluster volume status

Ovo su osnovne komande za upravljanje GlusterFS klasterom. Za više informacija i napredniju konfiguraciju, možete proučiti zvaničnu dokumentaciju GlusterFS-a i koristiti man stranice za pojedinačne komande (npr. man gluster).

GlusterFS

GlusterFS je open source klaster fajl sistem koji omogućava kreiranje distribuiranih i skalabilnih sistema za skladištenje podataka. Evo koraka za instalaciju i osnovnu konfiguraciju GlusterFS-a na Linux sistemu:

Napomena: Prvo se pobrinite da su svi članovi klastera dostupni i da su ispravno povezani u mreži. Takođe, instalacija GlusterFS-a na svakom članu klastera je obavezna.

  1. Instalacija GlusterFS-a:

    Koristite komandu za instalaciju na svim članovima klastera. Na primer, za Ubuntu:

    sudo apt-get install glusterfs-server

    Za CentOS / RHEL:

    sudo yum install centos-release-gluster
    sudo yum install glusterfs-server

    Instalirajte GlusterFS server na svim članovima klastera.

  2. Pokretanje GlusterFS servera:

    Aktivirajte i pokrenite GlusterFS server servis:

    sudo systemctl enable glusterd
    sudo systemctl start glusterd

    Ovo će omogućiti GlusterFS server da se pokrene pri svakom pokretanju sistema.

  3. Provera statusa GlusterFS servera:

    Proverite status GlusterFS servera na svakom članu klastera:

    sudo gluster peer status

    Trebali biste videti listu članova klastera i njihov status.

  4. Dodavanje članova klastera:

    Da biste dodali nove članove u klaster, koristite komandu gluster peer probe na svakom postojećem članu kako biste ih povezali sa novim članom. Na primer:

    sudo gluster peer probe new-server

    Zamijenite new-server sa imenom ili IP adresom novog člana.

  5. Kreiranje GlusterFS Volume:

    Sledeći korak je kreiranje GlusterFS volumena. To možete učiniti na jednom od članova klastera. Na primer, za kreiranje volumena pod nazivom "myvolume":

    sudo gluster volume create myvolume replica 2 transport tcp server1:/path/to/data server2:/path/to/data

    Ovde se kreira replikacioni volumen sa 2 primjerka (servera). Podesite staze ka podacima na odgovarajućim članovima klastera.

  6. Aktiviranje GlusterFS Volume:

    Aktivirajte kreirani volumen:

    sudo gluster volume start myvolume
  7. Podešavanje firewall pravila (opciono):

    Ako koristite firewall na članovima klastera, omogućite odgovarajuće portove za GlusterFS komunikaciju. Preporučuje se korišćenje portova 24007 i 24008.

  8. Montiranje GlusterFS Volumena:

    Na svim članovima klastera gde želite pristupiti GlusterFS volumenu, montirajte ga:

    sudo mount -t glusterfs server1:/myvolume /path/to/mount/point

    Ovde zamijenite server1 sa odgovarajućim serverom i myvolume sa nazivom vašeg volumena.

  9. Testiranje i upravljanje:

    Sada možete testirati GlusterFS volumen i upravljati njime prema potrebama.

Nakon ovih osnovnih koraka, vaš GlusterFS klaster bi trebao biti spreman za upotrebu. Sledite GlusterFS dokumentaciju za detaljniju konfiguraciju i napredne opcije.

pca

 pca (Pacemaker Cluster Automation) je komandna linija za automatizaciju konfiguracije i upravljanja Pacemaker-om, alatom za upravljanje visoko dostupnim klasterima u Linux okruženju. pca olakšava postavljanje i konfigurisanje klastera tako da korisnicima omogući da brže i efikasnije izgrade visoko dostupne sisteme. Evo nekoliko osnovnih komandi i primera za upotrebu pca:

  1. Inicijalna konfiguracija:

    Prvo, inicijalizujte pca sa osnovnim postavkama za vaš klaster:

    pca setup pca

    Ovo će stvoriti osnovnu strukturu direktorijuma i konfiguracijskih datoteka.

  2. Konfiguracija klastera:

    Da biste konfigurisali klaster, koristite komandu pca configure:

    pca configure --name mycluster

    Ovde postavljate ime klastera na "mycluster", ali možete prilagoditi i druge parametre.

  3. Dodavanje članova klastera:

    Dodajte članove klastera pomoću komande pca add-node:

    pca add-node node1.example.com pca add-node node2.example.com

    Ovo dodaje članove klastera sa imenima "node1.example.com" i "node2.example.com".

  4. Konfiguracija resursa:

    Da biste konfigurisali resurse (servise) u klasteru, koristite komandu pca resource create. Na primer, za Apache web server:

    pca resource create apache ocf:heartbeat:apache

    Ovo definira Apache kao visoko dostupan resurs.

  5. Konfiguracija pravila:

    Postavite pravila za upravljanje resursima i ponašanjem klastera. Ovo može uključivati raspoređivanje resursa i prioritete.

  6. Aktiviranje konfiguracije:

    Aktivirajte konfiguraciju klastera pomoću pca commit komande:

    pca commit
  7. Praćenje statusa klastera:

    Pogledajte trenutni status klastera sa pca status:

    pca status

    Ovo prikazuje informacije o članovima klastera i resursima.

  8. Upravljanje i održavanje:

    PCA omogućava i druge komande za dodavanje i brisanje članova, resursa i promenu konfiguracije.

Ovo su osnovne komande i koraci za upotrebu pca. Svaka PCA instalacija i konfiguracija će biti specifična za vaše potrebe, pa se preporučuje da proučite dokumentaciju i koristite PCA zajednicu za dalju podršku i informacije.


HA cluster

 HA cluster (High Availability cluster) predstavlja grupu međusobno povezanih računara ili servera koji rade zajedno kako bi obezbedili neprekidan rad ključnih aplikacija i servisa. Osnovni cilj HA clustera je minimiziranje vremena nedostupnosti i pružanje otpornosti na kvarove u slučaju neispravnosti hardvera ili softvera. Evo nekoliko ključnih koncepata i komponenti HA clustera:

  1. Čvorovi klastera: Ovo su pojedinačni serveri ili računari koji čine HA klaster. Oni zajedno rade kako bi pružili redundancu i mogućnosti prelaska na rezervne komponente.

  2. Komunikacija "heartbeat": Čvorovi klastera komuniciraju međusobno putem posebne mrežne veze ili "heartbeat". Ova komunikacija je ključna za praćenje stanja čvorova i otkrivanje kvarova.

  3. Upravljač resursima: Upravljač resursima odgovoran je za praćenje dostupnosti ključnih resursa i servisa. Može premještati resurse između čvorova prema potrebi.

  4. Grupe resursa: Resursi (kao što su aplikacije, baze podataka i IP adrese) organizovani su u grupe resursa. Ove grupe se upravljaju kao jedna cjelina, što olakšava premještanje i upravljanje resursima unutar klastera.

  5. Kvorum: Kvorum je mehanizam glasanja koji se koristi za određivanje da li klaster ima većinu zdravih čvorova. Ako čvor izgubi komunikaciju s klasterom ili se pokvari, preostali čvorovi moraju postići kvorum kako bi preduzeli akciju.

  6. Fencing: "Fencing" je mehanizam koji izolira neispravne čvorove od klastera kako bi se spriječila mogućnost oštećenja podataka ili scenarija "split-brain". Česti načini "fencing-a" uključuju isključivanje napajanja, prekidanje mrežne veze ili druge metode koje sprečavaju da neispravan čvor ometa rad klastera.

  7. Prelazak na rezervne komponente: Kada čvor u klasteru zakaže, upravljač resursima može pokrenuti postupak prelaska na rezervne komponente, što podrazumijeva premještanje resursa i servisa na zdrav čvor. Na ovaj način se obezbeđuje minimalno ometanje rada servisa.

  8. Balansiranje opterećenja: Neki HA klasteri uključuju balansiranje opterećenja kako bi rasporedili dolazni mrežni saobraćaj na više čvorova, poboljšavajući performanse i redundanciju.

  9. Virtualna IP adresa (VIP): Virtualna IP adresa je IP adresa koja može biti dodijeljena bilo kojem čvoru u klasteru. "Plovi" ili "migrira" između čvorova kako bi se osiguralo da mrežni saobraćaj uvijek ide ka aktivnom čvoru.

  10. Dijeljeno skladište: Mnogi HA klasteri zahtijevaju dijeljene uređaje za skladištenje podataka, kao što su SAN (Storage Area Network) ili NAS (Network Attached Storage), kako bi se održala dosljednost podataka između čvorova.

  11. Implementacija softvera ili hardvera: HA klasteri se mogu implementirati pomoću softverskih rješenja, poput Pacemakera i Corosynca, ili uz pomoć specijalizovanih hardverskih uređaja dizajniranih za visoku dostupnost.

  12. Testiranje prelaska na rezervne komponente: Redovno testiranje i simulacija scenarija prelaska na rezervne komponente od suštinskog značaja kako bi se osiguralo da klaster radi kako se očekuje tokom stvarnih kvarova.

HA klasteri se često koriste u poslovnim okruženjima za kritične aplikacije, uključujući baze podataka, web servere, serverske servise za e-poštu i mnoge druge. Pružaju redundancu i osiguravaju da servisi ostanu dostupni, čak i kada pojedinačni serveri ili komponente zakažu.

Šta je pacemaker?

Pacemaker je open-source softver za upravljanje klasterima i visokom dostupnošću (HA - High Availability) na Linux operativnim sistemima. Ova tehnologija omogućava konfigurisanje i upravljanje klasterom od više računara kako bi se postigla visoka dostupnost i pouzdanost za kritične aplikacije.

Glavne karakteristike Pacemaker-a uključuju:

  1. Automatsko otkrivanje kvara: Pacemaker može detektovati probleme sa čvorovima u klasteru i premeštati resurse kako bi osigurao da aplikacije i usluge ostanu dostupne.

  2. Kontrola i upravljanje: Administratori mogu konfigurisati Pacemaker da upravlja resursima, prateći njihovo stanje i automatski ih pokretati ili zaustavljati kada je to potrebno.

  3. Prilagodljivost: Pacemaker je prilagodljiv i omogućava različite scenarije visoke dostupnosti, uključujući aktivno-passivni i aktivno-aktivni rad.

  4. Integracija sa drugim alatima: Može se integrisati sa drugim alatima za upravljanje klasterima, kao što su Corosync, DRBD, i drugi.

Pacemaker se često koristi za postizanje visoke dostupnosti klastera za web i baze podataka servere, razne poslovne aplikacije i druge kritične sisteme. Omogućava organizacijama da obezbede neprekidnost poslovanja i smanje vreme prestanka rada usled hardverskih ili softverskih problema.

Pacemaker je deo "Linux-HA" projekta i široko je dostupan na različitim Linux distribucijama.

Instalacija i konfiguracija

Instalacija i konfiguracija HA (High Availability) clustera može varirati zavisno o softverskim alatima koje koristite i operativnom sistemu. Evo osnovnih koraka za instalaciju HA clustera koristeći popularni alat Pacemaker i operativni sistem CentOS:

Napomena: Preporučuje se da instalaciju i konfiguraciju HA clustera vrši iskusna osoba sa znanjem Linux administracije.

  1. Instalacija CentOS: Prvo, instalirajte CentOS na svakom čvoru u klasteru. Obezbedite da CentOS bude instaliran sa minimalnom konfiguracijom kako biste imali potpunu kontrolu nad postavkama.

  2. Postavljanje Mreže: Konfigurišite mrežu tako da čvorovi mogu komunicirati međusobno putem privatne mreže (heartbeat mreže). Ovo se može postići podešavanjem statičkih IP adresa i hostname-ova.

  3. Instalacija Potrebnih Paketa: Instalirajte potrebne pakete na oba čvora. To uključuje alate poput pacemaker, corosync, pcs, i fence-agents. To možete učiniti koristeći yum:

    sudo yum install pacemaker corosync pcs fence-agents
  4. Konfiguracija Corosync i Pacemaker: Konfigurišite Corosync i Pacemaker kako bi radili zajedno. Podesite Corosync za komunikaciju između čvorova i konfigurišite Pacemaker za upravljanje resursima. Konfiguracione datoteke se obično nalaze u /etc/corosync/ i /etc/pacemaker/ direktorijumima.

  5. Startovanje Servisa: Pokrenite Corosync i Pacemaker servise na oba čvora i omogućite im da se automatski pokreću pri bootovanju:

    sudo systemctl enable corosync pacemaker
    sudo systemctl start corosync pacemaker
  6. Konfiguracija Resursa: Konfigurišite resurse koje želite upravljati u HA clusteru, kao što su IP adrese, virtuelni hostname-ovi, web serveri itd. Ovo se obično radi pomoću pcs alata. Na primer, za postavljanje virtuelne IP adrese:

    sudo pcs resource create virtual_ip ocf:heartbeat:IPaddr2 ip=192.168.1.100 cidr_netmask=24 op monitor interval=30s
  7. Konfiguracija Constraints: Definišite pravila (constraints) kako bi se odredilo kako će resursi biti raspoređeni i migirani između čvorova u slučaju kvara. Na primer, da bi se osiguralo da virtuelna IP adresa uvijek ide sa primarnim čvorom:

    sudo pcs constraint colocation add virtual_ip with primary_node
  8. Testiranje i Praćenje: Testirajte funkcionalnost HA clustera tako što ćete simulirati kvarove i provjeriti da li resursi automatski migrišu na rezervne čvorove. Pratite stanje clustera pomoću pcs status komande.

  9. Dokumentacija: Vodite detaljnu dokumentaciju o postavkama, konfiguraciji i pravilima HA clustera kako biste olakšali buduće održavanje.


Konfiguracija RAID-a

 RAID (Redundant Array of Independent Disks) je tehnologija za povezivanje više fizičkih diskova u jedan logički disk radi poboljšane pouzdanosti, performansi ili obe stvari. Postoji nekoliko različitih nivoa RAID konfiguracija (RAID 0, RAID 1, RAID 5, RAID 10, itd.), svaki sa svojim karakteristikama i upotrebom.

Evo osnovnih koraka za konfigurisanje RAID na Linux sistemu, uzimajući u obzir da imate više fizičkih diskova:

  1. Instalacija potrebnih alatki:

    Prvo, uverite se da imate RAID alate instalirane na svom Linux sistemu. Najčešće korišćeni alat za RAID konfiguraciju je mdadm. Instalirajte ga ako već nije prisutan:

    sudo apt-get install mdadm # Na Debian i Ubuntu
    sudo yum install mdadm # Na CentOS i RHEL
  2. Fizički diskovi:

    Povežite i inicijalizujte fizičke diskove koje želite koristiti za RAID. Na primer, ako imate dva diska /dev/sdX i /dev/sdY, formatirajte ih i pripremite za RAID.

  3. Konfiguracija RAID nivoa:

    Odaberite željeni RAID nivo, na primer RAID 1 za ogledalo ili RAID 5 za stripovanje sa paritetom. Koristite mdadm za kreiranje RAID uređaja i nivoa. Na primer, za RAID 1:

    sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdX /dev/sdY

    Prilagodite opcije (/dev/md0, --level, --raid-devices) prema vašim potrebama.

  4. Formatiranje RAID uređaja:

    Nakon konfiguracije RAID uređaja, morate ga formatirati fajl sistemom po izboru. Na primer, za ext4:

    sudo mkfs.ext4 /dev/md0
  5. Montiranje RAID uređaja:

    Kreirajte direktorijum gde ćete montirati RAID uređaj i montirajte ga:

    sudo mkdir /mnt/raid sudo mount /dev/md0 /mnt/raid
  6. Automatsko montiranje pri podizanju sistema:

    Da biste automatski montirali RAID uređaj pri svakom podizanju sistema, dodajte unos u /etc/fstab. Otvorite /etc/fstab datoteku u uređivaču teksta i dodajte liniju za montiranje:

    /dev/md0 /mnt/raid ext4 defaults 0 0

    Prilagodite putanje i opcije prema vašoj konfiguraciji.

  7. Provera statusa RAID-a:

    Da biste proverili status RAID uređaja, koristite mdadm komande, na primer:

    sudo mdadm --detail /dev/md0

    Ova komanda će prikazati informacije o statusu i stanju RAID uređaja.

Ovo su osnovni koraci za konfiguraciju softverskog RAID-a na Linux sistemu pomoću mdadm alata. Imajte na umu da će se koraci razlikovati u zavisnosti od specifične konfiguracije i potreba. Pre primene RAID-a na stvarnom sistemu, obavezno napravite sigurnosne kopije podataka i detaljno proučite dokumentaciju RAID sistema i alata koje koristite.

blkid

 blkid je komanda koja se koristi za prikazivanje informacija o blok uređajima, uključujući informacije o tipu fajl sistema i UUID (univerzalni jedinstveni identifikator) uređaja. Ova komanda je korisna za identifikaciju i upravljanje blok uređajima na Linux sistemu.

Osnovni oblik komande blkid je:

blkid [OPTIONS] [DEVICE]

Evo nekoliko često korišćenih opcija i primera:

  1. Prikazivanje informacija o svim blok uređajima:

    blkid

    Ova komanda će prikazati informacije o svim blok uređajima na sistemu, uključujući UUID, tip fajl sistema, i druge detalje.

  2. Prikazivanje informacija o određenom uređaju:

    blkid /dev/sdX

    Zamenite /dev/sdX sa stvarnom putanjom do blok uređaja (na primer, /dev/sda) kako biste dobili informacije o tom uređaju.

  3. Prikazivanje samo UUID-a određenog uređaja:

    blkid -s UUID /dev/sdX

    Ova komanda će prikazati samo UUID određenog uređaja.

  4. Prikazivanje informacija u određenom formatu (JSON, YAML, ili druge):

    blkid -o FORMAT /dev/sdX

    Zamenite FORMAT sa željenim formatom, kao što su json, yaml, udev, i druge. Ovo je korisno kada želite da obradite informacije o uređaju u određenom formatu.

Komanda blkid je korisna za identifikaciju blok uređaja i njihovih karakteristika, posebno kada radite sa fajl sistemima, particionisanjem ili konfiguracijom uređaja na Linux sistemu.

ausearch

 ausearch je komanda koja se koristi za pretragu i analizu log fajlova za upravljanje bezbednošću (audit log fajlova) na Linux sistemu. Ovi audit log fajlovi čuvaju informacije o bezbednosnim događajima na sistemu, kao što su pokušaji prijavljivanja, promene pristupa fajlovima ili drugi događaji koji su zabeleženi u okviru sistema za praćenje bezbednosti. ausearch vam omogućava da pretražujete i filtrirate ove logove kako biste dobili uvid u bezbednosne događaje na sistemu.

Osnovni oblik komande ausearch je:

ausearch [OPTIONS]

Evo nekoliko često korišćenih opcija i primera:

  1. Pretraga po događajima za određenog korisnika:

    ausearch -u username

    Ova komanda će prikazati sve bezbednosne događaje povezane sa korisnikom čije korisničko ime je username.

  2. Pretraga po vremenskom opsegu:

    ausearch --start recent-time --end now

    Ovde zamenite recent-time sa željenim vremenskim opsegom, na primer, yesterday za događaje od juče do danas. Ova komanda prikazuje događaje u određenom vremenskom opsegu.

  3. Pretraga po tipu događaja:

    ausearch -m TYPE

    Zamenite TYPE sa željenim tipom događaja, na primer, login, file, ili user. Ova komanda prikazuje događaje samo za odabrani tip.

  4. Pretraga po vlasniku fajla:

    ausearch -f /path/to/file

    Ova komanda prikazuje sve događaje koji se odnose na određeni fajl na putanji /path/to/file.

  5. Pretraga po ID broju događaja:

    ausearch --start recent-time --end now --id event-id

    Ovde zamenite event-id sa tačnim ID brojem događaja koji vas interesuje.

  6. Pretraga po rezultatu događaja (uspeh ili neuspeh):

    ausearch -sv success

    Ova komanda prikazuje samo događaje sa određenim rezultatom, kao što je "success" ili "failed".

Opcioni argumenti komande ausearch se mogu kombinovati kako biste suzili pretragu na specifične događaje koji vas zanimaju. Ovo je korisno za analizu bezbednosnih incidenata ili praćenje aktivnosti na sistemu.

Napomena: Kako bi se koristila ausearch, korisnik obično treba da ima odgovarajuće privilegije (na primer, root privilegije) jer audit log fajlovi sadrže osetljive informacije o bezbednosti sistema.

chgrp

 chgrp je Linux komanda koja se koristi za promenu vlasnika grupe za datoteke ili direktorijume. Ova komanda omogućava promenu grupe vlasnika resursa na sistemu, a koristi se u kombinaciji sa drugim komandama poput chown kako bi se kontrolisala prava pristupa fajlovima i direktorijumima.

Osnovni oblik komande chgrp je:

chgrp [OPTIONS] NOVA_GRUPA FILE
  • OPTIONS: Opcioni argumenti za preciznije podešavanje ponašanja komande.
  • NOVA_GRUPA: Ime nove grupe koju želite da dodelite fajlu ili direktorijumu.
  • FILE: Ime fajla ili direktorijuma čijem vlasniku želite da promenite grupu.

Primeri korišćenja chgrp komande:

  1. Promena grupe vlasnika za fajl:

    chgrp developers file.txt

    Ova komanda će promeniti vlasnika grupe za file.txt na grupu developers.

  2. Promena grupe vlasnika za direktorijum i sve njegove sadržaje rekurzivno:

    chgrp -R staff /var/project

    Opciona -R znači da će komanda rekurzivno promeniti vlasnika grupe za /var/project i sve njegove fajlove i poddirektorijume.

  3. Prikazivanje promena bez primene:

    Možete koristiti -c opciju kako biste prikazali promene koje će se desiti, ali bez njihove primene:

    chgrp -c developers file.txt

    Ova komanda će prikazati promene koje će se desiti ako se izvrši, ali neće ih primeniti.

  4. Promena grupe za više fajlova:

    Možete specificirati više fajlova koje želite da promenite:

    chgrp hr file1.txt file2.txt file3.txt

    Ova komanda će promeniti vlasnika grupe za sve navedene fajlove na grupu hr.

chgrp komanda je korisna za administratore sistema koji žele da prilagode prava pristupa fajlovima i direktorijumima tako da određene grupe korisnika imaju odgovarajuće privilegije. Obratite pažnju da će upotreba ove komande zahtevati odgovarajuće privilegije, kao što su root privilegije, za promenu grupa vlasnika.

restorecon

 restorecon je Linux komanda koja se koristi za resetovanje konteksta sigurnosti (security context) fajlova i direktorijuma na njihove podrazumevane vrednosti. Ova komanda se obično koristi u okviru Security-Enhanced Linux (SELinux) sistema kako bi se povratili konteksti sigurnosti fajlova na podrazumevane vrednosti. SELinux je sigurnosni mehanizam koji pruža dodatnu kontrolu nad pristupom resursima na Linux sistemu.

Osnovna svrha restorecon komande je vraćanje konteksta sigurnosti fajlova ili direktorijuma na njihove podrazumevane vrednosti koje su definisane politikom SELinux-a. Ovo se često koristi nakon što su fajlovi ili direktorijumi bili izloženi nekim operacijama koje su ih izmenile, kao što su kopiranje, premeštanje, ili promena prava pristupa.

Primeri korišćenja restorecon komande:

  1. Povrat konteksta sigurnosti za određeni fajl:

    restorecon example.txt

    Ova komanda će vratiti kontekst sigurnosti za example.txt na podrazumevane vrednosti definisane u SELinux politici.

  2. Povrat konteksta sigurnosti za direktorijum i sve njegove fajlove rekurzivno:

    restorecon -R /var/www/html

    Ovo će rekurzivno primeniti restorecon na direktorijum /var/www/html i sve fajlove i poddirektorijume unutar njega.

  3. Prikazivanje promena konteksta sigurnosti (bez primene):

    Da biste videli koje promene bi restorecon izvršio, koristite -n opciju za simulaciju:

    restorecon -n -v -R /var/www/html

    Ova komanda će prikazati promene konteksta sigurnosti koje bi se desile, ali neće ih primeniti.

restorecon je korisna komanda za administratore sistema koji upravljaju sistemima sa SELinux-om i žele osigurati da se konteksti sigurnosti održavaju u skladu sa sigurnosnim politikama. Obratite pažnju da će upotreba ove komande zahtevati odgovarajuće privilegije, kao što su root privilegije, jer se konteksti sigurnosti menjaju na nivou sistema.

chcon

 chcon je komanda koja se koristi za promenu konteksta sigurnosti fajlova ili direktorijuma na Linux sistemu. Kontekst sigurnosti se koristi za kontrolu pristupa fajlovima i resursima od strane SELinux-a (Security-Enhanced Linux). Ova komanda je posebno korisna ako koristite SELinux i želite promeniti nivo pristupa ili oznake za fajlove i direktorijume.

Primeri korišćenja chcon komande:

  1. Promena konteksta sigurnosti za fajl:

    Da biste promenili kontekst sigurnosti za određeni fajl (na primer, example.txt), koristite sledeću komandu:

    chcon context_type example.txt

    Ovde context_type predstavlja novi kontekst sigurnosti koji želite dodeliti fajlu. Na primer:

    chcon user_u:object_r:httpd_sys_content_t example.txt

    Ovo postavlja kontekst sigurnosti za example.txt na httpd_sys_content_t koji je često povezan sa Apache web serverom.

  2. Rekurzivna promena konteksta sigurnosti za direktorijum:

    Ako želite promeniti kontekst sigurnosti za direktorijum (na primer, /var/www/html) i sve fajlove unutar njega, koristite -R opciju za rekurzivno delovanje:

    chcon -R context_type /var/www/html
  3. Prikazivanje trenutnog konteksta sigurnosti za fajl ili direktorijum:

    Da biste videli trenutni kontekst sigurnosti za određeni fajl ili direktorijum, koristite -v opciju za prikaz detalja:

    chcon -v example.txt

    Ova komanda će vam prikazati trenutni kontekst sigurnosti za example.txt.

chcon komanda je korisna za administratore sistema koji rade sa SELinux-om i žele da postave i upravljaju pravilima sigurnosti za fajlove i direktorijume na sistemu. Obratite pažnju na tačne vrednosti konteksta sigurnosti koje treba koristiti za vaše specifične potrebe i aplikacije.

chage

 chage komanda se koristi za postavljanje i promenu informacija o starosti lozinke korisnika na Linux sistemu. Ove informacije obuhvataju datume isteka lozinke i minimalne/maximalne starosti lozinke, što pomaže u upravljanju sigurnošću lozinki. Pored toga, chage takođe omogućava korisnicima da promene svoje lozinke i postavke starosti lozinke.

Evo nekoliko primera kako koristiti chage komandu:

  1. Prikazivanje informacija o starosti lozinke za određenog korisnika:

    Da biste prikazali informacije o starosti lozinke za određenog korisnika (na primer, "john"), možete koristiti sledeću komandu:

    chage -l john

    Ovo će prikazati trenutne informacije o starosti lozinke za korisnika "john".

  2. Postavljanje datuma isteka lozinke za korisnika:

    Da biste postavili datum isteka lozinke za korisnika (na primer, "jane") na određeni datum (u ovom slučaju, 2023-12-31):

    sudo chage -E 2023-12-31 jane
  3. Postavljanje minimalne i maksimalne starosti lozinke:

    Postavljanje minimalne i maksimalne starosti lozinke može ograničiti kada korisnik može promeniti svoju lozinku i koliko dugo je lozinka važeća. Na primer, postavljanje minimalne starosti od 7 dana i maksimalne starosti od 90 dana za korisnika "alice":

    sudo chage -m 7 -M 90 alice
  4. Zabrana korisnika da promeni svoju lozinku:

    Ako želite onemogućiti korisniku (na primer, "guest") da promeni svoju lozinku:

    sudo chage -E -1 guest
  5. Promena lozinke za svoj nalog:

    Korisnici takođe mogu koristiti chage da promene svoje lozinke. Na primer:

    chage

    Nakon ove komande, korisnik će biti upitan da unese svoju trenutnu lozinku i novu lozinku.

chage komanda je korisna za postavljanje i upravljanje starošću lozinki na Linux sistemu kako bi se poboljšala sigurnost. Obratite pažnju na tačne opcije i argumente za vaše specifične potrebe.

tune2fs

 tune2fs je komanda koja se koristi za podešavanje osobina (tuniranje) ekstenzibilnog fajl sistema (ext2, ext3, ext4) na Linux sistemu. Ove osobine uključuju informacije kao što su veličina rezervisanih blokova, UUID fajl sistema, maksimalna starost fajl sistema, i mnoge druge. Ovo vam omogućava da prilagodite ponašanje i karakteristike fajl sistema prema vašim potrebama.

Evo nekoliko primera kako koristiti tune2fs komandu:

  1. Prikazivanje informacija o fajl sistemu:

    Da biste prikazali informacije o ekstenzibilnom fajl sistemu, možete koristiti sledeću komandu zamijenjujući /dev/sdXY putanjom do uređaja na kojem se nalazi fajl sistem:

    sudo tune2fs -l /dev/sdXY

    Ovo će prikazati sve dostupne informacije o fajl sistemu.

  2. Promena veličine rezervisanih blokova:

    Možete promeniti veličinu rezervisanih blokova na fajl sistemu. Na primer, ako želite smanjiti rezervisane blokove na /dev/sdXY na 1%:

    sudo tune2fs -m 1 /dev/sdXY
  3. Podešavanje etikete fajl sistema (labela):

    Da biste postavili etiketu fajl sistema (labelu) na /dev/sdXY:

    sudo tune2fs -L "NovaEtiketa" /dev/sdXY
  4. Postavljanje UUID fajl sistema:

    Da biste postavili UUID fajl sistema na /dev/sdXY na određenu vrednost:

    sudo tune2fs -U novi_UUID /dev/sdXY

Ove su samo neki od primera kako se može koristiti tune2fs komanda za podešavanje osobina ekstenzibilnih fajl sistema. Opcije komande omogućavaju mnoge druge prilagodbe i promene na fajl sistemu. Obratite pažnju na uputstva i vodiče za tačne primene i opcije koje vam odgovaraju.