{"id":1807,"date":"2015-09-23T14:08:07","date_gmt":"2015-09-23T12:08:07","guid":{"rendered":"http:\/\/blog.sfsoft.it\/?p=1807"},"modified":"2015-09-25T09:01:10","modified_gmt":"2015-09-25T07:01:10","slug":"eseguire-il-join-su-active-directory-da-ubuntu-server-14-04","status":"publish","type":"post","link":"http:\/\/www.sfsoft.it\/blog\/2015\/09\/23\/eseguire-il-join-su-active-directory-da-ubuntu-server-14-04\/","title":{"rendered":"Eseguire il join su Active Directory da Ubuntu Server 14.04"},"content":{"rendered":"<p><span style=\"color: #ff0000;\"><strong>Avviso: <\/strong>Sto notando che nonostante l&#8217;integrazione ed il login con i permessi del dominio funzionino quello che non va tanto sono le condivisioni Samba, nel senso che funzionano solo se prima \u00e8 stato effettuato almeno un login locale, gli utenti con i quali non \u00e8 stato effettuato il login locale non riescono ad accedere alle condivisioni Samba.<\/span><\/p>\n<hr \/>\n<p><strong>Nota:<\/strong> Riprendo l&#8217;articolo gi\u00e0 scritto <a title=\"Eseguire il join su Active Directory da Mint 17 \u201cQiana\u201d\" href=\"http:\/\/blog.sfsoft.it\/2015\/02\/18\/eseguire-il-join-su-active-directory-da-ubuntu-server\/\" target=\"_blank\"><span class=\"item-title\">Eseguire il join su Active Directory da Ubuntu Server<\/span><\/a> e lo adatto alla prova fatta con Ubuntu Server 14.04, ad esempio per creare un server NAS, in quanto il pacchetto PowerBroker Identity Services Open ( PBIS ) pare avere seri problemi con l&#8217;integrazione con Samba 4.<\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<p>Per questa operazione user\u00f2 l&#8217;autenticazione <em>Kerberos<\/em> e i pacchetti <em>realmd<\/em> e <em>sssd<\/em> presenti nei repository ufficiali.<\/p>\n<p>Nella prova ho usato la versione Ubuntu Server LTS 14.04.3.<\/p>\n<p><strong>Nota<\/strong>: onde evitare eventuali problemi di utenza o di profilo si consiglia di avere un utente locale diverso dall&#8217;utente di dominio.<\/p>\n<p>Si installano i pacchetti necessari:<\/p>\n<pre class=\"lang:default decode:true \">sudo apt-get install krb5-user realmd sssd sssd-tools adcli samba-common-bin<\/pre>\n<p>Verr\u00e0 richiesto molto probabilmente il dominio da usare in Kerberos, basta metterlo maiuscolo ( es. DOMAIN.LOC ), nell&#8217;eventualit\u00e0 non venisse richiesto serve andare poi a editare a mano il file <em>\/etc\/krb5.conf<\/em>.<\/p>\n<p>Per testare se l&#8217;autenticazione funziona, proviamo ad aprire un <em>tiket<\/em> con l&#8217;utente amministratore di dominio:<\/p>\n<pre class=\"lang:default decode:true\">sudo kinit administrator@DOMAIN.LOC<\/pre>\n<p>Per verificare che il ticket sia stato rilasciato basta eseguire:<\/p>\n<pre class=\"lang:default decode:true\">sudo klist<\/pre>\n<p>Ora si passa a configurare <em>realmd<\/em>, si deve editare il suo file di configurazione in <em>\/etc\/realmd.conf<\/em>, nel mio caso per\u00f2 il file non esisteva e ho dovuto crearlo:<\/p>\n<pre class=\"lang:default decode:true\">[service]\r\nautomatic-install = no\r\n \r\n[users]\r\ndefault-home = \/home\/%D\/%U\r\ndefault-shell = \/bin\/bash\r\n \r\n[domain.loc]\r\ncomputer-ou = DC=domain,DC=loc\r\nautomatic-id-mapping = yes\r\nfully-qualified-names = no<\/pre>\n<p>Si controlla se il dominio viene rilevato:<\/p>\n<pre class=\"lang:default decode:true \">sudo realm discover domain.loc<\/pre>\n<p>Se \u00e8 tutto corretto si pu\u00f2 procedere all&#8217;associazione:<\/p>\n<pre class=\"lang:default decode:true\">sudo realm join domain.loc<\/pre>\n<p>Se tutto va come dovrebbe si pu\u00f2 poi ad esempio ottenere la lista degli amministratori di dominio:<\/p>\n<pre class=\"lang:default decode:true\">sudo getent group 'Domain Admins'<\/pre>\n<p>Ora \u00e8 possibile eseguire il login alla macchina utilizzando gli utenti di dominio, volendo \u00e8 possibile anche limitare l&#8217;accesso e decidere chi solo pu\u00f2 accedere:<\/p>\n<pre class=\"lang:default decode:true\">sudo realm deny --all\r\nsudo realm permit administrator\r\nsudo realm permit -g 'Domain Admins'<\/pre>\n<p>Per far creare la cartella home al primo accesso occorre modificare il file <em>\/etc\/pam.d\/common-session<\/em> aggiungendo la riga:<\/p>\n<pre class=\"lang:default decode:true\">session required      pam_mkhomedir.so  skel=\/etc\/skel umask=0022<\/pre>\n<p>Per configurare Samba si edita il file <em>smb.conf<\/em>, e si impostano poi i seguenti parametri:<\/p>\n<pre class=\"lang:default decode:true\">[global]\r\n   workgroup = DOMAIN\r\n\r\n[share]\r\n   path = \/path\/to\/share\r\n   read list = @\"Domain Users@DOMAIN.LOC\"\r\n   write list = user@DOMAIN.LOC,@\"group@DOMAIN.LOC\"\r\n   valid users = user@DOMAIN.LOC,@\"group@DOMAIN.LOC\",@\"Domain Users@DOMAIN.LOC\"\r\n   writeable = yes\r\n   public = yes\r\n   browsable = yes<\/pre>\n<p>Dopo volendo \u00e8 possibile anche dare ad un utente o ad un gruppo di dominio i diritti di <em>sudo<\/em>, si esegue il comando <em>visudo<\/em> e si aggiunge a fine file (qui i nomi utente e gruppi vanno senza <em>@DOMAIN.LOC<\/em>):<\/p>\n<pre class=\"lang:default decode:true\">user ALL=(ALL:ALL) ALL\r\n%group ALL=(ALL:ALL) ALL<\/pre>\n<p>Al termine delle operazione \u00e8 consigliato un riavvio della macchina, dopodich\u00e8 \u00e8 possibile eseguire il login come utente di dominio.<\/p>\n<p>Per maggiori informazioni rimando alla documentazione ufficiale e all&#8217;articolo da cui ho preso spunto:<\/p>\n<p><a href=\"http:\/\/koo.fi\/blog\/2015\/06\/16\/ubuntu-14-04-active-directory-authentication\/\" target=\"_blank\">Ubuntu 14.04 Active Directory Authentication<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Avviso: Sto notando che nonostante l&#8217;integrazione ed il login con i permessi del dominio funzionino quello che non va tanto sono le condivisioni Samba, nel senso che funzionano solo se prima \u00e8 stato effettuato almeno un login locale, gli utenti con i quali non \u00e8 stato effettuato il login locale non riescono ad accedere alle [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[15,3,23],"tags":[189,83,16,8,114,190,5],"_links":{"self":[{"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/posts\/1807"}],"collection":[{"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/comments?post=1807"}],"version-history":[{"count":10,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/posts\/1807\/revisions"}],"predecessor-version":[{"id":1817,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/posts\/1807\/revisions\/1817"}],"wp:attachment":[{"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/media?parent=1807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/categories?post=1807"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.sfsoft.it\/blog\/wp-json\/wp\/v2\/tags?post=1807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}