Opšti indeks serije: Računarske mreže za mala i srednja preduzeća: Uvod
Pozdrav prijatelji i prijatelji!
Ovim člankom se opraštam od Zajednice DesdeLinux. Poseban oproštaj za posebnu zajednicu. Od sada ću biti u svom ličnom projektu koji možete vidjeti na http://www.gigainside.com.
Glavni cilj posta je ponuditi «Velika slika»O uslugama autentifikacije sa besplatnim softverom kojima raspolažemo. Barem nam je to namjera. Stoga će biti dugo, uprkos činjenici da znamo da je to protiv općih pravila pisanja članaka. Nadamo se da će ga sistemski administratori cijeniti.
Želimo naglasiti da je zajednički protokol mnogim modernim sistemima za provjeru autentičnosti LDAP, te da nije prazno pažljivo ga proučavati, iz materijala za učenje koji ćemo naći na službenoj stranici http://www.openldap.org/.
Nećemo davati detaljne definicije - ili veze - o aspektima koji su obrađivani u prethodnim člancima, niti o onima čiji opis može biti lako dostupan na Wikipediji ili drugim web lokacijama ili člancima na Internetu, kako ne bismo izgubili objektivnost poruke koju želimo dati. Također ćemo koristiti valjanu kombinaciju imena na engleskom i španjolskom, jer smatramo da je većina sistema rođena s imenima na engleskom i za Sysadmina je vrlo korisno da ih asimilira na njihov izvorni jezik.
- PAM: Priključni modul za provjeru identiteta.
- NIS: Network_Information_Service.
- LDAP: Lagani protokol za pristup direktorijumu.
- Kerberos: Sigurnosni protokol za autentifikaciju korisnika, računara i usluga centralno na mreži, provjeru njihovih vjerodajnica u odnosu na postojeće unose u bazu podataka Kerberos.
- DS: Poslužitelj direktorija ili Usluga direktorija
- AD–DC: Active Directory - Kontroler domene
PAM
Ovoj vrsti lokalne provjere identiteta posvećujemo malu seriju, koju ćete u svakodnevnoj praksi vidjeti da se široko koristi kada, na primjer, radnu stanicu pridružimo kontroloru domene ili Active Directoryu; mapirati korisnike pohranjene u vanjskim LDAP bazama podataka kao da su lokalni korisnici; za mapiranje korisnika pohranjenih u kontroleru domene Active Directory-a kao da su lokalni korisnici, i tako dalje.
- Squid + PAM autentifikacija na CentOS 7.
- Lokalno upravljanje korisnicima i grupama
- NSD autoritarni DNS server + zidni zid
- Prosody IM i lokalni korisnici
- Postfix + Dovecot + Squirrelmail i lokalni korisnici
NIS
De Wikipedia:
- Mrežni informativni sistem (poznat pod skraćenicom NIS, što na španskom znači Mrežni informativni sistem) naziv je protokola usluga direktorija klijent-server koji je razvio Sun Microsystems za slanje podataka o konfiguraciji u distribuiranim sistemima kao što je imena korisnika i hostova između računara na mreži.NIS se temelji na ONC RPC, a sastoji se od servera, biblioteke na strani klijenta i različitih administrativnih alata.
NIS se prvobitno zvao Yellow Pages, ili YP, što se i dalje koristi za njegovo pozivanje. Nažalost, to je ime zaštitni znak British Telecoma, koji je tražio da Sun odustane od tog imena. Međutim, YP ostaje prefiks u imenima većine naredbi povezanih s NIS-om, poput ypserv i ypbind.
DNS služi ograničenom rasponu informacija, a najvažnija je korespondencija između imena čvora i IP adrese. Za ostale vrste informacija ne postoji takva specijalizirana usluga. S druge strane, ako upravljate samo malim LAN-om bez internetske veze, čini se da ne vrijedi postavljati DNS. Zbog toga je Sun razvio mrežni informativni sistem (NIS). NIS pruža generičke mogućnosti pristupa bazama podataka koje se mogu koristiti za distribuciju, na primjer, informacija sadržanih u passwd-u i grupiranje datoteka svim čvorovima na vašoj mreži. Zbog toga mreža izgleda kao jedinstveni sistem, s istim računima na svim čvorovima. Slično tome, NIS se može koristiti za distribuciju informacija o imenu čvora sadržanih u / etc / hosts na svim mašinama na mreži.
Danas je NIS dostupan u praktično svim Unix distribucijama, a postoje čak i besplatne implementacije. BSD Net-2 objavio je onaj koji je izveden iz referentne implementacije javnog domena koju je donirao Sun. Kôd biblioteke za klijentski dio ove verzije već dugo postoji u GNU / Linux libc, a administrativne programe na GNU / Linux prenio je Swen Thümmler. Međutim, NIS server nedostaje kao referentna implementacija.
Peter Eriksson razvio je novu implementaciju nazvanu NYS. Podržava i osnovni NIS i poboljšanu verziju Sun NIS +. [1] NYS ne nudi samo brojne NIS alate i server, već dodaje i čitav novi skup funkcija biblioteke koje trebate kompajlirati u libc ako ih želite koristiti. To uključuje novu konfiguracijsku shemu za razlučivanje imena čvorova koja zamjenjuje trenutnu shemu koju koristi datoteka "host.conf".
GNU libc, poznat kao libc6 u zajednici GNU / Linux, uključuje ažuriranu verziju tradicionalne NIS podrške koju je razvio Thorsten Kukuk. Podržava sve funkcije knjižnice koje pruža NYS, a također koristi naprednu NYS konfiguracijsku shemu. Alati i poslužitelj i dalje su potrebni, ali upotreba GNU libc štedi posao krpanja i ponovnog prevođenja biblioteke
.
Ime računara i domene, mrežno sučelje i razrješivač
- Polazimo od čiste instalacije - bez grafičkog sučelja - Debiana 8 "Jessie". Domena swl.fan znači "Ljubitelji besplatnog softvera". Koje je bolje ime od ovog?.
root @ master: ~ # ime hosta
majstor
root @ master: ~ # ime hosta -f
master.swl.fan
root @ master: ~ # ip addr 1: lo: mtu 65536 qdisc noqueue stanje NEPOZNATA grupa zadana veza / povratna veza 00: 00: 00: 00: 00: 00 brd 00: 00: 00: 00: 00: 00: 127.0.0.1: 8: 6 inet 1/128 domet host lo valid_lft zauvijek preferiran_lft zauvijek inet2 :: 0/1500 domet domena valid_lft zauvijek preferirani_lft zauvijek 1000: eth00: mtu 0 qdisc pfifo_fast stanje UP grupa zadani qlen 29 veza / eter 4: 76c: 9: 192.168.10.5c: 24: d192.168.10.255 brd ff: ff: ff: ff: ff: ff inet 0/6 brd 80 opseg globalni eth20 valid_lft zauvijek prefer_lft zauvijek inet29 fe4 :: 76c: 9ff: fe64c: XNUMXdXNUMX / XNUMX opseg link valid_lft zauvijek prefer_lft zauvijek
root @ master: ~ # cat /etc/resolv.conf
search swl.fan nameserver 127.0.0.1
Instalacija bind9, isc-dhcp-servera i ntp
bind9
root @ master: ~ # aptitude install bind9 bind9-doc Nmap root @ master: ~ # systemctl status bind9 root @ master: ~ # nano /etc/bind/named.conf uključuju "/etc/bind/named.conf.options"; uključuju "/etc/bind/named.conf.local"; uključuju "/etc/bind/named.conf.default-zones"; root @ master: ~ # cp /etc/bind/named.conf.options \ /etc/bind/named.conf.options.original root @ master: ~ # nano /etc/bind/named.conf.options opcije {direktorij "/ var / cache / bind"; // Ako postoji zaštitni zid između vas i poslužitelja imena s kojima želite // razgovarati, možda ćete trebati popraviti zaštitni zid da omogući više // portova da razgovaraju. Vidite http://www.kb.cert.org/vuls/id/800113 // Ako je vaš ISP pružio jednu ili više IP adresa za stabilne // poslužitelje imena, vjerojatno ih želite koristiti kao prosljeđivače. // Otkomentirajte sljedeći blok i umetnite adrese koje zamjenjuju // rezervirano mjesto all-0. // prosljeđivači {// 0.0.0.0; //}; // ================================================= ===================== $ $ Ako BIND evidentira poruke o greškama o matičnom ključu koji je istekao, // trebat ćete ažurirati svoje ključeve. Vidite https://www.isc.org/bind-keys // ================================================= ====================== $ // Ne želimo DNSSEC dnssec-enable no; // dnssec-provjera valjanosti automatski; auth-nxdomain br; # u skladu s RFC1035 listen-on-v6 {bilo; }; // Za provjere od localhosta i sysadmina // preko dig swl.fan axfr // Nemamo slave DNS ... do sada allow-transfer {localhost; 192.168.10.1; }; }; root @ master: ~ # named-checkconf root @ master: ~ # nano /etc/bind/zones.rfcFreeBSD // Prostor zajedničke adrese (RFC 6598) zone "64.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "65.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "66.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "67.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "68.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "69.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "70.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "71.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "72.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "73.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "74.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "75.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "76.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "77.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "78.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "79.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "80.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "81.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "82.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "83.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "84.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "85.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "86.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "87.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "88.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "89.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "90.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "91.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "92.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "93.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "94.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "95.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "96.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "97.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "98.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "99.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "100.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "101.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "102.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "103.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "104.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "105.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "106.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "107.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "108.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "109.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "110.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "111.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "112.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "113.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "114.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "115.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "116.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "117.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "118.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "119.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "120.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "121.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "122.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "123.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "124.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "125.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "126.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; zone "127.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; }; // Link-local / APIPA (RFCs 3927, 5735 i 6303) zona "254.169.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; // Zadaci IETF protokola (RFCs 5735 i 5736) zona "0.0.192.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; // TEST-NET- [1-3] za dokumentaciju (RFCs 5735, 5737 i 6303) zona "2.0.192.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "100.51.198.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "113.0.203.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; // Primjer raspona IPv6 za dokumentaciju (RFCs 3849 i 6303) zona "8.bd0.1.0.0.2.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; // Imena domena za dokumentaciju i testiranje (BCP 32) zona "test" {type master; datoteka "/etc/bind/db.empty"; }; zona "primjer" {tip master; datoteka "/etc/bind/db.empty"; }; zona "nevaljano" {master master; datoteka "/etc/bind/db.empty"; }; zona "example.com" {tip master; datoteka "/etc/bind/db.empty"; }; zona "example.net" {tip master; datoteka "/etc/bind/db.empty"; }; zona "example.org" {tip master; datoteka "/etc/bind/db.empty"; }; // Ispitivanje mjerila usmjerivača (RFCs 2544 i 5735) zona "18.198.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "19.198.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; // IANA rezervirana - Prostor stare klase E (RFC 5735) zona "240.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "241.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "242.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "243.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "244.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "245.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "246.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "247.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "248.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "249.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "250.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "251.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "252.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "253.in-addr.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "254.in-addr.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; // Neraspoređene IPv6 adrese (RFC 4291) zona "1.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "3.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "4.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "5.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "6.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "7.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "8.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "9.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "a.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "b.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "c.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "d.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "e.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "0.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "1.f.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "2.f.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "3.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "4.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "5.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "6.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "7.f.ip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "8.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "9.f.ip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "afip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "bfip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "0.efip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "1.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "2.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "3.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "4.efip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "5.efip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "6.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "7.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; // IPv6 ULA (RFCs 4193 i 6303) zona "cfip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "dfip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; // Lokalni IPv6 link (RFCs 4291 i 6303) zona "8.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "9.efip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "aefip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "befip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; // IPv6 zastarjele lokalne adrese (RFCs 3879 i 6303) zona "cefip6.arpa" {tip master; datoteka "/etc/bind/db.empty"; }; zona "defip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "eefip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; zona "fefip6.arpa" {master; datoteka "/etc/bind/db.empty"; }; // IP6.INT je zastario (RFC 4159) zona "ip6.int" {tip master; datoteka "/etc/bind/db.empty"; }; root @ master: ~ # nano /etc/bind/named.conf.local // // Napravite ovdje bilo kakvu lokalnu konfiguraciju // // Razmislite o tome da ovdje dodate 1918 zona, ako se one ne koriste u vašoj organizaciji // "" itd. uključuju "/etc/bind/zones.rfcFreeBSD"; // Deklaracija imena, tipa, lokacije i dozvole za ažuriranje // DNS zona za snimanje // Obje zone su MASTER zona "swl.fan" {master; datoteka "/var/lib/bind/db.swl.fan"; }; zona "10.168.192.in-addr.arpa" {master; datoteka "/var/lib/bind/db.10.168.192.in-addr.arpa"; }; root @ master: ~ # named-checkconf root @ master: ~ # nano /var/lib/bind/db.swl.fan $ TTL 3H @ IN SOA master.swl.fan. root.master.swl.fan. (1; serijski 1D; osvježi 1H; pokušaj 1W; istječe 3H); minimum ili; Vrijeme negativnog predmemoriranja za život; @ IN NS master.swl.fan. @ IN MX 10 mail.swl.fan. @ U 192.168.10.5 @ IN TXT "Za ljubitelje besplatnog softvera"; sysadmin U A 192.168.10.1 poslužitelj datoteka U A 192.168.10.4 master U A 192.168.10.5 proxyweb U A 192.168.10.6 blog U A 192.168.10.7 ftpserver U 192.168.10.8 pošta U A 192.168.10.9 root @ master: ~ # nano /var/lib/bind/db.10.168.192.in-addr.arpa $ TTL 3H @ IN SOA master.swl.fan. root.master.swl.fan. (1; serijski 1D; osvježi 1H; pokušaj 1W; istječe 3H); minimum ili; Vrijeme negativnog predmemoriranja za život; @ IN NS master.swl.fan. ; 1 U PTR sysadmin.swl.fan. 4 U PTR fileserver.swl.fan. 5 U PTR master.swl.fan. 6 U PTR proxyweb.swl.fan. 7 U PTR blog.swl.fan. 8 U PTR ftpserver.swl.fan. 9 U PTR mail.swl.fan. root @ master: ~ # named-checkzone swl.fan /var/lib/bind/db.swl.fan zone swl.fan/IN: učitan serijski 1 OK root @ master: ~ # named-checkzone 10.168.192.in-addr.arpa /var/lib/bind/db.10.168.192.in-addr.arpa zona 10.168.192.in-addr.arpa/IN: učitan serijski 1 OK root @ master: ~ # named-checkconf -zp root @ master: ~ # systemctl ponovo pokrenite bind9.service root @ master: ~ # systemctl status bind9.service
Bind9 čekovi
root @ master: ~ # dig swl.fan axfr root @ master: ~ # dig 10.168.192.in-addr.arpa axfr root @ master: ~ # kopati u SOA swl.fan root @ master: ~ # kopati u NS swl.fan root @ master: ~ # kopati u MX swl.fan root @ master: ~ # proxyweb host root @ master: ~ # nping --tcp -p 53 -c 3 localhost root @ master: ~ # nping --udp -p 53 -c 3 localhost root @ master: ~ # nping --tcp -p 53 -c 3 master.swl.fan root @ master: ~ # nping --udp -p 53 -c 3 master.swl.fan Počevši od Npinga 0.6.47 ( http://nmap.org/nping ) u 2017-05-27 09:32 EDT SENT (0.0037s) UDP 192.168.10.5:53> 192.168.10.245:53 ttl = 64 id = 20743 iplen = 28 SENT (1.0044s) UDP 192.168.10.5:53> 192.168.10.245 .53: 64 ttl = 20743 id = 28 iplen = 2.0060 SENT (192.168.10.5s) UDP 53:192.168.10.245> 53:64 ttl = 20743 id = 28 iplen = 3 Max rtt: N / A | Min. Br .: N / A | Pros. Rtt: N / A Poslano sirovih paketa: 84 (0B) | Rcvd: 0 (3B) | Izgubljeno: 100.00 (1%) Nping završeno: 3.01 IP adresa pingirana za XNUMX sekunde
isc-dhcp-server
root @ master: ~ # aptitude instaliraj isc-dhcp-server root @ master: ~ # nano / etc / default / isc-dhcp-server # Na kojim bi sučeljima DHCP server (dhcpd) trebao služiti DHCP zahtjeve? # Odvojite više sučelja s razmacima, npr. "Eth0 eth1". INTERFEJS = "eth0" root @ master: ~ # dnssec-keygen -a HMAC-MD5 -b 128 -r / dev / urandom -n KORISNIK dhcp-ključ root @ master: ~ # mačka Kdhcp-ključ. +157 + 51777.privatno Format privatnog ključa: v1.3 Algoritam: 157 (HMAC_MD5) Ključ: Ba9GVadq4vOCixjPN94dCQ == Bitovi: AAA = Stvoreno: 20170527133656 Objavite: 20170527133656 Aktivirajte: 20170527133656 root @ master: ~ # nano dhcp.key ključ dhcp-ključ { algoritam hmac-md5; tajna "Ba9GVadq4vOCixjPN94dCQ == "; }; root @ master: ~ # install -o root -g bind -m 0640 dhcp.key /etc/bind/dhcp.key root @ master: ~ # install -o root -g root -m 0640 dhcp.key / etc / dhcp /dhcp.key root @ master: ~ # nano /etc/bind/named.conf.local uključuju "/etc/bind/dhcp.key"; zona "swl.fan" {master; datoteka "/var/lib/bind/db.swl.fan"; allow-update {ključ dhcp-ključ; }; }; zona "10.168.192.in-addr.arpa" {master; datoteka "/var/lib/bind/db.10.168.192.in-addr.arpa"; allow-update {ključ dhcp-ključ; }; }; root @ master: ~ # named-checkconf root @ master: ~ # mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original root @ master: ~ # nano /etc/dhcp/dhcpd.conf ddns-update-style-privremeni; ddns-ažuriranja na; ddns-ime domene "swl.fan."; ddns-rev-ime domene "in-addr.arpa."; ignorirati ažuriranja klijenta; false-update-optimizacija; # Može biti potrebno za Debian kao autoritativni; opcija isključenja ip-prosljeđivanja; opcija ime-domene "swl.fan"; uključuju "/etc/dhcp/dhcp.key"; zone swl.fan. {primarno 127.0.0.1; ključ dhcp-ključ; } zona 10.168.192.in-addr.arpa. {primarno 127.0.0.1; ključ dhcp-ključ; } zajednička mreža redlocal {podmreža 192.168.10.0 netmask 255.255.255.0 {usmjerivači opcija 192.168.10.1; opcija podmreža-maska 255.255.255.0; opcija za emitovanje adrese 192.168.10.255; opcija domain-name-servers 192.168.10.5; opcija netbios-name-serveri 192.168.10.5; opcija ntp-serveri 192.168.10.5; opcija time-serveri 192.168.10.5; raspon 192.168.10.30 192.168.10.250; }} root @ master: ~ # dhcpd -t Konzorcij internetskih sistema DHCP server 4.3.1 Copyright 2004-2014 Konzorcij internetskih sistema. Sva prava zadržana. Za informacije, posjetite https://www.isc.org/software/dhcp/ Datoteka konfiguracije: /etc/dhcp/dhcpd.conf Datoteka baze podataka: /var/lib/dhcp/dhcpd.leases PID datoteka: /var/run/dhcpd.pid root @ master: ~ # systemctl ponovo pokrenite bind9.service root @ master: ~ # systemctl status bind9.service root @ master: ~ # systemctl start isc-dhcp-server.service root @ master: ~ # systemctl status isc-dhcp-server.service
ntp
root @ master: ~ # aptitude instaliraj ntp ntpdate root @ master: ~ # cp /etc/ntp.conf /etc/ntp.conf.original root @ master: ~ # nano /etc/ntp.conf driftfile /var/lib/ntp/ntp.drift statistika loopstats peerstats clockstats filegen loopstats datoteka loopstats tip dan omogućiti filegen peerstats datoteka peerstats tip dan omogućiti filegen clockstats datoteka clockstats tip dan omogućiti server 192.168.10.1 ograničiti -4 zadani kod notrap nomodify nopeer noquery restrict -6 zadani kod notrap nomodify nopeer noquery ograničiti 127.0.0.1 ograničiti :: 1 emitiranje 192.168.10.255 root @ master: ~ # systemctl ponovo pokrenite ntp.service root @ master: ~ # systemctl status ntp.service root @ master: ~ # ntpdate -u sysadmin.swl.fan 27. svibnja 10:04:01 ntpdate [18769]: prilagodite vremenski poslužitelj 192.168.10.1 pomak 0.369354 sek
Globalne provjere za ntp, bind9 i isc-dhcp-server
Iz Linux, BSD, Mac OS ili Windows klijenta provjerite je li vrijeme pravilno sinkronizirano. Da dobiva dinamičku IP adresu i da se ime tog domaćina rješava direktnim i obrnutim DNS upitima. Promijenite ime kupca i ponovite sve provjere. Ne nastavljajte dok se ne uvjerite da do sada instalirane usluge rade ispravno. Zbog nečega smo napisali sve članke o DNS-u i DHCP-u Računarske mreže za mala i srednja preduzeća.
Instalacija NIS servera
root @ master: ~ # aptitude show nis Sukobi sa: netstd (<= 1.26) Opis: klijenti i demoni za Mrežnu informativnu uslugu (NIS) Ovaj paket nudi alate za postavljanje i održavanje NIS domene. NIS, izvorno poznat pod nazivom Yellow Pages (YP), uglavnom se koristi za omogućavanje da nekoliko računara u mreži dijeli iste podatke o računu, poput datoteke lozinke. root @ master: ~ # aptitude instaliraj nis Konfiguracija paketa ┌─────────────────────────┤ Niška konfiguracija ├──────────────── ── ────────┐ │ Izaberite NIS „ime domene“ za ovaj sistem. Ako želite da ovaj │ │ uređaj bude samo klijent, trebali biste unijeti ime │ │ NIS domene kojoj se želite pridružiti. │ │ │ Alternativno, ako će ovaj uređaj biti NIS poslužitelj, možete │ │ unijeti novo NIS „ime domene“ ili ime postojeće NIS │ │ domene. │ │ │ │ NIS domena: │ │ │ │ swl.fan __________________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘
Odgodit će vašu jer konfiguracija usluge kao takva ne postoji. Molimo pričekajte da se postupak završi.
root @ master: ~ # nano / etc / default / nis
# Jesmo li NIS server i ako da, kakve vrste (vrijednosti: false, slave, master)?
NISSERVER = master
root @ master: ~ # nano /etc/ypserv.securenets # securenets Ova datoteka definiše prava pristupa vašem NIS serveru # za NIS klijente (i slave servere - ypxfrd koristi i ovu # datoteku). Ova datoteka sadrži mrežne maske / mrežne parove. # IP adresa klijenta mora se podudarati s najmanje jednom # od njih. # # Riječ "host" može se koristiti umjesto mrežne maske # 255.255.255.255. U ovoj # datoteci dozvoljene su samo IP adrese, a ne i imena hostova. # # Uvijek dozvoli pristup za localhost 255.0.0.0 127.0.0.0 # Ovaj redak daje pristup svima. MOLIM VAS PRILAGODITE! # 0.0.0.0 0.0.0.0
255.255.255.0 192.168.10.0
root @ master: ~ # nano / var / yp / Makefile # Da li treba spojiti passwd datoteku sa datotekom sjene? # MERGE_PASSWD = tačno | netačno
MERGE_PASSWD = tačno
# Trebamo li spojiti datoteku grupe sa datotekom gshadow? # MERGE_GROUP = true | false
MERGE_GROUP = tačno
Izrađujemo NIS bazu podataka
root @ master: ~ # / usr / lib / yp / ypinit -m U ovom trenutku moramo sastaviti listu hostova koji će pokretati NIS servere. master.swl.fan je na listi hostova NIS servera. Nastavite dodavati imena ostalih domaćina, po jedno u redak. Kada završite sa spiskom, otkucajte a . sljedeći domaćin za dodavanje: master.swl.fan sljedeći domaćin za dodavanje: Trenutna lista NIS servera izgleda ovako: master.swl.fan Je li to tačno? [y / n: y] Treba nam nekoliko minuta da izgradimo baze podataka ... make [1]: Napuštanje direktorija '/var/yp/swl.fan' master.swl.fan postavljeno je kao NIS glavni server . Sada možete pokrenuti ypinit -s master.swl.fan na svim slave serverima. root @ master: ~ # systemctl ponovo pokrenite nis root @ master: ~ # systemctl status nis
Dodamo lokalne korisnike
root @ master: ~ # adduser bilbo Dodavanje korisnika `bilbo '... Dodavanje nove grupe` bilbo' (1001) ... Dodavanje novog korisnika `bilbo '(1001) sa grupom` bilbo' ... Kreiranje matičnog direktorija `/ home / bilbo ' ... Kopiranje datoteka iz `/ etc / skel '... Unesite novu UNIX lozinku: Upišite novu UNIX lozinku: passwd: lozinka ispravno ažurirana Promjena korisničkih podataka za bilbo Unesite novu vrijednost ili pritisnite ENTER da biste koristili zadani puni naziv []: Bilbo Bagins Broj sobe []: Službeni telefon []: Kućni telefon []: Ostalo []: Da li su informacije tačne? [D / N] root @ master: ~ # adduser napreduje root @ master: ~ # adduser legolas
i tako dalje.
root @ master: ~ # legole prsta Prijava: legolas Ime: Legolas Archer Direktorij: / home / legolas Školjka: / bin / bash Nikada se niste prijavili. Nema pošte. Nema plana.
Ažuriramo NIS bazu podataka
root @ master: / var / yp # make make [1]: Ulazak u direktorij '/var/yp/swl.fan' Ažuriranje passwd.byname ... Ažuriranje passwd.byuid ... Ažuriranje group.byname ... Ažuriranje group.bygid ... Ažuriranje netid.byname. .. Ažuriranje shadow.byname ... Zanemareno -> spojeno sa passwd make [1]: Napuštanje direktorija '/var/yp/swl.fan'
Dodajemo NIS opcije na isc-dhcp-server
root @ master: ~ # nano /etc/dhcp/dhcpd.conf ddns-update-style-privremeni; ddns-ažuriranja na; ddns-ime domene "swl.fan."; ddns-rev-ime domene "in-addr.arpa."; ignorirati ažuriranja klijenta; false-update-optimizacija; autoritativni; opcija isključenja ip-prosljeđivanja; opcija ime-domene "swl.fan"; uključuju "/etc/dhcp/dhcp.key"; zone swl.fan. {primarno 127.0.0.1; ključ dhcp-ključ; } zona 10.168.192.in-addr.arpa. {primarno 127.0.0.1; ključ dhcp-ključ; } zajednička mreža redlocal {podmreža 192.168.10.0 netmask 255.255.255.0 {usmjerivači opcija 192.168.10.1; opcija podmreža-maska 255.255.255.0; opcija za emitovanje adrese 192.168.10.255; opcija domain-name-servers 192.168.10.5; opcija netbios-name-serveri 192.168.10.5; opcija ntp-serveri 192.168.10.5; opcija time-serveri 192.168.10.5; opcija nis-domena "swl.fan"; opcija nis-serveri 192.168.10.5; raspon 192.168.10.30 192.168.10.250; }} root @ master: ~ # dhcpd -t root @ master: ~ # systemctl restart isc-dhcp-server.service
Instalacija NIS klijenta
- Polazimo od čiste instalacije - bez grafičkog sučelja - Debiana 8 "Jessie".
root @ mail: ~ # ime hosta -f
mail.swl.fan
root @ mail: ~ # ip addr
2: eth0: mtu 1500 qdisc pfifo_fast stanje UP grupa zadani qlen 1000 veza / eter 00: 0c: 29: 25: 1f: 54 brd ff: ff: ff: ff: ff: ff
inet 192.168.10.9/24 brd 192.168.10.255 opseg globalni eth0
root @ mail: ~ # aptitude instalirati nis
root @ mail: ~ # nano /etc/yp.conf # # yp.conf Konfiguracijska datoteka za ypbind proces. Ovdje možete ručno definirati # NIS poslužitelja ako ih nije moguće pronaći putem # emitiranja na lokalnoj mreži (što je zadana vrijednost). # # Pogledajte stranicu priručnika ypbind-a za sintaksu ove datoteke. # # VAŽNO: Za "ypserver" koristite IP adrese ili provjerite je li # domaćin u / etc / hosts. Ova datoteka se tumači samo # jednom, a ako DNS još nije dostupan, ypserver se ne može # riješiti i ypbind se nikada neće vezati za server. # ypserver ypserver.network.com ypserver master.swl.fan domena swl.fan
root @ mail: ~ # nano /etc/nsswitch.conf
# /etc/nsswitch.conf # # Primjer konfiguracije funkcionalnosti GNU Name Service Switch. # Ako imate instalirane pakete `glibc-doc-reference 'i` info', pokušajte: # `info libc" Prekidač usluge imena "'za informacije o ovoj datoteci. passwd: compat nis grupa: compat nis shadow: compat nis gshadow: datoteke domaćini: datoteke dns nis mreže: datoteke protokoli: db datoteke usluge: db datoteke eteri: db datoteke rpc: db datoteke netgroup: nis
root @ mail: ~ # nano /etc/pam.d/common-session
# pam-auth-update (8) za detalje.
sesija opcionalno pam_mkhomedir.so skel = / etc / skel umask = 077
# ovdje su moduli po paketu (blok "Primarni")
root @ mail: ~ # systemctl status nis
root @ mail: ~ # systemctl ponovo pokrenite nis
Zatvaramo sesiju i započinjemo je ponovo, ali sa korisnikom registrovanim u NIS bazi podataka na master.swl.fan.
root @ mail: ~ # izlaz odjava Veza sa poštom je zatvorena. buzz @ sysadmin: ~ $ ssh legolas @ mail lozinka legolas @ maila: Kreiranje direktorija '/ home / legolas'. Programi uključeni u Debian GNU / Linux sistem su besplatni softver; tačni uslovi distribucije za svaki program opisani su u pojedinačnim datotekama u / usr / share / doc / * / copyright. Debian GNU / Linux dolazi s APSOLUTNO BEZ JAMSTVA, u mjeri u kojoj to dopušta važeći zakon. legolas @ mail: ~ $ pwd / home / legolas legolas @ mail: ~ $
Mijenjamo lozinku korisnika legola i provjeravamo
legolas @ mail: ~ $ yppasswd Promjena podataka o NIS računu za legole na master.swl.fan. Unesite staru lozinku: legolas Promjena NIS lozinke za legole na master.swl.fan. Unesite novu lozinku: archer Lozinka mora imati velika i mala slova ili ne-slova. Unesite novu lozinku: Arquero2017 Unesite novu lozinku: Arquero2017 NIS lozinka je promijenjena na master.swl.fan. legolas @ mail: ~ $ izlaz odjava Veza sa poštom je zatvorena. buzz @ sysadmin: ~ $ ssh legolas @ mail lozinka legolas @ maila: Arquero2017 Programi uključeni u sistem Debian GNU / Linux besplatni su softver; tačni uslovi distribucije za svaki program opisani su u pojedinačnim datotekama u / usr / share / doc / * / copyright. Debian GNU / Linux dolazi s APSOLUTNO BEZ JAMSTVA, u mjeri u kojoj to dopušta važeći zakon. Posljednja prijava: Sat May 27 12:51:50 2017 od sysadmin.swl.fan legolas @ mail: ~ $
NIS usluga implementirana na nivou servera i klijenta radi ispravno.
LDAP
Sa Wikipedije:
- LDAP je skraćenica od Lightweight Directory Access Protocol (na španskom jeziku Lagani / pojednostavljeni protokol pristupa direktorijumu) koji se odnosi na protokol na nivou aplikacije koji omogućava pristup uređenoj i distribuiranoj usluzi direktorija za traženje različitih informacija u okruženju mreža. LDAP se također smatra bazom podataka (iako se njegov sistem za pohranu može razlikovati) koja se može pitati.Direktorij je skup objekata s atributima organiziranim na logičan i hijerarhijski način. Najčešći primjer je telefonski imenik koji se sastoji od niza imena (osoba ili organizacija) poredanih po abecedi, uz svako ime uz adresu i telefonski broj. Da bismo bolje razumjeli, to je knjiga ili fascikla u koju su upisana imena, telefonski brojevi i adrese ljudi i poredani su po abecedi.
Stablo LDAP direktorija ponekad odražava različite političke, geografske ili organizacijske granice, ovisno o odabranom modelu. Trenutne LDAP-ove implementacije imaju tendenciju da koriste imena sistema domena (DNS) za strukturiranje viših nivoa hijerarhije. Dok se pomičete prema direktorijumu, mogu se pojaviti unosi koji predstavljaju ljude, organizacijske jedinice, štampače, dokumente, grupe ljudi ili bilo što drugo što predstavlja zadani unos u stablu (ili više unosa).
Obično pohranjuje podatke za provjeru autentičnosti (korisnik i lozinka) i koristi se za provjeru autentičnosti, iako je moguće pohraniti i druge podatke (podaci o kontaktima korisnika, mjesto različitih mrežnih resursa, dozvole, certifikati itd.). Ukratko, LDAP je objedinjeni protokol pristupa skupu informacija na mreži.
Trenutna verzija je LDAPv3, a definirana je u RFC-ima RFC 2251 i RFC 2256 (osnovni LDAP dokument), RFC 2829 (metoda provjere autentičnosti za LDAP), RFC 2830 (proširenje za TLS) i RFC 3377 (tehnička specifikacija)
.
Dugo, LDAP protokol - i njegove baze podataka kompatibilne ili ne s OpenLDAP-om - danas se najviše koristi u većini sistema provjere autentičnosti. Kao primjer prethodne izjave, u nastavku navodimo neka imena sistema - Slobodni ili Privatni - koji koriste LDAP baze podataka kao pozadinu za pohranu svih svojih objekata:
- OpenLDAP
- Apache poslužitelj direktorija
- Red Hat direktorijski poslužitelj - 389 DS
- Usluge direktorija Novell - eDirectory
- SUN Microsystems Open DS
- Red Hat Identity Manager
- FreeIPA
- Samba NT4 Classic kontroler domene.
Želimo da pojasnimo da je ovaj sistem razvoj tima Samba sa Sambom 3.xxx + OpenLDAP as backend. Microsoft nikada nije implementirao ništa slično. Skočio s NT 4 kontrolera domene na njihove aktivne direktorije - Samba 4 Active Directory - kontroler domene
- ClearOS
- zentyal
- UCS Uninvention korporativni server
- Microsoft Active Directory
Svaka implementacija ima svoje osobine, a najstandardnija i najkompatibilnija je OpenLDAP.
Active Directory, bilo da je originalni Microsoft ili Samba 4, objedinjuje nekoliko glavnih komponenata koje su:
- Prilagođeni LDAP od strane Microsofta i Sambe.
- Microsoft Windows domena o Windows domena. To je u osnovi Microsoft mreža.
- Microsoft kontroler domene o Kontroler domene.
- Kerberos je prilagodio i Microsoft i Samba.
Ne smijemo zbuniti a Usluga direktorija o Usluga direktorija sa a Aktivni direktorij o Active Directory. Prvi mogu ili ne moraju ugostiti Kerberos provjeru autentičnosti, ali ne nude uslugu Microsoft Network koju pruža Windows domena niti imaju Windows kontroler domene kao takav.
Usluga direktorija ili Usluga direktorija može se koristiti za provjeru autentičnosti korisnika u mješovitoj mreži sa UNIX / Linux i Windows klijentima. U posljednjem slučaju, program mora biti instaliran na svakom klijentu koji djeluje kao posrednik između Usluge direktorija i samog Windows klijenta, poput Slobodnog softvera. stranica.
Usluga direktorija sa OpenLDAP-om
- Polazimo od čiste instalacije - bez grafičkog sučelja - Debiana 8 "Jessie", s istim "glavnim" imenom stroja koji se koristi za NIS instalaciju, kao i konfiguracija mrežnog sučelja i /etc/resolv.conf datoteku. Na ovaj novi server instaliramo ntp, bind9 i isc-dhcp-server, ne zaboravljajući globalne provjere ispravnog rada tri prethodne usluge.
root @ master: ~ # aptitude instaliraj slapd ldap-utils Konfiguracija paketa ┌─────────────────────┤ Slapd konfiguracija ├─────────────────────┐ │ Unesite lozinku za administratorski unos vašeg LDAP │ │ direktorija. │ │ │ │ Administratorska lozinka: │ │ │ │ ******** _________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────┘
Provjeravamo početnu konfiguraciju
root @ master: ~ # slapcat dn: dc = swl, dc = ventilator objectClass: top objectClass: dcObject objectClass: organizacija o: swl.fan DC: SWL structuralObjectClass: organizacija entryUUID: c8510708-da8e-1036-8fe1-71d022a16904 creatorsName: cn = admin, dc = swl, dc = unos ventilator createTimestamp20170531205219: 20170531205219.833955ZN ulazak createTimestamp000000 : 000ZN000000 unos Z # 20170531205219 # XNUMX # XNUMX modifikatorIme: cn = admin, dc = swl, dc = fan modifyTimestamp: XNUMXZ dn: cn = admin, dc = swl, dc = ventilator objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin Opis: LDAP administratora userPassword :: e1NTSEF9emJNSFU1R3l2OWVEN0pmTmlYOVhKSUF4ekY1bU9YQXc = structuralObjectClass: organizationalRole entryUUID: c851178e- da8fe1036e entrySw8d-da2fe71 entrySw022c16904e-da20170531205219fe20170531205219.834422e-000000 entrySw000e-da000000fe20170531205219e = entrySXNUMX entrySwXNUMXe-daXNUMXfeXNUMXeXNUMXpmTmlYOVhKSUXNUMX entrySXNUMXe-XNUMXe-entry = cXNUMXe XNUMXZ # XNUMX # XNUMX # XNUMX modifiersName: cn = admin, dc = swl, dc = fan modifyTimestamp: XNUMXZ
Modificiramo datoteku /etc/ldap/ldap.conf
root @ master: ~ # nano /etc/ldap/ldap.conf BASE dc = swl, dc = URI ventilatora ldap: // localhost
Organizacione jedinice i opšta grupa «korisnici»
Dodajemo minimalno potrebne organizacione jedinice, kao i Posix grupu «korisnici» u koju ćemo članove učlaniti, po uzoru na mnoge sisteme koji imaju grupu «korisnici«. Nazivamo ga imenom «korisnici» kako ne bismo ulazili u moguće sukobe s grupom «korisnik"sistema.
root @ master: ~ # nano base.ldif dn: ou = people, dc = swl, dc = fan objectClass: organizationUnit ou: people dn: ou = groups, dc = swl, dc = fan objectClass: organisationUnit ou: groups dn: cn = users, ou = groups, dc = swl, dc = fan objectClass: posixGroup cn: users gidNumber: 10000 root @ master: ~ # ldapadd -x -D cn = admin, dc = swl, dc = fan -W -f base.ldif Unesite LDAP lozinku: dodavanje novog unosa "ou = people, dc = swl, dc = fan" dodavanje novog unosa "ou = groups, dc = swl, dc = fan"
Provjeravamo dodane unose
root @ master: ~ # ldapsearch -x ou = ljudi # people, swl.fan dn: ou = people, dc = swl, dc = fan objectClass: organisationUnit ou: people root @ master: ~ # ldapsearch -x ou = grupe # grupe, swl.fan dn: ou = grupe, dc = swl, dc = fan objektKlasa: organizacijskaJedinica ou: grupe root @ master: ~ # ldapsearch -x cn = korisnici # korisnici, grupe, swl.fan dn: cn = korisnici, ou = grupe, dc = swl, dc = ventilator objectClass: posixGroup cn: users gidNumber: 10000
Dodamo nekoliko korisnika
Lozinka koju moramo proglasiti u LDAP-u mora se dobiti putem naredbe slappasswd, koji vraća šifriranu SSHA lozinku.
Lozinka za korake korisnika:
root @ master: ~ # slappasswd Nova lozinka: Ponovo unesite novu lozinku: {SSHA}Fn8Juihsr137u8KnxGTNPmnV8ai//0lp
Lozinka za korisničke legole
root @ master: ~ # slappasswd Nova lozinka: Ponovo unesite novu lozinku: {SSHA}rC50/W3kBmmDd+8+0Lz70vkGEu34tXmD
Lozinka za korisnika gandalf
root @ master: ~ # slappasswd Nova lozinka: Ponovo unesite novu lozinku: {SSHA} oIVFelqv8WIxJ40r12lnh3bp + SXGbV + u root @ master: ~ # nano users.ldif dn: uid = strides, ou = people, dc = swl, dc = fan objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: strides cn: strides givenName: Strides sn: El Rey userPassword: {SSHA}Fn8Juihsr137u8KnxGTNPmnV8ai//0lp uidNumber: 10000 gidBroj: 10000 mail: striders@swl.fan gecos: Strider El Rey loginShell: / bin / bash homeDirectory: / home / strider dn: uid = legolas, ou = people, dc = swl, dc = fan objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: legolas cn: legolas cn: legolas cn: legolas cn: legolas cn: legolas : Legolas sn: Archer userPassword: {SSHA}rC50/W3kBmmDd+8+0Lz70vkGEu34tXmD uidNumber: 10001 gidBroj: 10000 mail: legolas@swl.fan gecos: Legolas Archer loginShell: / bin / bash homeDirectory: / home / legolas dn: uid = gandalf, ou = people, dc = swl, dc = fan objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: gandalf cName: gandalf cName: gandalf cName: gandalf cName Gandalf sn: Korisnik čarobnjakaPassword: {SSHA} oIVFelqv8WIxJ40r12lnh3bp + SXGbV + u uidNumber: 10002 gidBroj: 10000 mail: gandalf@swl.fan gecos: Gandalf Čarobnjak loginShell: / bin / bash homeDirectory: / home / gandalf root @ master: ~ # ldapadd -x -D cn = admin, dc = swl, dc = fan -W -f users.ldif Unesite LDAP lozinku: dodavanje novog unosa "uid = koraci, ou = ljudi, dc = swl, dc = fan" dodavanje novog unosa "uid = legolas, ou = people, dc = swl, dc = fan" dodavanje novog unosa "uid = gandalf, ou = ljudi, dc = swl, dc = fan "
Provjeravamo dodane unose
root @ master: ~ # ldapsearch -x cn = koraci root @ master: ~ # ldapsearch -x uid = koraci
Upravljamo bazom podataka slpad pomoću pomoćnih programa konzole
Mi odabiremo paket ldapscripts za takav zadatak. Postupak instalacije i konfiguracije je sljedeći:
root @ master: ~ # aptitude instaliraj ldapscripts root @ master: ~ # mv /etc/ldapscripts/ldapscripts.conf \ /etc/ldapscripts/ldapscripts.conf.original root @ master: ~ # nano /etc/ldapscripts/ldapscripts.conf SERVER = localhost BINDDN = 'cn = admin, dc = swl, dc = fan' BINDPWDFILE = "/ etc / ldapscripts / ldapscripts.passwd" SUFFIX = 'dc = swl, dc = fan' GSUFFIX = 'ou = groups' USUFFIX = 'ou = people' # MSUFFIX = 'ou = Computers' GIDSTART = 10001 UIDSTART = 10003 # MIDSTART = 10000 # OpenLDAP naredbe klijenta LDAPSEARCHBIN = "/ usr / bin / ldapsearch" LDAPADDBIN = "/ usr / bin / ldapadd" LDAPDELETEBIN / usr / bin / ldapdelete "LDAPMODIFYBIN =" / usr / bin / ldapmodify "LDAPMODRDNBIN =" / usr / bin / ldapmodrdn "LDAPPASSWDBIN =" / usr / bin / ldappasswd "GCLASS =" posixTEMPL = itd. /ldapadduser.template "PASSWORDGEN =" eho% u "
Primijetite da skripte koriste naredbe paketa ldap-utils. Trči dpkg -L ldap-utils | grep / bin da znaju šta su.
root @ master: ~ # sh -c "echo -n 'admin-password'> \ /etc/ldapscripts/ldapscripts.passwd " root @ master: ~ # chmod 400 /etc/ldapscripts/ldapscripts.passwd root @ master: ~ # cp /usr/share/doc/ldapscripts/examples/ldapadduser.template.sample \ /etc/ldapscripts/ldapdduser.template root @ master: ~ # nano /etc/ldapscripts/ldapadduser.template dn: uid = , , objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: cn: dato ime: sn: displayName: uidNumber: gidNumber: 10000 homeDirectory: loginShell: mail: @ swl.fan gekoni: opis: Korisnički račun root @ master: ~ # nano /etc/ldapscripts/ldapscripts.conf ## uklanjamo komentar UTEMPLATE = "/ etc / ldapscripts / ldapadduser.template"
Dodamo korisnika "bilbo" i postajemo članom grupe "korisnici"
root @ master: ~ # ldapadduser bilbo korisnici [dn: uid = bilbo, ou = people, dc = swl, dc = fan] Unesite vrijednost za "givenName": Bilbo [dn: uid = bilbo, ou = people, dc = swl, dc = fan] Unesite vrijednost za " sn ": Bagins [dn: uid = bilbo, ou = people, dc = swl, dc = fan] Unesite vrijednost za" displayName ": Bilbo Bagins Uspješno dodan korisnik bilbo u LDAP Uspješno postavljena lozinka za korisnika bilbo root @ master: ~ # ldapsearch -x uid = bilbo # bilbo, people, swl.fan dn: uid = bilbo, ou = people, dc = swl, dc = fan objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: bilbo cn: bilbo givenName: Bilbo sn: Bagins displayName: Bilbo Bagins uidNumber: 10003 gidBroj: 10000 homeDirectory: / home / bilbo loginShell: / bin / bash mail: bilbo@swl.fan gecos: bilbo opis: Korisnički račun
Da biste vidjeli heš lozinke bilbo korisnika, potrebno je izvršiti upit s autentifikacijom:
root @ master: ~ # ldapsearch -x -D cn = admin, dc = swl, dc = fan -W uid = bilbo
Da bismo izbrisali bilbo korisnika izvršavamo:
root @ master: ~ # ldapdelete -x -D cn = admin, dc = swl, dc = fan -W uid = bilbo, ou = people, dc = swl, dc = fan Unesite LDAP lozinku: root @ master: ~ # ldapsearch -x uid = bilbo
Upravljamo slapd bazom podataka putem web sučelja
Imamo funkcionalnu uslugu direktorija i želimo njome lakše upravljati. Postoji mnogo programa dizajniranih za ovaj zadatak, poput phpldapadmin, ldap-account-manageritd., koji su dostupni direktno iz spremišta. Uslugom direktorija takođe možemo upravljati putem Apache Directory Studio, koju moramo preuzeti s Interneta.
Za više informacija posjetite https://blog.desdelinux.net/ldap-introduccion/, i sljedećih 6 članaka.
LDAP klijent
Stage:
Recimo da imamo tim mail.swl.fan kao mail server implementiran kao što smo vidjeli u članku Postfix + Dovecot + Squirrelmail i lokalni korisnici, koji je razvijen na CentOS-u, može poslužiti kao vodič za Debian i mnoge druge Linux distribucije. Želimo da, pored lokalnih korisnika koje smo već izjavili, i korisnika pohranjenih u OpenLDAP bazi podataka koja postoji u master.swl.fan. Da bismo postigli gore navedeno moramo «mapirati»LDAP korisnicima kao lokalnim korisnicima na serveru mail.swl.fan. Ovo rješenje vrijedi i za bilo koju uslugu zasnovanu na PAM provjeri autentičnosti. Opšti postupak za Debian, je sljedeće:
root @ mail: ~ # aptitude instaliraj libnss-ldap libpam-ldap ldap-utils ┌────────────────────┤ Konfiguracija libnss-ldap ├─────────────────────┐ │ Unesite URI („Uniform Resource Identifier“ ili │ │ Uniform Resource Identifier) LDAP poslužitelja. Ovaj niz je sličan │ │ «ldap: //: / ». Možete i │ │ koristiti «ldaps: // » ili "ldapi: //". Broj porta nije obavezan. │ │ │ │ Preporučuje se upotreba IP adrese kako bi se izbjegao neuspjeh kada usluge naziva domene │ │ nisu dostupne. RI │ │ │ URI LDAP poslužitelja: │ │ │ │ ldap: //master.swl.fan__________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ───────────────────────────┘ ┌───────────────────── ┤ Konfiguracija libnss-ldap ├──────────────────────┐ │ Unesite razlikovno ime (DN) baze pretraživanja LDAP. Sites │ Mnoge web stranice koriste komponente domene u tu svrhu. Na primjer, domena "example.net" koristiće │ │ "dc = example, dc = net" kao istaknuto ime baze pretraživanja. │ │ │ │ Ugledno ime (DN) baze pretraživanja: │ │ │ │ dc = swl, dc = fan ____________________________________________________________ │ │ │ │ │ │ │ └──────────────────────────────────────────– ────────────────────────────┘ ┘─────────────────── ──┤ Konfiguracija libnss-ldap ├──────────────────────┐ │ Unesite verziju LDAP protokola koju bi ldapns trebao koristiti. Preporučuje se upotreba najvećeg dostupnog broja verzije. │ │ │ │ LDAP verzija koja će se koristiti: │ │ │ │ 3 │ │ 2 │ │ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libnss-ldap │──────────────────────┐ │ Izaberite koji će se račun koristiti za nss upite s │ │ root privilegijama. │ │ │ Napomena: Da bi ova opcija funkcionirala, računu su potrebne dozvole da bi mogao pristupiti LDAP atributima koji su povezani s korisničkim shadow │ unosima „sjene“, kao i lozinkama korisnika i │ │ grupa . │ │ │ │ LDAP račun za root: │ │ │ │ cn = admin, dc = swl, dc = fan ___________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libnss-ldap │─────────────────────┐ │ Unesite lozinku koja će se koristiti kada libnss-ldap pokušava │ │ provjeriti autentičnost u LDAP direktorij s korijenskim LDAP računom. │ │ │ │ Lozinka će biti spremljena u zasebnu datoteku │ │ ("/etc/libnss-ldap.secret") kojoj može pristupiti samo root. You │ │ │ Ako unesete praznu lozinku, stara lozinka će se ponovo koristiti. │ │ │ │ Lozinka za root LDAP račun: │ │ │ │ ******** ________________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ────────────────────────────┘ ┌──────────────────── ─┤ Konfiguracija libnss-ldap ├──────────────────────┐ │ │ │ nsswitch.conf ne upravlja se automatski │ │ │ │ Morate izmijeniti svoju datoteku "/etc/nsswitch.conf "da koristim LDAP izvor podataka ako želite da libnss-ldap paket radi. │ │ Možete koristiti uzorak datoteke │ │ u "/usr/share/doc/libnss-ldap/examples/nsswitch.ldap" kao primjer konfiguracije nsswitch ili │ │ možete je kopirati u svoju trenutnu konfiguraciju. │ │ │ │ Imajte na umu da prije uklanjanja ovog paketa može biti prikladno │ │ ukloniti "ldap" unose iz datoteke nsswitch.conf, tako da će osnovne usluge continue │ nastaviti raditi. │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libpam-ldap ├──────────────────────┐ │ │ │ Ova opcija omogućava alatima za lozinke koji koriste PAM za promjenu lokalnih lozinki. │ │ │ │ Lozinka za LDAP račun administratora bit će pohranjena u zasebnoj │ │ datoteci koju administrator može pročitati samo administrator. Option │ │ │ Ovu opciju treba onemogućiti ako se "/ etc" montira preko NFS-a. │ │ │ │ Želite li dopustiti LDAP-ovom administratorskom računu da se ponaša kao administrator │ lokalni administrator? │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libpam-ldap │──────────────────────┐ │ │ │ Odaberite hoće li LDAP poslužitelj prisiliti identifikaciju prije nego što dobije te unose oktenera. Setting │ │ │ Ova postavka je rijetko potrebna. │ │ │ │ Da li je korisnik potreban za pristup LDAP bazi podataka? │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libpam-ldap ├──────────────────────┐ │ Unesite ime administratorskog računa LDAP-a. Account │ │ │ Ovaj će se račun automatski koristiti za upravljanje bazom podataka, jer │ mora imati odgovarajuće administrativne privilegije. Account │ │ │ LDAP račun administratora: │ │ │ │ cn = admin, dc = swl, dc = fan ___________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ ┌─────────────────── ──┤ Konfiguracija libpam-ldap ├──────────────────────┐ │ Unesite lozinku za administratorski račun. │ │ │ │ Lozinka će biti spremljena u datoteku "/etc/pam_ldap.secret". Administrator │ will će biti jedini koji može pročitati ovu datoteku i omogućit će │ │ libpam-ldap da automatski kontrolira upravljanje vezama u bazi podataka │ │. You │ │ │ Ako ovo polje ostavite prazno, prethodna spremljena lozinka │ │ ponovo će se koristiti. Lozinka administratora LDAP-a: │ │ │ │ ******** _________________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘ root @ mail: ~ # nano /etc/nsswitch.conf # /etc/nsswitch.conf # # Primjer konfiguracije funkcionalnosti GNU Name Service Switch. # Ako imate instalirane pakete `glibc-doc-reference 'i` info', pokušajte: # `info libc" Prekidač usluge imena "'za informacije o ovoj datoteci. passwd: compat ldap grupa: compat ldap sjena: kompakt ldap gshadow: datoteke domaćini: datoteke dns mreže: protokoli datoteka: db datoteke usluge: db datoteke eteri: db datoteke rpc: db datoteke netgroup: nis
Uredimo datoteku /etc/pam.d/common-password, idemo u red 26 i eliminiramo vrijednost «use_authtok":
root @ mail: ~ # nano /etc/pam.d/common-password # # /etc/pam.d/common-password - moduli povezani sa lozinkom zajednički za sve usluge # # Ova datoteka je uključena iz ostalih PAM konfiguracijskih datoteka specifičnih za uslugu, # i treba sadržavati listu modula koji definišu usluge koje treba # koristi se za promjenu korisničkih lozinki. Zadana postavka je pam_unix. # Objašnjenje opcija pam_unix: # # Opcija "sha512" omogućava slane SHA512 lozinke. Bez ove opcije, # zadana je Unix kripta. Prethodna izdanja koristila su opciju "md5". # # Opcija "nejasna" zamjenjuje staru opciju `OBSCURE_CHECKS_ENAB 'u # login.defs. # # Pogledajte druge stranice pam_unix za ostale opcije. # Od pam 1.0.1-6, ovom datotekom prema zadanim postavkama upravlja pam-auth-update. # Da biste ovo iskoristili, preporučuje se da konfigurirate bilo koji # lokalni modul prije ili nakon zadanog bloka i koristite # pam-auth-update za upravljanje odabirom drugih modula. Pogledajte detalje # pam-auth-update (8). # ovdje su moduli po paketu (blok "Primarni") lozinka [uspjeh = 2 zadana vrijednost = zanemarivanje] pam_unix.so nejasan sha512 lozinka [uspjeh = 1 user_unknown = ignore default = die] pam_ldap.so try_first_pass # evo rezervnog postupka ako nijedan modul ne uspije lozinku koja je potrebna pam_deny.so # grudite stek pozitivnom povratnom vrijednošću ako ga već nema; # ovo nas izbjegava da vratimo grešku samo zato što ništa ne postavlja kôd uspjeha # budući da će gornji moduli samo preskakati lozinku potrebnu pam_permit.so # i evo još modula po paketu (blok "Dodatni") # kraj pam- auth-update config
U slučaju da nam zatreba Lokalna prijava korisnika pohranjenih u LDAP-u i želimo da se njihove mape kreiraju automatski kući, moramo urediti datoteku /etc/pam.d/common-session i dodajte sljedeći redak na kraj datoteke:
sesija opcionalno pam_mkhomedir.so skel = / etc / skel umask = 077
U ranije razvijenom primjeru usluge OpenLDAP direktorija, jedini lokalni korisnik koji je stvoren bio je korisnik buzz, dok u LDAP-u kreiramo korisnike koraci, Legolas, gandalf, y bilbo. Ako su do sada napravljene konfiguracije ispravne, tada bismo trebali moći navesti lokalne korisnike i one koji su mapirani kao lokalni, ali pohranjeni na udaljenom LDAP poslužitelju:
root @ mail: ~ # getent passwd buzz: x: 1001: 1001: Buzz Debian First OS ,,,: / home / buzz: / bin / bash Koraci: x: 10000: 10000: Koraci El Rey: / home / koraci: / bin / bash legole: x: 10001: 10000: Legolas Archer: / home / legolas: / bin / bash gandalf: x: 10002: 10000: Gandalf Čarobnjak: / home / gandalf: / bin / bash bilbo: x: 10003: 10000: bilbo: / home / bilbo: / bin / bash
Nakon promjena u provjeri autentičnosti sistema, valja ponovno pokrenuti poslužitelj ako se ne suočavamo s kritičnom uslugom:
root @ mail: ~ # ponovno pokretanje
Kasnije započinjemo lokalnu sesiju na serveru mail.swl.fan s vjerodajnicama korisnika pohranjenim u LDAP bazi podataka master.swl.fan. Možemo se pokušati prijaviti putem SSH-a.
buzz @ sysadmin: ~ $ ssh gandalf @ mail gandalf @ mail lozinka: Stvaranje direktorija '/ home / gandalf'. Programi uključeni u Debian GNU / Linux sistem su besplatni softver; tačni uslovi distribucije za svaki program opisani su u pojedinačnim datotekama u / usr / share / doc / * / copyright. Debian GNU / Linux dolazi s APSOLUTNO BEZ JAMSTVA, u mjeri u kojoj to dopušta važeći zakon. gandalf @ mail: ~ $ su Lozinka: root @ mail: / home / gandalf # getent group zujanje: x: 1001: korisnici: *: 10000: root @ mail: / home / gandalf # exit izlaz gandalf @ mail: ~ $ ls -l / home / ukupno 8 drwxr-xr-x 2 zujanje zujanje 4096 17. juni 12:25 zujanje drwx ------ 2 korisnici gandalfa 4096 17. juni 13:05 gandalf
Usluga direktorija implementirana na nivou poslužitelja i klijenta radi ispravno.
Kerberos
Sa Wikipedije:
- Kerberos je protokol za provjeru autentičnosti računarske mreže koji je kreirao MIT koji omogućava dva računara na nesigurnoj mreži da međusobno sigurno dokazuju svoj identitet. Njegovi dizajneri prvo su se fokusirali na model klijent-server, a on pruža međusobnu provjeru autentičnosti: i klijent i server međusobno provjeravaju identitet. Poruke za autentifikaciju zaštićene su radi sprečavanja prisluškivanje y ponoviti napade.
Kerberos se temelji na simetričnoj kriptografiji ključeva i zahtijeva pouzdanu treću stranu. Pored toga, postoje proširenja protokola da bi se mogla koristiti kriptografija asimetričnog ključa.
Kerberos je zasnovan na Needham-Schroeder protokol. Koristi pouzdanu treću stranu, nazvanu "Centar za distribuciju ključeva" (KDC), koja se sastoji od dva odvojena logička dijela: "Authentication Server" (AS ili Authentication Server) i «server za izdavanje karata» (TGS ili Ticket Granting Server). Kerberos radi na bazi "ulaznica", koje služe za dokazivanje identiteta korisnika.
Kerberos održava bazu podataka tajnih ključeva; Svaki entitet na mreži - bio on klijent ili server - dijeli tajni ključ poznat samo sebi i Kerberosu. Poznavanje ovog ključa služi za dokazivanje identiteta entiteta. Za komunikaciju između dva entiteta, Kerberos generira ključ sesije koji mogu koristiti za osiguranje svojih problema.
Mane Kerberosa
De Osigurano:
iako Kerberos uklanja uobičajenu sigurnosnu prijetnju, može biti teško implementirati iz različitih razloga:
- Migriranje korisničkih lozinki iz standardne baze podataka lozinki UNIX, poput / etc / passwd ili / etc / shadow, u bazu podataka Kerberos lozinke, može biti dosadno i ne postoji brzi mehanizam za izvršenje ovog zadatka.
- Kerberos pretpostavlja da je svakom korisniku pouzdano, ali koristi nepouzdanu mašinu na nepouzdanoj mreži. Njegov glavni cilj je spriječiti slanje nešifriranih lozinki preko mreže. Međutim, ako bilo koji drugi korisnik, osim odgovarajućeg korisnika, ima pristup automatu za izdavanje ulaznica (KDC) za provjeru autentičnosti, Kerberos bi bio u opasnosti.
- Da bi aplikacija koristila Kerberos, kôd mora biti modificiran da uputi odgovarajuće pozive Kerberos knjižnicama. Aplikacije koje su modificirane na ovaj način smatraju se kerberizovanim. Za neke aplikacije to može biti prevelik napor programiranja zbog veličine aplikacije ili njenog dizajna. Za ostale nekompatibilne aplikacije, promjene u načinu komunikacije mrežnog servera i njegovih klijenata moraju se izvršiti; opet, ovo može potrajati poprilično programiranje. Generalno, aplikacije s zatvorenim kodom koje nemaju Kerberos podršku obično su najproblematičnije.
- Konačno, ako odlučite koristiti Kerberos na svojoj mreži, morate shvatiti da je to izbor sve ili ništa. Ako odlučite koristiti Kerberos na svojoj mreži, morate imati na umu da ako lozinka bude proslijeđena službi koja ne koristi Kerberos za autentifikaciju, riskirate da paket može biti presretnut. Stoga vaša mreža neće imati koristi od korištenja Kerberosa. Da biste svoju mrežu zaštitili Kerberosom, trebali biste koristiti samo kerberizovane verzije svih klijent / poslužiteljskih aplikacija koje šalju nešifrirane lozinke ili ne koriste nijednu od ovih aplikacija na mreži.
Ručna primjena i konfiguriranje OpenLDAP-a kao pozadinskog Kerberos-a nije lak zadatak. Međutim, kasnije ćemo vidjeti da se Samba 4 Active Directory - Domain Controller integrira na transparentan način za Sysadmin, DNS poslužitelj, Microsoftovu mrežu i njegov Domain Controller, LDAP server kao Back-End gotovo svih svojih objekata i usluga provjere autentičnosti zasnovana na Kerberosu kao temeljne komponente Active Directory u Microsoftovom stilu.
Do danas nismo imali potrebu za implementacijom "Kerberizovane mreže". Zbog toga nismo pisali o tome kako implementirati Kerberos.
Samba 4 Active Directory - kontroler domene
Važno:
Ne postoji bolja dokumentacija od stranice wiki.samba.org. Sysadmin vredan soli treba posjetiti tu stranicu - na engleskom jeziku - i pregledati veliki broj stranica posvećenih Sambi 4, koje je napisao sam tim Samba. Ne vjerujem da na Internetu postoji dokumentacija koja bi je zamijenila. Usput, promatrajte broj posjeta odražen na dnu svake stranice. Primjer toga je da je posjećena vaša glavna stranica ili «Glavna stranica» 276,183 puta do danas 20. juna 2017. u 10:10 po istočnom standardnom vremenu. Pored toga, dokumentacija se održava vrlo ažurnom, jer je ta stranica izmijenjena 6. juna.
Sa Wikipedije:
Samba je besplatna implementacija Microsoft Windows protokola za dijeljenje datoteka (ranije nazvan SMB, nedavno preimenovan u CIFS) za sisteme slične UNIX-u. Na taj način je moguće da računari sa GNU / Linux, Mac OS X ili Unix generalno izgledaju kao serveri ili djeluju kao klijenti u Windows mrežama. Samba takođe omogućava korisnicima da se potvrde kao primarni kontroler domene (PDC), kao član domene, pa čak i kao domena Active Directory za mreže zasnovane na Windowsu; osim što može služiti redove za ispis, dijeljene direktorijume i provjeriti autentičnost sa vlastitom korisničkom arhivom.
Među Unix-sličnim sistemima na kojima se Samba može pokrenuti su GNU / Linux distribucije, Solaris i različite BSD varijante među da možemo pronaći Appleov Mac OS X Server.
Samba 4 AD-DC sa svojim internim DNS-om
- Polazimo od čiste instalacije - bez grafičkog sučelja - Debiana 8 "Jessie".
Početne provjere
root @ master: ~ # ime hosta majstor root @ master: ~ # ime hosta --fqdn master.swl.fan root @ master: ~ # ip addr 1: šta: mtu 65536 qdisc noqueue stanje NEPOZNATA grupa zadana veza / povratna veza 00: 00: 00: 00: 00: 00 brd 00: 00: 00: 00: 00: 00: 127.0.0.1: 8: 6 inet 1/128 domet host lo valid_lft zauvijek preferiran_lft zauvijek inet2 :: 0/1500 domet domena valid_lft zauvijek preferirani_lft zauvijek 1000: eth00: mtu 0 qdisc pfifo_fast stanje NEPOZNATO default grupa qlen 29 veza / eter 80: 3c: 3: XNUMX: XNUMXb: XNUMXf brd ff: ff: ff: ff: ff: ff inet 192.168.10.5/24 brd 192.168.10.255 opseg globalni eth0 valid_lft zauvijek prefer_lft zauvijek inet6 fe80 :: 20c: 29ff: fe80: 3b3f / 64 opseg link valid_lft zauvijek preferiran_lft zauvijek root @ master: ~ # cat /etc/resolv.conf search swl.fan nameserver 127.0.0.1
- S kojim deklariramo granu glavni samo, više je nego dovoljno za naše svrhe.
root @ master: ~ # cat /etc/apt/sources.list Deb http://192.168.10.1/repos/jessie-8.6/debian/ jessie glavni Deb http://192.168.10.1/repos/jessie-8.6/debian/security/ jessie / ažuriranja glavni
Postfix od strane Exima i komunalnih usluga
root @ master: ~ # aptitude instaliraj postfix htop mc deborphan ┌────────────────────────┤ Konfiguracija postfiksa ├───────────────────── ────┐ │ Odaberite vrstu konfiguracije poštanskog poslužitelja koja najbolje odgovara vašim │ │ potrebama. │ │ │ │ Nema konfiguracije: │ │ Zadržava trenutnu konfiguraciju netaknutom. │ │ Internet stranica: │ │ Pošta se šalje i prima direktno putem SMTP-a. │ │ Internet s „smarthost“: │ │ Pošta se prima izravno pomoću SMTP-a ili pokretanjem │ │ alata poput „fetchmail“. Odlazna pošta se šalje pomoću smart │ "pametnog hosta". │ │ Samo lokalna pošta: │ │ Jedina pošta koja se isporučuje je za lokalne korisnike. Ne │ │ postoji mreža. │ │ │ │ Generički tip konfiguracije pošte: │ │ │ │ Nema konfiguracije │ │ Internet stranica │ │ Internet sa „smarthost“ │ │ Satelitski sistem │ │ Samo lokalna pošta │ │ │ │ │ │ │ │ │ └───────────────────────────────────────────── ────────────────────────────┘ ┌──────────────────── ─────┤ Konfiguracija postfiksa ├─────────────────────────┐ │ „Ime sistema pošte“ naziv je domene koja │ │ se koristi za "kvalificiranje" _ALL_ adresa e-pošte bez imena domene. To uključuje poštu na i iz "root"-a: nemojte tjerati │ da vaš uređaj šalje e-poštu sa root@example.org do │ │ manje od root@example.org pitan. │ │ │ │ Drugi programi će koristiti ovo ime. To mora biti jedinstveno domain │ kvalificirano ime domene (FQDN). │ │ │ │ Stoga, ako je adresa e-pošte na lokalnom računaru │ │ something@example.org, ispravna vrijednost za ovu opciju bit će example.org. │ │ │ │ Ime sistema pošte: │ │ │ │ master.swl.fan ___________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ─────────────────────────────┘
Čistimo
root @ master: ~ # pročišćavanje sposobnosti ~ c root @ master: ~ # aptitude install -f root @ master: ~ # sposobnost čista root @ master: ~ # aptitude autoclean
Instaliramo zahtjeve za kompajliranje Samba 4 i ostali neophodni paketi
root @ master: ~ # aptitude instaliraj acl attr autoconf bison \
build-bitno debhelper dnsutils docbook-xml docbook-xsl flex gdb \
krb5-korisnik libacl1-dev libaio-dev libattr1-dev libblkid-dev libbsd-dev \
libcap-dev libcups2-dev libgnutls28-dev libjson-perl \
libldap2-dev libncurs5-dev libpam0g-dev libparse-yapp-perl \
libpopt-dev libreadline-dev perl perl-moduli pkg-config \
python-all-dev python-dev python-dnspython python-kripto \
xsltproc zlib1g -dev libgpgme11 -dev python -gpgme python -m2crypto \
libgnutls28-dbg gnutls-raz ldap-utils krb5-config
┌───────────────┤ Konfiguriranje provjere autentičnosti Kerberos ├───────────────┐ │ Kada korisnici pokušaju koristiti Kerberos i navedu ime │ │ nalogodavca ili korisnika, bez razjašnjavanja kojoj administrativnoj Kerberos domeni pripada principal principal, sistem preuzima zadano the │ područje. Podrazumijevano područje može se koristiti i kao područje carberos usluge koja se izvodi na lokalnom računalu. │ │ Tipično je zadani domen veliko ime lokalne DNS │ │ domene. Default │ │ │ Kerberos verzija 5 zadana oblast: │ │ │ │ SWL.FAN __________________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ────────────────────────────┘ ┌───────────────┤ Kerberos ├───────────────┐ │ Unesite imena poslužitelja Kerberos u SWL.FAN područje of │ Kerberos, odvojene razmacima. │ │ │ │ Kerberos serveri za vaše carstvo: │ │ │ │ master.swl.fan ___________________________________________________________ │ │ │ │ │ │ │ └───────────────────────────────────────────── ────────────────────────────┘ ┌───────────────┤ Konfiguriranje provjere autentičnosti Kerberos ├───────────────┐ │ Unesite ime administrativnog poslužitelja (promjena lozinke) │ │ za područje Kerberos SWL.FAN.
Gore navedeni postupak potrajao je malo vremena jer još uvijek nismo instalirali nijednu DNS uslugu. Međutim, domenu ste pravilno odabrali prema postavkama datoteke / etc / hosts. Zapamtite to u datoteci /etc/resolv.conf proglasili smo kao poslužitelj imena domene IP 127.0.0.1.
Sada konfigurišemo datoteku / etc / ldap / ldap / conf
root @ master: ~ # nano /etc/ldap/ldap.conf
BASE dc = swl, dc = URI ventilatora ldap: //master.swl.fan
Za upite pomoću naredbe ldapsearch napravljeni od root korisnika su tog tipa ldapsearch -x -W cn = xxxx, moramo stvoriti datoteku /root/.ldapsearch sa slijedećim sadržajem:
root @ master: ~ # nano .ldaprc BINDDN CN = Administrator, CN = Korisnici, DC = swl, DC = ventilator
Sistem datoteka mora podržavati ACL - Lista za kontrolu pristupa
root @ master: ~ # nano / etc / fstab # / etc / fstab: statične informacije o sistemu datoteka. # # Koristite 'blkid' za ispis univerzalno jedinstvenog identifikatora za # uređaj; ovo se može koristiti s UUID = kao robusniji način imenovanja uređaja # koji radi čak i ako se dodaju i uklone diskovi. Pogledajte fstab (5). # # # / bio je na / dev / sda1 tokom instalacije UUID = 33acb024-291b-4767-b6f4-cf207a71060c / ext4 user_xattr, acl, barrier = 1, noatime, error = remount-ro 0 1 # swap je bio uključen / dev / sda5 tokom instalacije UUID = cb73228a-615d-4804-9877-3ec225e3ae32 none swap sw 0 0 / dev / sr0 / media / cdrom0 udf, iso9660 user, noauto 0 0 root @ master: ~ # mount -a root @ master: ~ # dodirni test_acl.txt root @ master: ~ # setfattr -n user.test -v test testing_acl.txt root @ master: ~ # setfattr -n security.test -v test2 testing_acl.txt root @ master: ~ # getfattr -d testing_acl.txt # datoteka: testing_acl.txt user.test = "test" root @ master: ~ # getfattr -n security.test -d testing_acl.txt # datoteka: testing_acl.txt security.test = "test2" root @ master: ~ # setfacl -mg: adm: rwx testing_acl.txt root @ master: ~ # getfacl testing_acl.txt # datoteka: testing_acl.txt # vlasnik: root # grupa: root korisnik :: rw- grupa :: r-- grupa: adm: rwx maska :: rwx ostalo :: r--
Dobivamo izvor Samba 4, kompajliramo ga i instaliramo
Preporučuje se preuzimanje izvorne datoteke verzije Stabilan sa stranice https://www.samba.org/. U našem primjeru preuzimamo verziju samba-4.5.1.tar.gz prema fascikli / opt.
root @ master: ~ # cd / opt
root @ master: / opt # wget https://download.samba.org/pub/samba/stable/samba-4.5.1.tar.gz
root @ master: / opt # tar xvfz samba-4.5.1.tar.gz
root @ master: / opt # cd samba-4.5.1 /
Opcije konfiguracije
Ako želimo prilagoditi opcije konfiguracije, izvršavamo:
root @ master: /opt/samba-4.5.1# ./configure --help
i s velikom pažnjom odaberite one koji su nam potrebni. Preporučljivo je provjeriti može li se preuzeti paket instalirati na Linux distribuciju koju koristimo, a to je u našem slučaju Debian 8.6 Jessie:
root @ master: /opt/samba-4.5.1# ./configure dist check
Konfiguriramo, kompajliramo i instaliramo samba-4.5.1
- Iz prethodno instaliranih zahtjeva i 8604 datoteka (koje čine kompaktnu samba-4.5.1.tar.gz) teške oko 101.7 megabajta - uključujući mape source3 i source4 teške oko 61.1 megabajta - dobit ćemo zamjenu za Active Directory u Microsoftovom stilu, kvaliteta i stabilnosti više nego prihvatljiv za bilo koje proizvodno okruženje. Moramo istaknuti rad tima Samba u isporuci besplatnog softvera Samba 4.
Naredbe u nastavku su klasične za kompajliranje i instaliranje paketa iz njihovih izvora. Moramo biti strpljivi dok traje čitav proces. To je jedini način da se dobiju valjani i tačni rezultati.
root @ master: /opt/samba-4.5.1# ./configure --with-systemd - čaše za onesposobljavanje root @ master: /opt/samba-4.5.1# napraviti root @ master: /opt/samba-4.5.1# napravi instalaciju
Tokom procesa naredbe napraviti, možemo vidjeti da su izvori Samba 3 i Samba 4. Zbog toga Team Samba potvrđuje da je njegova verzija 4 prirodno ažuriranje verzije 3, kako za Domain Controllere zasnovane na Samba 3 + OpenLDAP, tako i serveri datoteka ili starije verzije Samba 4.
Pribavljanje Sambe
Kao DNS ćemo koristiti SAMBA_INTERNAL. En https://wiki.samba.org/index.php?title=Samba_Internal_DNS_Back_End naći ćemo više informacija. Kada nas pitaju za lozinku korisnika administratora, moramo upisati jedan od najmanje 8 znakova, a takođe, slovima - velikim i malim slovima - i brojevima.
Prije nego što prijeđemo na pripremu i kako bismo olakšali život, dodamo put izvršnih datoteka Samba u našoj datoteci .bashrcZatim se zatvorimo i ponovo prijavimo.
root @ master: ~ # nano .bashrc # ~ / .bashrc: izvršava bash (1) za školjke koje se ne prijavljuju. # Napomena: PS1 i umask su već postavljeni u / etc / profile. Ovo vam ne bi trebalo # ako ne želite drugačije zadane postavke za root. # PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ h: \ w \ $' # umask 022 # Možete komentirati sljedeće redove ako želite da `ls 'bude obojen: # export LS_OPTIONS =' - color = auto '# eval "` dircolors` "# alias ls =' ls $ LS_OPTIONS '# alias ll =' ls $ LS_OPTIONS -l '# alias l =' ls $ LS_OPTIONS -lA '# # Još nekoliko pseudonima kako bi se izbjegle greške : # alias rm = 'rm -i' # alias cp = 'cp -i' # alias mv = 'mv -i' proglasi -x PATH = "/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: \ / sbin: / bin: / usr / local / samba / sbin: / usr / local / samba / bin " root @ master: ~ # izlaz odjava Veza sa masterom je zatvorena. xeon @ sysadmin: ~ $ ssh root @ master root @ master: ~ # odredba domene samba-alata --use-rfc2307 --interactive Područje [SWL.FAN]: SWL.FAN Domen [SWL]: SWL Uloga poslužitelja (dc, član, samostalni) [dc]: dc DNS pozadina (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: SAMBA_INTERNAL IP adresa DNS prosljeđivača (napišite 'ništa' da biste onemogućili prosljeđivanje) [192.168.10.5]: 8.8.8.8 Lozinka administratora: Vaša lozinka2017 Ponovo unesite lozinku: Vaša lozinka2017 Traženje IPv4 adresa Traženje IPv6 adresa Neće biti dodijeljena IPv6 adresa Postavljanje share.ldb Postavljanje tajni.ldb Postavljanje registra Postavljanje baze privilegija Postavljanje idmap db Postavljanje SAM db Postavljanje sam.ldb particija i postavki Postavljanje gore sam.ldb rootDSE Prethodno učitavanje sheme Samba 4 i AD Dodavanje domeneDN: DC = swl, DC = ventilator Dodavanje konfiguracijskog spremnika Postavljanje sheme sam.ldb Postavljanje konfiguracijskih podataka sam.ldb Postavljanje specifikatora prikaza Modificiranje specifikacija prikaza Dodavanje korisničkog spremnika Izmjena kontejnera za korisnike Dodavanje kontejnera za računare Izmjena kontejnera za računare Postavljanje podataka sam.ldb Postavljanje dobro poznatih principa sigurnosti Postavljanje korisnika i grupa sam.ldb Postavljanje samostalnog pridruživanja Dodavanje DNS računa Izrada CN = MicrosoftDNS, CN = Sistem, DC = swl, DC = fan Stvaranje DomainDnsZones i ForestDnsZones particija Popunjavanje DomainDnsZones i ForestDnsZones particija Postavljanje sam.ldb rootDSE oznake kao sinhroniziranih GUID-ova odredbi popravljanjaKonfiguracija Kerberos prikladna za Samba 4 generirana je na /usr/local/samba/private/krb5.conf Postavljanje lažnih postavki yp servera Jednom kada su gornje datoteke instalirane, vaš Samba4 server bit će spreman za upotrebu uloge servera: aktivna domena direktorija kontroler Ime hosta: master NetBIOS Domena: SWL DNS Domena: swl.fan DOMEN SID: S-1-5-21-32182636-2892912266-1582980556
Ne zaboravimo kopirati Kerberos konfiguracijsku datoteku kako je naznačeno izlazom rezervisanja:
root @ master: ~ # cp /usr/local/samba/private/krb5.conf /etc/krb5.conf
Da ne upišete naredbu samba-alat sa vašim punim imenom, kreiramo simboličku vezu sa kratkim imenom alatka:
root @ master: ~ # ln -s / usr / local / samba / bin / samba-tool / usr / local / samba / bin / tool
Instaliramo NTP
Temeljni dio Active Directory-a je usluga mrežnog vremena.Kao što se provjera autentičnosti vrši putem Kerberosa i njegovih ulaznica, sinkronizacija vremena sa Samba 4 AD-DC je od vitalnog značaja.
root @ master: ~ # aptitude instaliraj ntp root @ master: ~ # mv /etc/ntp.conf /etc/ntp.conf.original root @ master: ~ # nano /etc/ntp.conf driftfile /var/lib/ntp/ntp.drift ntpsigndsocket / usr / local / samba / var / lib / ntp_signd statistika loopstats peerstats clockstats filegen loopstats datoteka loopstats type day enable filegen peerstats file peerstats type day enable filegenstats file clockstats clock type day server 192.168.10.1 ograničiti -4 zadani kod notrap nomodify nopeer noquery ograničiti -6 zadati kod notrap nomodify nopeer noquery ograničiti zadani mssntp ograničiti 127.0.0.1 ograničiti :: 1 emitiranje 192.168.10.255 root @ master: ~ # ponovno pokretanje usluge ntp root @ master: ~ # status ntp usluge root @ master: ~ # tail -f / var / log / syslog
Ako prilikom ispitivanja syslog koristeći gornju naredbu ili koristeći journalctl -f dobivamo poruku:
19. juna 12:13:21 master ntpd_intres [1498]: roditelj je umro prije nego što smo završili, izlazak
moramo ponovo pokrenuti uslugu i pokušati ponovo. Sada kreiramo fasciklu ntp_signd:
root @ master: ~ # ls -ld / usr / local / samba / var / lib / ntp_signd
ls: / usr / local / samba / var / lib / ntp_signd ne može se pristupiti: datoteka ili direktorij ne postoji
root @ master: ~ # mkdir / usr / local / samba / var / lib / ntp_signd
root @ master: ~ # chown root: ntp / usr / local / samba / var / lib / ntp_signd /
root @ master: ~ # chmod 750 / usr / local / samba / var / lib / ntp_signd / root @ master: ~ # chmod gs, g + x / usr / local / samba / var / lib / ntp_signd /
# Kao što je zatraženo na samba.wiki.org
root @ master: ~ # ls -ld / usr / local / samba / var / lib / ntp_signd
drwxr-x --- 2 korijen ntp 4096 19. lipnja 12:21 / usr / local / samba / var / lib / ntp_signd
Konfigurišemo početak Sambe koristeći systemd
root @ master: ~ # nano /lib/systemd/system/samba-ad-dc.service [Usluga] Tip = forking PIDFile = / usr / local / samba / var / run / samba.pid LimitNOFILE = 16384 # EnvironmentFile = - / etc / conf.d / samba ExecStart = / usr / local / samba / sbin / samba ExecReload = / usr / bin / kill -HUP $ MAINPID [Instaliraj] WantedBy = multi-user.target root @ master: ~ # systemctl omogući samba-ad-dc root @ master: ~ # ponovno pokretanje root @ master: ~ # systemctl status samba-ad-dc root @ master: ~ # systemctl status ntp
Lokacije datoteka Samba 4 AD-DC
ALL -minus novostvorena usluga samba-ad-dc.service- datoteke su u:
root @ master: ~ # ls -l / usr / local / samba / ukupno 32 drwxr-sr-x 2 osnovno osoblje 4096 19. jun 11:55 am drwxr-sr-x 2 root staff 4096 19. jun 11:50 itd drwxr-sr-x 7 root staff 4096 19. jun 11:30 uključiti drwxr-sr-x 15 root staff 4096 19. jun 11:33 LIB drwxr-sr-x 7 root staff 4096 19. jun 12:40 privatan drwxr-sr-x 2 root staff 4096 19. jun 11:33 sbin drwxr-sr-x 5 root staff 4096 19. jun 11:33 udio drwxr-sr-x 8 root staff 4096 19. jun 12:28 ima
u najboljem UNIX stilu. Uvijek je poželjno pregledati različite mape i ispitati njihov sadržaj.
/Usr/local/samba/etc/smb.conf datoteka
root @ master: ~ # nano /usr/local/samba/etc/smb.conf # Globalni parametri [globalno] netbios name = MASTER carstvo = SWL.FAN radna grupa = SWL dns forwarder = 8.8.8.8 serverske usluge = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate , uloga dns poslužitelja = aktivni kontroler domene direktorija dozvoljava dns ažuriranja = samo sigurno idmap_ldb: koristi rfc2307 = da idmap config *: backend = tdb idmap config *: range = 1000000-1999999 ldap server zahtijeva jaku autorizaciju = nema imena printcap = / dev / null [netlogon] path = /usr/local/samba/var/locks/sysvol/swl.fan/scripts samo za čitanje = Ne [sysvol] path = / usr / local / samba / var / locks / sysvol read only = Ne root @ master: ~ # testparm Učitajte konfiguracijske datoteke smb iz /usr/local/samba/etc/smb.conf Obrada odjeljka "[netlogon]" Obrada odjeljka "[sysvol]" Učitana datoteka usluga je u redu. Uloga poslužitelja: ROLE_ACTIVE_DIRECTORY_DC Pritisnite enter da biste vidjeli dump definicija vaše usluge # Globalni parametri [global] realm = SWL.FAN radna grupa = SWL dns forwarder = 192.168.10.1 ldap server zahtijeva jaku autorizaciju = Nema passdb backend = samba_dsdb server role = aktivni direktorij kontrolera domena rpc_server: tcpip = ne rpc_daemon: spoolssd = ugrađeni rpc_server: spoolss = ugrađeni rpc_server: winreg = ugrađeni rpc_server: ntsvcs = ugrađeni rpc_server: EventLog = ugrađeni rpc_server: srvsvc = ugrađen rvcct_server = koristiti vanjski rvcct_server = koristiti vanjski rvcct_server = koristiti vanjski rvcct_server : eksterne cijevi = true idmap config *: range = 1000000-1999999 idmap_ldb: use rfc2307 = yes idmap config *: backend = tdb map archive = No map readonly = no store dos attributes = yes vfs objects = dfs_samba4 acl_xattr [netlogon] path = / usr / local / samba / var / locks / sysvol / swl.fan / skripte samo za čitanje = Ne [sysvol] put = / usr / local / samba / var / locks / sysvol samo za čitanje = Ne
Minimalne provjere
root @ master: ~ # show nivoa domene alata Razina funkcije domene i šume za domenu 'DC = swl, DC = fan' Razina funkcije šume: (Windows) 2008 R2 Razina funkcije domene: (Windows) 2008 R2 Najniža razina funkcije DC: (Windows) 2008 R2 root @ master: ~ # ldapsearch -x -W root @ master: ~ # alat dbcheck Provjera 262 objekta Provjera 262 objekta (0 grešaka) root @ master: ~ # kinit Administrator Lozinka za Administrator@SWL.FAN: root @ master: ~ # klist -f Predmemorija ulaznica: DATOTEKA: / tmp / krb5cc_0 Glavni zadani: Administrator@SWL.FAN Važeći početak Istječe Usluga glavna 19. 06:17:12 53. 24:19:06 krbtgt/SWL.FAN@SWL.FAN obnavljati do 20 06:17:12, zastave: RIA root @ master: ~ # kdestroy root @ master: ~ # klist -f klist: Datoteka predmemorije vjerodajnica '/ tmp / krb5cc_0' nije pronađena root @ master: ~ # smbclient -L localhost -U% Domena = [SWL] OS = [Windows 6.1] Server = [Samba 4.5.1] Sharename Tip Komentar --------- ---- ------- netlogon Disk sysvol Disk IPC $ IPC IPC Usluga (Samba 4.5.1) Domena = [SWL] OS = [Windows 6.1] Server = [Samba 4.5.1] Komentar servera --------- ------- Master Workgroup Master ---- ----- ------- root @ master: ~ # smbclient // localhost / netlogon -UAdministrator -c 'ls' Unesite administratorsku lozinku: Domena = [SWL] OS = [Windows 6.1] Server = [Samba 4.5.1]. D 0 Pon Jun 19 11:50:52 2017 .. D 0 Pon Jun 19 11:51:07 2017 19091584 blokova veličine 1024. Dostupni su 16198044 blokovi root @ master: ~ # tool dns serverinfo master -U administrator root @ master: ~ # host -t SRV _ldap._tcp.swl.fan _ldap._tcp.swl.fan ima SRV zapis 0 100 389 master.swl.fan. root @ master: ~ # host -t SRV _kerberos._udp.swl.fan _kerberos._udp.swl.fan ima SRV zapis 0 100 88 master.swl.fan. root @ master: ~ # host -t Master.swl.fan master.swl.fan ima adresu 192.168.10.5 root @ master: ~ # host -t SOA swl.fan swl.fan ima SOA zapis master.swl.fan. hostmaster.swl.fan. 1 900 600 86400 3600 root @ master: ~ # host -t NS swl.fan swl.fan server poslužitelja imena master.swl.fan. root @ master: ~ # host -t MX swl.fan swl.fan nema MX zapis root @ master: ~ # samba_dnsupdate --verbose root @ master: ~ # lista korisnika alata Administrator krbtgt gost root @ master: ~ # lista grupa alata # Rezultat je gomila grupa. ;-)
Upravljamo novoinstaliranom Samba 4 AD-DC
Ako želimo izmijeniti istek administratorske lozinke u danima; složenost lozinki; minimalna dužina lozinke; minimalno i maksimalno trajanje lozinke - za nekoliko dana; i promijenite administratorsku lozinku deklariranu tijekom rezervisanja, moramo izvršiti sljedeće naredbe pomoću vrijednosti prilagođene vašim potrebama:
root @ master: ~ # alat
Upotreba: samba-alat Glavni alat za upravljanje sambom. Opcije: -h, --help prikaži ovu poruku pomoći i izađi Opcije verzije: -V, --verzija Prikaži broj verzije Dostupni podnaredbi: dbcheck - Provjeri ima li lokalnih AD baza podataka na greške. delegiranje - upravljanje delegacijama. dns - Upravljanje uslugom domena (DNS). domena - upravljanje domenom. drs - Upravljanje uslugama replikacije direktorija (DRS). dsacl - DS ACL manipulacija. fsmo - Upravljanje ulogama fleksibilnih pojedinačnih glavnih operacija (FSMO). gpo - upravljanje objektima grupne politike (GPO). grupa - Upravljanje grupom. ldapcmp - Uporedite dvije ldap baze podataka. ntacl - NT ACL manipulacija. procesi - Navedite procese (za pomoć u otklanjanju grešaka na sistemima bez setproctitle). rodc - Upravljanje kontrolerom domene samo za čitanje (RODC). web lokacije - upravljanje web lokacijama. spn - Upravljanje imenom glavnog imena usluge (SPN). testparm - Sintaksa provjeri konfiguracijsku datoteku. vrijeme - Dohvatite vrijeme na serveru. korisnik - Upravljanje korisnicima. Za dodatnu pomoć o određenoj podnaredbi, upišite: samba-tool (-h | --pomoć)
root @ master: ~ # korisnik alata setexpiry administrator --noexpiry
root @ master: ~ # set postavki lozinke domene alata --min-pwd-length = 7
root @ master: ~ # set postavki lozinke domene alata --min-pwd-age = 0
root @ master: ~ # set postavki lozinke domene alata --max-pwd-age = 60
root @ master: ~ # alat korisnik setpassword --filter = samaccountname = Administrator --newpassword = Passw0rD
Dodamo nekoliko DNS zapisa
root @ master: ~ # alat dns
Upotreba: samba-tool dns Upravljanje uslugom domena (DNS). Opcije: -h, --help prikaži ovu poruku pomoći i izađi Dostupne podnaredbe: dodaj - Dodaj brisanje DNS zapisa - Izbriši upit DNS zapisa - Zatraži ime. roothints - upite za korijenske upute. serverinfo - Upit za informacije o serveru. ažuriranje - Ažuriranje DNS zapisa zonu kreirati - Stvoriti zonu. zonedelete - Izbrišite zonu. zoneinfo - Upit za informacije o zoni. zonelist - Upit za zone. Za dodatnu pomoć o određenoj podnaredbi, upišite: samba-tool dns (-h | --pomoć)
Mail server
root @ master: ~ # tool dns add master swl.fan mail 192.168.10.9 -U administrator root @ master: ~ # tool dns dodaj master swl.fan swl.fan MX "mail.swl.fan 10" -U administrator
Fiksna IP adresa drugih servera
root @ master: ~ # tool dns dodaj master swl.fan sysadmin A 192.168.10.1 -U administrator root @ master: ~ # tool dns add master swl.fan fileserver A 192.168.10.10 -U administrator root @ master: ~ # tool dns dodaj master swl.fan proxy A 192.168.10.11 -U administrator root @ master: ~ # tool dns add master swl.fan chat 192.168.10.12 -U administrator
Reverse Zone
root @ master: ~ # tool dns zonecreate master 10.168.192.in-addr.arpa -U administrator Lozinka za [SWL \ administrator]: Zona 10.168.192.in-addr.arpa je uspješno kreirana root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 5 PTR master.swl.fan. -Upravnik root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 9 PTR mail.swl.fan. -Upravnik root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 1 PTR sysadmin.swl.fan. -Upravnik root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 10 PTR fileserver.swl.fan. -Administrator root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 11 PTR proxy.swl.fan. -Upravnik root @ master: ~ # tool dns add master 10.168.192.in-addr.arpa 12 PTR chat.swl.fan. -Upravnik
Čekovi
root @ master: ~ # tool dns query master swl.fan mail ALL -U administrator Lozinka za [SWL \ administrator]: Ime =, Zapisi = 1, Djeca = 0 A: 192.168.10.9 (zastave = f0, serijski = 2, ttl = 900) root @ master: ~ # host master master.swl.fan ima adresu 192.168.10.5 root @ master: ~ # host sysadmin sysadmin.swl.fan ima adresu 192.168.10.1 root @ master: ~ # host mail mail.swl.fan ima adresu 192.168.10.9 root @ master: ~ # host chat chat.swl.fan ima adresu 192.168.10.12 root @ master: ~ # proxy host proxy.swl.fan ima adresu 192.168.10.11 root @ master: ~ # host fajl poslužitelj fileserver.swl.fan ima adresu 192.168.10.10 root @ master: ~ # host 192.168.10.1 1.10.168.192.in-addr.arpa pokazivač imena domene sysadmin.swl.fan. root @ master: ~ # host 192.168.10.5 5.10.168.192.in-addr.arpa pokazivač imena domene master.swl.fan. root @ master: ~ # host 192.168.10.9 9.10.168.192.in-addr.arpa pokazivač imena domene mail.swl.fan. root @ master: ~ # host 192.168.10.10 10.10.168.192.in-addr.arpa pokazivač imena domene fileserver.swl.fan. root @ master: ~ # host 192.168.10.11 11.10.168.192.in-addr.arpa pokazivač imena domene proxy.swl.fan. root @ master: ~ # host 192.168.10.12 12.10.168.192.in-addr.arpa pokazivač imena domene chat.swl.fan.
Za znatiželjnike
root @ master: ~ # ldbsearch -H /usr/local/samba/private/sam.ldb.d/ \ DC = DOMENI DNSZONE, DC = SWL, DC = FAN.ldb | grep dn:
Dodamo korisnike
root @ master: ~ # korisnik alata
Upotreba: korisnik samba alata Upravljanje korisnicima. Opcije: -h, --help prikaži ovu poruku pomoći i izađi Dostupne podkomande: dodaj - Stvori novog korisnika. create - Stvorite novog korisnika. delete - Izbrišite korisnika. onesposobiti - onemogućiti korisnika. enable - Omogućite korisnika. getpassword - Nabavite polja lozinke korisničkog / računarskog računa. lista - Lista svih korisnika. lozinka - Promenite lozinku za korisnički račun (onaj koji se daje u potvrdi identiteta). setexpiry - Postavite istek korisničkog računa. setpassword - postavite ili resetirajte lozinku korisničkog računa. syncpasswords - sinhronizujte lozinku korisničkih računa. Za dodatnu pomoć o određenoj podnaredbi, upišite: korisnik samba-alata (-h | --pomoć)
root @ master: ~ # korisnik alata kreira trancos Trancos01
Korisnik 'trancos' je uspješno kreiran
root @ master: ~ # korisnik alata kreira gandalf Gandalf01
Korisnik 'gandalf' je uspješno kreiran
root @ master: ~ # korisnik alata kreira legolas Legolas01
Korisnik 'legolas' je uspješno kreiran
root @ master: ~ # lista korisnika alata
Administrator gandalf legolas korača krbtgt Guest
Administracija putem grafičkog sučelja ili putem web klijenta
Posjetite wiki.samba.org za detaljne informacije o tome kako instalirati Microsoft RSAT o Alati za udaljeno administriranje servera. Ako vam nisu potrebne klasične politike koje nudi Microsoft Active Directory, možete instalirati paket ldap-account-manager koji nudi jednostavan interfejs za administraciju putem web pretraživača.
Paket programa Microsoft Remote Server Administration Tools (RSAT) uključen je u operativni sistem Windows Server.
Pridružujemo domenu Windows 7 klijentu nazvanom "sedam"
Kako u mreži nemamo DHCP poslužitelj, prvo što moramo učiniti je konfigurirati mrežnu karticu klijenta s fiksnom IP adresom, proglasiti da će primarni DNS biti IP mreže samba-ad-dci provjerite je li aktivirana opcija "Registriraj adresu ove veze u DNS". Nije besposleno provjeriti da li je naziv «sedam»Još nije registrovan u Sambinom internom DNS-u.
Nakon što pridružimo računalo domeni i ponovo ga pokrenemo, pokušajmo se prijaviti s korisnikom «koraci«. Provjerit ćemo da li sve funkcionira u redu. Takođe se preporučuje provjera dnevnika Windows klijenta i provjera ispravnosti sinhronizacije vremena.
Administratori s nekim Windows iskustvom će otkriti da će sve provjere na klijentu dati zadovoljavajuće rezultate.
Resumen
Nadam se da je članak koristan čitateljima zajednice. DesdeLinux.
Zbogom!
Dug, ali detaljan članak, vrlo dobar korak po korak kako učiniti sve.
Ističem NIS, istina je da, iako znam za njegovo postojanje, nikada zapravo nisam znao kako to funkcionira, jer iskreno govoreći uvijek mi je ostavljao dojam da je praktično mrtav pored LDAP-a i Sambe 4.
PS: Čestitamo na vašem novom ličnom projektu! Šteta što nećete nastaviti pisati ovdje, ali barem postoji mjesto koje će vas pratiti.
Ogroman vodič kao i uvijek za moje favorite, Pozdrav Fico.
Čestitam na projektu.
Odličan je odjeljak o NIS-u, simpatiziram Gonzala Martineza, kratko sam ga znao, ali nisam imao pojma kako ga primijeniti i u kojim se situacijama koristi.
Hvala vam jednom na ogromnom "trupcu" teorijskog i praktičnog članka.
Napokon novi uspjesi u vašem novom projektu «gigainside».
Puno hvala svima na komentaru !!!.
Saludos
smb.conf koji pokazujete nema nikakve veze s LDAP-om, je li tako namjerno ili sam nešto ostavio?
mussol: Ovo je Samba 4 Active Directory Domain Controller koji već ima ugrađeni LDAP server.
Možete li komentirati kako spojiti mac (jabuku) sa samba 4 AD-DC?
Hvala.
Kako si;
Hvala na priručniku, sjajno je. Imam pitanje o poruci koja mi se pojavljuje.
root @ AD: ~ # nping –tcp -p 53 -c 3 ad.rjsolucionessac.com
Nije uspjelo rješavanje datog imena hosta / IP-a: ad.rjsolucionessac.com. Imajte na umu da ne možete koristiti opsege IP stilova „/ mask“ I „1-4,7,100-“
Ne mogu pronaći važeći cilj. Molimo provjerite jesu li navedeni hostovi IP adrese u standardnom zapisu ili imena hostova koja se mogu riješiti DNS-om
root @ AD: ~ #