Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Tutoriály na konfiguráciu jednoduchých sieťových služieb  (Přečteno 135 krát)

neliba

  • Návštěvník
  • Příspěvků: 1
    1. NFS
    Ako prvé tu máme NFS - netowork file system. Je to prokolol pre zdielanie adresárov v počítačovej sieti. Na strane serveru je nutné nainštalovať balík nfs-kernel-server. Súbor, v ktorom sa konfigurícia nachádza je /etc/exports. Syntax:
    /cesta/k/priečinku 192.168.150.0/24 (parametre zdielania)
    Uvedená adresa siete alebo zariadenia je oprávnená na zdielanie.
    Parametre, ktoré môžeme nastaviť:
    • rw - čianie a zápis
    • ro - iba čítanie
    • no_root_squash - ak sa na klientovi prihlásí root, bude rootom aj na serveri
    • sync - NFS bude zapisovat na disk okamžite - nebude čakať na odpoveď (rychlejšie)
    • crossmnt - pokiaľ zdielaný adresár je podadresárom již zdielaného, musíme nastaviť možnosť crossmnt
    • fsid=0 - definícia korenového adresára
    • no_subtree_check - kontroluje, za je súbor stále dostupný v exportovanom strome - odporúčam nepouživať

    Príklad zdielania:
    /srv/data 192.168.10.0/24 (rw, crossmnt, sync, fsid=0, no_root_squash)
    /srv/data/home 192.168.10.2 (ro, fsid=1, sync, no_root_squash)

    Je dôležité myslieť aj na to, že výsledné oprávnenie je prienik oprávnenia v súbore "exports" a oprávnení samotného adresára


    2. SAMBA standalone
    Samba - implementácia protokolu SMB (server message block). Umožňuje zdielanie súborov a tlačiarní medzi windows a unix.
    Role samby:
    • Standalone - samostatný server
    • AD-DC - Domain controller
    • Member - člen AD Domény
    • Backup AD-DC - Záložný domain controller

    Služby samby:
    • smbd- zdilanie súborov a tlačiarní
    • nmbd - služby NetBIOS - mapovanie NetBIOS men na IP adresy

    Balík sa menuje jednoducho "samba"

    Konfigurácia sekcie GLOBAL
    Súbor, ktorý editujeme je "/etc/samba/smb.conf". Pred zmenami odporúčám súbor zálohovať.
    V súboru budeme editovať čásť [GLOBAL]
    Nastavujeme zde roli serveru.
    Ako ďalšie nastavujeme:
    • Pracovnú skupinu/doménu - workgroup = WORKGROUP
    • komentár, ktorý sa objaví u môjho mena pri zdielaní - server string = %h server
    • interface / sieť - zde bude samba odpovedať - interfaces = xxx.xxx.xxx.xxx/xx - a nebo napr. enp0s3. musím preto nastaviť aj "bind interfaces only = yes"
    Konfigurácia zdielania
    Príklad s vysvetlivkami:
    [ZDIELANIE] - názov zdielania
    comment = Môj adresár - komentár zdielania
    path = /môj/adresár - cesta ku zdieľanému adresáru
    browsable = yes - nastavenie, či bude adresár viditeľný
    read only = no - nastavenie, či bude adresár iba pre čitanie
    writable = yes - súvisí s "read only"
    valid users = mato juro @rodina - oprávnení používatelia a skupiny (skupina zapisujeme ako "@názov-skupiny")
    read list = juro peter - použivatelia, ktorý môžu iba čítať
    write list = matus - puživatelia, ktorý môžu aj zapisovať
    invalid users = root - zakázaní používatelia
    guest ok = no
    create mask = 0777 - práva pre nové súbory
    directory mask - 0777 - práva pre nové adresáre

    po úprave reštarovať smbd a nmbd

    Používatelia
    Musíme vytvoriť aj používateľa samby - podmienka: musí existovať aj ako klasický unix user
    Príkaz: smbpasswd -a používateľ

    Na strane klienta

    Nainštalujeme smbclient a cifs-utils (common internet file system)
    Prohliženie adresárov: smbclient -L adresa-serveru
    Pripojenie adresára: mount -t //server/meno-zdielania /kam/chcem/namountovať
    Trvalé pripojenie: //server/meno-zdielania /kam/chcem/mountovat cifs guest, uid=nobody, iocharset=utf8, noperm 0 0

    Aj tu je dôležité pamätať na správné oprávnenie na adresároch.

    3. Samba AD-DC
    Ponúká tie isté funkcie ako Windows Server

    Konfigurácia:
    Pomenujeme náš server aj s domenovym menom v súbore /etc/hostname - napr. server.domena.lan
    V súbore /etc/host nastavíme náš preklad severa na našu ip adresu, napr. 192.168.1.100 server.domena.lan

    a rebootneme
    Nainštalujeme baliky samba krb5-config a winbind
    Konfigurácia kerberosu:
    Default kerberos version 5 realm: DOMENA.LAN
    Kerberos servers for your realm: server.domena.lan
    Administrative server for your realm: server.domena.lan
    Ak sme urobili chybu pri konfigurácii: sudo apt autoremove --purge krb5

    Povýšenie samby na AD DC
    Premenujeme pôvodný súbor samby - mv /etc/samba/smb.conf /etc/samba/smb.orig
    Povýšíme sambu na domain controller: samba-tool domain provision
    Tlačime stale ENTER, u DNS forwarder nastavujeme 8.8.8.8 (typicky)
    Na konci sa nás to opýtá na adminstratorske heslo (je tu zasade pre silné heslo), takže pre testovanie možme nastaviť napr. Admin1234 a stlačíme enter
    Ako ďaľšie zakážeme isté služby:
    Zkopírujeme kerberos config do /etc - cp /var/lib/samba/private/krb5.config /etc/
    Zastavíme služby, ktoré by vadily domain controlleru
    systemctl stop smbd nmbd winbind systemd-resolved
    systemctl disable smbd nmbd winbind systemd-resolved
    Musíme odstraniť link na resolv.conf
    ll /etc/resolv.conf
    unlink /etc/resolv.conf

    Upravíme súbor resolv.conf
    nano /etc/resolv.conf
    Do súboru vložíme:
    domain domena.lan
    nameserver 127.0.0.1


    Naštartujeme služba samba-ad-dc
    systemctl unmask samba-ad-dc
    systemctl start samba-ad-dc
    systemctl enable samba-ad-dc

    Skontrolujeme domenu:
    samba-tool domain level show
    Kontrolu konfiguračného súbaru samby môžme skontrolovať pomocou príkazutestparm
    Ak je všetko v poriadku, počítač s OS windows sa môže pripojiť do domeny
    Práce s použivateľmi
    Pracujeme s príkazom samba-tool user ...
    • zoznam použivateľov  - samba-tool user list
    • pridanie použivateľa: samba-tool user add username
    Parametre:
    • --must-change-at-next-login - pri prvom prihlásení musí použivateľ zmeniť heslo
    • --surname - priezvisko
    • --given-name - meno
    • --script-path - prihlasovací skript
    • --home-drive - písmeno domovskej jednotky
    • --home-directory - sieťová cesta k domovskému adresáru

    Príklad pridania použivateľa: samba-tool user add matus --must-change-at-next-login --surname Horvath --given-name Matúš --script-path logon.bat --home-drive Z: --home-directory \\\\server\\matus (u sieťovej cesty musíme zadať vždy jedno extra lomítko - windows - \\server\matus, pri pridavani použivateľa: \\\\server\\matus)

    Práca s použivateľmi
    Pracujeme s príkazom pdbedit
    • pdbedit -L - výpis objektov v Active Directory
    • pdbedit -L -v - výpis objektov v AD s podrobnosťami
    • pdbedit -L -v matus - informacie o použivateľovi matus
    • pdbedit -h - nápoveda
    Príklady: pridanie logon scriptu - pdbedit -u matus - S logon.bat, pridanie domovskeho adresara: pdbedit -u matus -D "Z" -h "\\\\server\\matus"

    Práca zo skupinami
    • samba-tool group add "skupina"
    • samba-tool group addmembers "skupina" "použivateľ"
    • samba-tool group listmembers "Názov skupiny"
    Vytvorenie zdielaných adresárov
    Takmer isté ako pri standalone, ale pri nastavení práv dáváme skupina "users"
    Príklad: mkdir /srv/data, chown :users /srv/data, chmod 770 /srv/data
    V konfiguračnom súbore:

    [data]
    comment = adresár
    path = /srv/data
    browsable = yes
    guest ok = no

    Logon skripty
    adresár: /var/lib/samba/sysvol/názov-domény/scripts/menoskriptu.bat
    Skript musí mať oprávnenie 750, skupina - users
    Syntaxia skritpu je istá ako vo Windowse

    Home adresár

    budeme vytvárať v zložke /srv/domov
    Príklad: mkdir /srv/domov/matus, chown :users /srv/domov/matus, chmod 770 /srv/domov/matus
    V konfigu:

    [%U]
    browsable = no
    path = /srv/domov/%U
    valid users = %U
    write list = %U

    4. SSH (Secure shell)
    Protokol pre vzdialený zabezpečený prístup
    Potrebný balíček: openssh-server
    Konfiguračné súbory: /etc/ssh, log: /var/log/auth.log
    Serverový konfiguračný súbor: /etc/ssh/sshd_config
    Je zde možnosť zmeniť port - riadok: Port 22
    Povolení a zakázaní použivateľia
    DenyUsers - nemôžu sa príhlásiť cez SSH
    AllowUsers - môžu sa prihlásiť cez SSH
    DenyGroups - skupiny, která se nemôžu prihásiť cez SSH
    AllowGroups - skupiny, ktoré sá môžu prihlášiť cez SSH
    TCP Wrappery
    "ACL" v ktorom nastavujeme, kto kam môže a nemôže
    Súbory: /etc/hosts.allow a /etc/hosts.deny
    hosts.allow má prednosť pred hosts.deny
    syntax: deamon: ip adresa pc alebo siete
    príklad: sshd: 192.168.10.1, 192.168.10.2
    Kľúče
    cesta: /home/použivateľ/.ssh/autohrized_keys
    Zadáváme verejnú čásť kľúča
    Vygenerujeme cez program puttygen
    Po vygenerování zadáme passphrasi (heslo ku kľúču)
    Môj odporúčaný postup:
    • Pripojíme se cez SSH z windowsu na server
    • Skopírujeme verejný kľúč, ktorý vidíme v hornom okýnku v programu puttygen
    • Vložíme ho do súboru authorized_keys (pravým tlačítkom myši)
    • Súbor uložíme
    • Nastavíme oprávnenia na súbor (600ä a zložku .ssh(700) kvôli striknému modu SSH
    Z puttygenu si uložím do PC súkromný kľúč, na boku v programu putty záložka SSH -> auth -> credentials. Vložíme zde náš privátný kľúč.  V záložke data vyplníme auto-login username. Klikneme na session, vyplníme IP adresu a port, session pomenujeme a uložíme tlačidlom"SAVE". Keď kliknem na uloženú session, budeme sa prihlasovať pomocou kľúča. Odpočúčám v configu vypnut prihlasovanie heslom (PasswordAuthentication no)

    5. Apache 2
    Apache 2 je webový server. Potrebujeme nainšalovať balík s názvom apache2
    Virtual host
    Na jednom serveri môže byť viac virtualnych hostov (stránok)
    Pro vytvorenie použijeme defaultnu šablonu a vytvoríme hosta s názvom prvý
    Príkaz: cp 000-default.conf prvy.conf
    Upravíme zde parameter:    ServerName (doména, kde je stránka), v nasom pripade prva.lan - ServerName www.prva.lan
    DocumentRoot /var/www/html- zde sa nachádzá stránka fyzicky, nastavíme na DocumentRoot /var/www/prvy
    CustomLog ${APACHE_LOG_DIR}/access.log combined - zde sa logujú prístupy na stránku, nastavíme na         CustomLog${APACHE_LOG_DIR}/prvy.log combined
    Po konfigurácii musíme stránku spustiť - príkaz a2ensite a menu konfiguračného súboru, v našom prípade a2ensite prvy.conf a reloadnout apache - systemctl reload apache2
    Pretože pracujeme s variantou, že nemáme v sieti stále DNS server, musíme nastaviť preklad ručne vo Windowse. Ako prvé spustíme notepad ako administrátor, poté si otvoríme zložku c:\Windows\System32\drivers\etc, musíme dať vo volbách zobraziť všetky súbory, a poté si otvoríme súbar hosts. Pridáme riadok s adresou serveru a domenou. Napr. 192.168.1.100 www.prva.lan
    Odporúčam vždy pri testování napísať v prehlidači ako prvé "http://" napr. "http://www.prva.lan", pretože niektoré prehliadače s tým majú problémy.
    Redirect
    Niektorý použivateľia sú zvyknutý písať "www" a druhý nie. Preto je dôležité, aby fungovali obi dve možnosti. Využijeme apache mód rewrite - aktuvujeme pomocou príkazu a2enmod rewrite. Poté je dôležité celý server reštartovať - systemctl restart apache2. Urobíme dalšieho virtualhosta, ktorý sa bude volať druha.conf. Bude istý istý ako ten predošlý, ale ServerName bude www.druha.lan, Pod tento riadok napíšeme ServerAlias druha.lan. Nakonfigurujeme rewrite modul:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^pokus.lan$
    RewriteRule (.*) http://www.pokus.lan$1 [R=301]

    Pri zadání pokus.lan nás apache presmeruje na www.pokus.lan
    Po tomto opäť napíšeme DocumentRoot /var/www/druha

    Opäť zapíšeme do súboru hosts.

    Zmena portu
    Apache umožnuje, aby stránka bola aj na inom portu ako je 80
    Na prvom riadku je: <VirtualHost *:80>, já chcem, aby stránka bola na porte 8080. Riadok upravím na <VirtualHost *:8080>.
    Je tiež dôležité, aby server počúval na portu 8080. Pôjdeme do súboru /etc/apache2/ports, a napíšeme: Listen 8080

    Zabezpečenie stránky
    Ak chcem, abych  pri prístupu na stránku overoval meno a heslo, využijem moduly dav a dav_fs -  a2enmod dav dav_fs. Po zpustení modulu musím vždy reštarovať server. Do configu stránky, ktorú chcem zabezpečiť napíšem:

     
    <Location />
    DAV On
    AuthType Basic
    AuthName "domena.lan"
    AuthUserFile /etc/apache2/názov.súboru, napr. passwd.treti
    Require valid-user
    </Location>

    Súbor s uživateľmi

    Vytvorenie: htpasswd -c /etc/apache2/passwd.lan username
    "-c" - vytvorý súbor. Pokiaľ je již vytvorený, a chcem pridať použivateľa, vynechám parameter "-c"
    6. DHCP Server
    Jo dobré, aby v sieti bol centrálný DHCP server.
    Naištalujeme balíček isc-dhcp-server

    Konfiguračný súbor: /etc/dhcp/dhcpd.conf
    V súboru nastavíme, na akom interfacu beží server, napr. INTERFACESv4="enp0s8"
    Nastavíme aj parametre, ktoré sú dôležité pre správné fungovanie:
    option domain-name "moja.domena";
    option domain-name-server "server.moja.domena";

    Konfigurácia pre sieť napr. 192.168.100.0/24

    subnet 192.168.100.0 netmask 255.255.255.0{
    range 192.168.100.1 192.168.100.50;
    option routers 192.168.100.254;
    option domain-name-servers 192.168.1.100, 8.8.8.8;
    option domain-name: "moja.domena";
    }

    Rezervácia IP adres:

    host mojhost{
      hardware ethernet 08:08:08:aa:aa:aa;
      fixed-address 192.168.10.250;
    }

    Obecne: po zmene konfiguračného súboru musíme službu reloadnout, po spustení apache modu musíme apache reštartovať.
    systemctl reload služba, systemctl restart služba - overenie: systemctl status služba

    Verím, že tento jednoduchý návod pomôže začínajucim administrátorom, alebo linuxovým začiatočníkom pri nastavovaní domácej siete.

    V budúcnu doplním aj DNS server Bind9








    [/list]
    « Poslední změna: Dnes v 00:07:26 od neliba »

    radin

    • Aktivní člen
    • *
    • Příspěvků: 244
    Dobrý příspěvek. Jen mám poznámku - nebo spíš dotaz:
    Před časem jsem používal NFS (viz.1.) pro ukládání streamů z linux STB (Enigma) a problém byl při vypnutí boxu - vypínání trvalo hrozně dlouho nebo se box nevypnul vůbec. Přisuzoval jsem to problému s odpojení NFS disku, protože když jsem tuto možnost zakázal, problém zmizel. Možná špatná konfigurace - nevím, box už několik let nemám... To jen pro info.
    Nobody is perfect!

    Michal "Tylnesh" Kohútek

    • Administrátor fóra
    • Stálý člen
    • ******
    • Příspěvků: 1076
      • Lords Of Tech
    Fajn zhrnutie pre zaciatocnikov. Trochu mi to pripada, ako vygenerovany navod nejakym AI chatbotom, ale to neznamena, ze to nie je uzitocne. Len ma trochu vyrusuje, ze udavas napr. DNS na 8.8.8.8 bez toho, aby si vysvetlil, preco si si vybral zrovna tento DNS server (Googlacky).
    https://lordsoftech.com

    Registered Linux User #506395

    --- Smartphone 0: Apple iPhone 11
    --- Smartphone 1: OnePlus 3T - Ubuntu Touch
    --- Laptop 0: Apple Macbook Air M1
    --- Laptop 1: Lenovo Thinkpad X1 Carbon Gen 3
    --- Workstation: Ryzen 7 2700X, RX 5700XT, 32GB RAM
    --- Other: Niekolko kusov od kazdeho vydaneho variantu Raspberry Pi

     

    Provoz zaštiťuje spolek OpenAlt.