Strumenti Utente

Strumenti Sito


software:samba

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
software:samba [2020/10/29 21:09]
stefano [idmap SAMBA]
software:samba [2023/04/17 14:25] (versione attuale)
Linea 1: Linea 1:
 +===== Active directory =====
 +Samba come controller di dominio active directory\\
 +Questo progetto prevede l'installazione di Debian\\
 +l'avvio di samba come controller di dominio\\
 +bind come server dns del dominio\\
 +
 +qualche appunto qui\\
 +https://sleeplessbeastie.eu/2022/05/11/how-to-create-samba-active-directory-server/ \\
 +
 +
 +==== installazione di Debian ====
 +Scegliere la lingua\\
 +impostare hostname e dominio. possiamo già scegliere l'FQDN oppure lasciare debian come predefinito. Tanto verrà tutto modificato e controllato dopo.\\
 +configurare rete: se è attivo un dhcp si acquisirà automaticamente un indirizzo altrimenti si imposta un IP (nel mio caso di classe C). verrà comunque tutto controllato e corretto dopo.\\
 +proseguire con il resto dell'installazione. (non rivedo qui i passaggi fondamentali).\\
 +
 +==== preparazione sistema ====
 +disattivazione ipv6 se non lo si vuole usare(aggiungere a /etc/sysctl.conf): \\
 +  net.ipv6.conf.all.disable_ipv6 = 1
 +
 +rendo immediatamente esecutiva la disattivazione del protocollo ipv6 \\
 +  sysctl -p
 +
 +per comodità mia permetto a root di accedere in ssh (modifico /etc/ssh/sshd_config ) \\
 +  permitRootLogin yes
 +riavvio il servizio per attivare la modifica \\
 +  systemctl restart sshd
 +
 +aggiorno i repository \\
 +  apt-get update
 +
 +faccio l'upgrade del sistema \\
 +  apt-get upgrade
 +
 +==== predispongo i dati fondamentali ====
 +
 +imposto il nome host: \\
 +  hostnamectl --static set-hostname adns1.dominio.mio
 +
 +modifico /etc/hosts lasciando solo: \\
 +  127.0.0.1 localhost
 +e commentando tutto il resto\\
 +.\\
 +assicurarsi che il servizio systemd-resolved sia disablilitato \\
 +  systemctl status systemd-resolved.service
 +
 +Il resolver DNS deve puntare al server DNS che verrà  utilizzato in seguito come server d'inoltro quindi imposto nel /etc/resolv.conf : \\
 +
 +  nameserver 192.168.1.9
 +
 +oppure anche altro dns pubblico. nel mio caso ho già un dns mio che risponde internamente al quell'indirizzo\\
 +
 +assegnare ip statico si /etc/network/interface o su file specifico /etc/network/interface/nome \\
 +
 +==== installazione pacchetti ====
 +installo chrony come client e server NTP \\
 +  apt-get install chrony
 +disabilito temporaneamente il servizio \\
 +  systemctl disable --now chrony
 +
 +installo il server DNS \\
 +  apt-get install bind9 bind9utils
 +disabilito temporaneamente il servizio \\
 +  systemctl disable --now named
 +
 +installo samba che diventerà il mio server di dominio che implementa Active Directory e Kerberos che attiverà il servizio di tiket per la sicurezza di accesso alla directory \\
 +  DEBIAN_FRONTEND=noninteractive apt-get install -y samba smbclient winbind krb5-user krb5-config 
 +disabilito temporaneamente il servizio \\
 +  systemctl disable --now samba-ad-dc.service smbd.service nmbd.service winbind.service
 +
 +==== configurazione ====
 +
 +il comando \\
 +  smbd -b 
 +visualizza come è stato costruito samba, e quindi si vedono tutte le impostazioni di base\\
 +quindi permette di visualizzare le directory e i file sui quali lavora samba.\\
 +
 +rimuovo la configurazione di default per samba \\
 +  unlink /etc/samba/smb.conf
 +e kerberos \\
 +  unlink /etc/krb5.conf
 +
 +attenzione a inserire la giusta scheda di rete, il realm e il dominio. la password viene inserita ma poi non funziona. \\
 +
 +  samba-tool domain provision --realm DOMINIO.MIO \
 +  --domain DOMINIO \
 +  --server-role dc \
 +  --dns-backend BIND9_DLZ \
 +  --adminpass oct0passwOrd \
 +  --use-rfc2307 \
 +  --option="interfaces=lo ens33" \
 +  --option="bind interfaces only=yes"
 +
 +modificare il /etc/resolv.conf mettendo il search nel dominio e il nome stesso del server di cui prima ho impostato l'ip statico\\ 
 +
 +  search dominio.mio
 +  nameserver 192.168.1.181
 +
 +copio il file di configurazione di default di kerberos nella posizione corretta \\
 +  cp /var/lib/samba/private/krb5.conf /etc/krb5.conf
 +collego la tabella delle chiavi nell'apposita directory \\
 +  ln -s /var/lib/samba/private/secrets.keytab /etc/krb5.keytab
 +se si vuole si può verificare il contenuto di /etc/krb5.keytab con \\
 +  klist -k /etc/krb5.keytab
 +
 +modificare /etc/samba/smb.conf aggiungendo il forwarder \\
 +
 +  # Global parameters
 +  [global]
 +          bind interfaces only = Yes
 +          interfaces = lo ens33
 +          dns forwarder = 192.168.1.9
 +          netbios name = ADNS1
 +          realm = DOMINIO.MIO
 +          server role = active directory domain controller
 +          server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate
 +          workgroup = DOMINIO
 +          idmap_ldb:use rfc2307 = yes
 +  
 +  [sysvol]
 +          path = /var/lib/samba/sysvol
 +          read only = No
 +  
 +  [netlogon]
 +          path = /var/lib/samba/sysvol/questre.labo/scripts
 +          read only = No
 +
 +manovre relative a ntp (la sincronizzazione del tempo in AD è fondamentale) \\
 +verificare qual'è la directory del socket segnato ntp per samba \\
 +  samba -b | grep NTP_SIGND_SOCKET_DIR
 +
 +se non esiste crearla (e normalmente per una installazione fresh come questa non esiste quindi crearla e assegnargli gli opportuni diritti) \\
 +
 +  mkdir /var/lib/samba/ntp_signd
 +  chgrp _chrony /var/lib/samba/ntp_signd
 +  chmod 750 /var/lib/samba/ntp_signd
 +
 +eliminare questa voce in /etc/chrony/chrony.conf \\
 +  sed -i -e "/\# Use Debian vendor zone./,+2d" /etc/chrony/chrony.conf
 +
 +e aggiungere un nuovo file \\
 +  vi /etc/chrony/sources.d/debian-pool.sources
 +.\\
 +  pool 0.debian.pool.ntp.org iburst
 +  pool 1.debian.pool.ntp.org iburst
 +  pool 2.debian.pool.ntp.org iburst
 +  pool 3.debian.pool.ntp.org iburst
 +
 +aggiungere anche \\
 +  vi /etc/chrony/conf.d/server.conf
 +.\\
 +  bindaddress 192.168.1.181
 +  allow 192.168.1.0/24
 +  ntpsigndsocket  /var/lib/samba/ntp_signd
 +
 +aggiungere anche \\ 
 +  vi /etc/chrony/conf.d/cmd.conf
 +. \\
 +  bindcmdaddress /var/run/chrony/chronyd.sock
 +  cmdport 0
 +
 +avviare il servizio \\
 +  systemctl enable --now  chrony
 +
 +come verificato precedentemente con samba controllare la directory di lavoro di bind per samba \\
 +  smbd -b | grep BINDDNS
 +  
 +in questo caso esiste già \\
 +
 +verificare la versione di bind \\
 +  named -v
 +
 +e controllare nel file /var/lib/samba/bind-dns/named.conf se è abilitata la libreria corrispondente \\
 +aggiungere a /etc/bind/named.conf il percorso della directory bind per samba \\
 +  include "/var/lib/samba/bind-dns/named.conf";
 +
 +aggiungere a /etc/bind/named.conf.options  la tabella delle chiavi di kerberos per gli aggiornamenti DNS (in fondo al file subito dopo "listen-on-v6 { any; };" ) \\
 +
 +  tkey-gssapi-keytab "/var/lib/samba/bind-dns/dns.keytab";
 +
 +abilitare il dns \\
 +  systemctl enable --now named
 +  
 +passiamo a samba \\
 +  systemctl unmask samba-ad-dc.service
 +
 +avviamo il servizio \\
 +  systemctl enable --now samba-ad-dc.service
 +  
 +verificare lo stato del servizio \\
 +  systemctl status samba-ad-dc.service
 +
 +impostare la password dell'administrator \\
 +  samba-tool user setpassword administrator
 +  
 +verificare la lista della zone \\
 +  samba-tool dns zonelist adns1 -U administrator
 +  
 +dall'esito del comando possiamo vedere che manca la zona del reverse \\
 +quindi la creiamo\\
 +  samba-tool dns zonecreate -U administrator adns1.dominio.mio 1.168.192.in-addr.arpa
 +
 +controllare con dig e tutte le varie opzioni le risoluzioni ad esempio \\
 +  dig adns1.dominio.mio +short
 +
 +e anche le informazioni ads \\
 +  net ads info
 +  net ads lookup
 +
 +per tutta la gestione usare il comando samba-tool ricordandosi di aggiungere in fonro -U administrator per applicare modifiche cioè dando il comando come amministratore \\
 +
 +===== debian =====
 +
 Connettersi da linux verso cartelle condivise. (non è banale) almeno per quello che ho capito io.\\ Connettersi da linux verso cartelle condivise. (non è banale) almeno per quello che ho capito io.\\
 Perchè se fossimo semplici utenti Windows non ci sarebbero problemi a collegarsi con l'esplorazione risorse a cartelle condivise senza protezioni quindi libere\\ Perchè se fossimo semplici utenti Windows non ci sarebbero problemi a collegarsi con l'esplorazione risorse a cartelle condivise senza protezioni quindi libere\\
 Ma per linux dobbiamo far installare all'amministratore i seguenti pacchetti:\\ Ma per linux dobbiamo far installare all'amministratore i seguenti pacchetti:\\
  
-==== debian ====+
 S.O.: Debian 8\\ S.O.: Debian 8\\
 Desktop: Xfce\\ Desktop: Xfce\\
software/samba.1604002142.txt.gz · Ultima modifica: 2023/04/17 14:25 (modifica esterna)