Utiliser un partage SMB avec Samba et des permissions Active Directory

Adminstration Server Linux, Adminstration Server Windows, Debian, Sécurité No Comments »

Avec ce mémo, vous allez mettre en place un partage SMB à l’aide de Samba tout en utilisant authentification et les permissions de votre domaine Active Directory
Le serveur Samba tourne sur Debian 6.0 et le DC sur Windows Server 2008 R2

Installation des paquets

Avant d’installer assurez-vous d’avoir un serveur à jour

aptitude update && aptitude safe-upgrade

Ensuite installez les paquets suivant

aptitude install samba winbind krb5-user libkrb53 ntpd ntpdate

Heure du serveur

Avant de commencer il est primordial de synchroniser l’heure du serveur sur le DC notament pour l’authentification kerberos

/etc/.init.d/ntp stop
vi /etc/ntp.conf

Configurez la ligne server avec l’ip de votre DC

ntpdate <ip_du_dc>
/etc/.init.d/ntp start

Configuration de Kerberos

vi /etc/krb5.conf

Attention respectez scrupuleusement les majuscules ( à adapter : DOMAINE.COM, server_dc1, domaine, DOMAINE)

[libdefaults]
	default_realm = DOMAINE.COM
	clock_skew = 300
	ticket_lifetime = 24000
	default_tkt_enctypes = des3-cbc-sha1 rc4-hmac des-cbc-md5 des-cbc-crc
	default_tgs_enctypes = des3-cbc-sha1 rc4-hmac des-cbc-md5 des-cbc-crc
	dns_lookup_realm = false
	dns_lookup_kdc = true
[realms]
	DOMAINE.COM = {
		kdc = server_dc1
		admin_server = server_dc1
		default_domain = DOMAINE.COM
	}
[domain_realm]
	.domaine = DOMAINE
	domaine = DOMAINE

Configuration de Samba

vi /etc/samba/smb.conf
[global]
	netbios name = srv-shares
	workgroup = DOMAINE
	server string = Backup Server
	realm = DOMAINE.COM
	security = ADS
	encrypt passwords = true
	password server = server_dc1.domaine.com
	idmap uid = 10000-20000
	idmap gid = 10000-20000
	winbind enum groups = yes
	winbind enum users = yes
	winbind use default domain = yes

[shares]
	path = /home/shares
	comment = shares
	writable = yes
	browseable=yes
	read only = no
	inherit acls = yes
	inherit permissions = yes
	create mask = 700
	directory mask = 700
	valid users = @"DOMAINE+Domain Users"
	admin users = @"DOMAINE+Domain Admins"

Configuration de nsswitch

Pour que Samba puisse utiliser les utilisateurs et groupes de l’AD, il faut configurer nsswitch afin de lui ajouter Winbind comme possibilité d’authentification

vi /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat winbind
group:          compat winbind
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Redémarrage des services

/etc/init.d/winbind stop && /etc/init.d/samba restart && /etc/init.d/winbind start

Jonction à l’Active Directory

net join -U Administrator

Ensuite pour tester

kinit administrator
klist
wbinfo -u
wbinfo -g

Vous pouvez à présent configurer les permissions avec les commandes habituelles.

chown DOMAINE\user1 repdeuser1
chgrp DOMAINE\groupe1 repdegrp1

Installation Serveur Mail Postfix, Amavisd, Mysql, Spamassassin, Dspam, Courier-IMAP

Adminstration Server Linux 17 Comments »

Ce tutorial a été intégralement repris du site  http://www.starbridge.org et a été réalisé par tonio. Il est distribué sous licence creativecommons  Creative Commons License

Le système sur lequel est basé ce document est une DEBIAN stable (Lenny). La version ancienne Stable (Etch) à la date de rédaction présente quelques différences sur certains paquets (changement de nom lors des montées de version : voir le site Debian pour les versions équivalentes) mais cela n’entraîne aucun problème dans les fonctionnalités. Le tuto est aussi compatible avec la version Testing.

Par souci de clarté, on a detaillé chaque action le plus précisement possible, et ce pour ne pas réduire le tuto à une simple succession de commandes. Mais cela peut se réveler parfois fastidieux de créer un fichier en copier/coller puis de modifier le mot de passe. (surtout quand il faut modifier plusieurs occurences).

C’est pour cela que l’on trouvera en note en pied de page les commandes rapides pour exécuter certaines actions longues.

Un hyperlien avec un numéro est le signe de l’existence d’une commande rapide. Pratique lorsque l’on refait le tuto (ou pour les fainéants !)

Ce tuto fonctionne également sous Ubuntu mais certains paquets présentent de légères différences. On essaiera de les indiquer si possible.

On utilisera comme serveur IMAP celui de Courier, mais pour ceux qui le souhaitent, nous préciserons la marche à suivre pour installer Dovecot à la place.

On prendra comme base pour l’exemple le domaine starbridge.org
et le hostname du serveur de mail sera spike.

Read the rest of this entry »

S’authentifier sur apache2 avec LDAP

Adminstration Server Linux No Comments »

Nous avons récemment mis en place en serveur LDAP sous OpenLDAP.
On va maintenant configurer apache2 pour qu’il puisse s’authentifier dans le LDAP.

Voici le lien vers la documentation officielle d’apache2 à ce sujet

On va commencer par activer les modules nécessaires d’apache2

a2enmod ldap auth_basic authnz_ldap authz_user

Ensuite vous éditez vos vhosts et ajouter une des configurations suivante entre les balises <Directory>

L’utilisateur doit exister dans l’Organisation Unit Users

AuthType Basic
AuthName "Restricted Area"
AuthLDAPBindDN "uid=read_user,cn=Managers,dc=majorxtrem,dc=be"
AuthLDAPBindPassword "le_pass_de_read_user"
AuthBasicProvider ldap
AuthLDAPURL ldap://127.0.0.1/ou=Users,dc=majorxtrem,dc=be?uid
AuthzLDAPAuthoritative OFF
Require valid-user

L’utilisateur doit exister dans l’Organisation Unit Users et faire partie du groupe Admins

AuthType Basic
AuthName "Restricted Area"
AuthLDAPBindDN "uid=read_user,cn=Managers,dc=majorxtrem,dc=be"
AuthLDAPBindPassword "le_pass_de_read_user"
AuthBasicProvider ldap
AuthLDAPURL ldap://127.0.0.1/ou=Users,dc=majorxtrem,dc=be?uid
AuthzLDAPAuthoritative OFF
AuthLDAPGroupAttribute memberUid
AuthLDAPGroupAttributeIsDN on
Require ldap-group cn=Admins,ou=Groups,dc=comitetig,dc=be

L’utilisateur doit être majorxtrem

AuthType Basic
AuthName "Restricted Area"
AuthLDAPBindDN "uid=read_user,cn=Managers,dc=majorxtrem,dc=be"
AuthLDAPBindPassword "le_pass_de_read_user"
AuthBasicProvider ldap
AuthLDAPURL ldap://127.0.0.1/ou=Users,dc=majorxtrem,dc=be?uid
AuthzLDAPAuthoritative OFF
Require user majorxtrem

On termine en rédémrant apache2

/etc/init.d/apache2 restart

Installation et configuration d’un serveur OpenLDAP sous Debian

Administration des Réseaux, Adminstration Server Linux, Debian 7 Comments »

ldapworm

OpenLDAP est une implémentation libre du protocole LDAP développée par The OpenLDAP Project.
Lightweight Directory Access Protocol (LDAP) est à l’origine un protocole permettant l’interrogation et la modification des services d’annuaire.

Nous allons utiliser le serveur LDAP afin de centraliser les informations utilisateurs des sites et services du serveur. En effet la plus par des services telles que les serveur web, ftp, proxy peuvent s’authentifier sur un serveur LDAP, mais également les CMS les plus populaires.

Avant de commencer l’installation on va vérifier le hostname de la machine

# hostname -f
server.majorxtrem.be

Vous devez obtenir quelque chose de similaire, si ce n’était pas le cas éditer le fichier /etc/hostname afin d’avoir :  nomdelamchine.domaine.com

On commence l’installation par le traditionnel apt-get

apt-get install slapd ldap-utils

Durant l’installation on vous demande simplement le password admin du serveur .

Vous tapez ensuite la commande slappasswd, elle va vous permettre de générer un password SSHA

# slappasswd
New password: toto
Re-enter new password: toto
{SSHA}gHus2hriMC95mCcmPtXbK8Nv/oh2hZy5

Copiez-le on va en avoir besoin dans le fichier de configuration de slapd, il se trouve ici :

vi /etc/ldap/slapd.conf

Vous vérifiez que suffix est égale à :

suffix          "dc=majorxtrem,dc=be"

Et ajouter les lignes :

rootdn          "cn=admin,dc=majorxtrem,dc=be"
rootpw          {SSHA}gHus2hriMC95mCcmPtXbK8Nv/oh2hZy5

On édite également afin que l’annuaire ne soit pas lisible en anonyme

access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=majorxtrem,dc=be" write
        by anonymous auth
        by self write
        by * none

access to *
        by dn="cn=admin,dc=majorxtrem,dc=be" write
        by dn="uid=read_user,cn=Managers,dc=majorxtrem,dc=be" read

On redémarre slpad

/etc/init.d/slapd restart

On va maintenant créer la base de l’annuaire

vi racine.ldif

Et on ajoute les lignes suivantes dedans

# Racine
dn: dc=majorxtrem,dc=be
objectClass: top
objectClass: dcObject
objectClass: organization
o: majorxtrem.be
dc: majorxtrem

# OU Manager
dn: cn=Managers,dc=majorxtrem,dc=be
objectClass: organizationalRole
objectClass: top
cn: Managers

# OU Groups
dn: ou=Groups,dc=majorxtrem,dc=be
objectClass: organizationalUnit
objectClass: top
ou: Groups

# OU Users
dn: ou=Users,dc=majorxtrem,dc=be
objectClass: organizationalUnit
objectClass: top
ou: Users

Ensuite on l’ajoute au LDAP :

ldapadd -f racine.ldif -D "cn=admin,dc=majorxtrem,dc=be" -w toto

À ce stade votre serveur est fonctionnel, on va tous de même installer une interface de gestion en PHP
apt-get install phpldapadmin

L’interface sera accessible via l’url http://ipduserver/phpldapadmin

Loguez vous et ajoutez un utilisateur read_user dans le groupe Manager
Le login est cn=admin,dc=majorxtrem,dc=be, le pass est celui que vous avez généré tous à l’heure

Cliquez sur manager et ensuite sur Create a child

ldap1

Choisissez : Simple Security Object

ldap2

Ensuite remplissez le username, le password et spécifiez SSHA pour l’encryption

ldap3
Ce user servira pour authentifier apache, phpbb & cie pour vérifier le login de vos utilisateurs

Dans un prochain article, on verra comment restrientre via apache l’accés à un dossier via authentification LDAP

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Connexion
ipv6 ready