Installation d'un serveur de homedir

De PedroWiki

Introduction

Dans le cadre de la mise à disposition de l'ENT pour les personnels INSA, on a mis en place le serveur diabolo (le pendant de satanas pour les étudiants) afin de fournir aux personnels un espace de stockage.

Comme satanas, diabolo permet d'accéder à son homedir de plusieurs manières:

  • via samba (montage des homedirs lors des sessions Windows, accès par le canal de stockage de l'ENT).
  • via NFS (auto montage du homedir lors de connexions FTP, pour accès depuis des stations Unix).
  • via FTP (pour palier au problème de dépôts multiples et simultanés impossible via le canal de stockage).

L'espace disponible pour chaque utilisateur est de 1Go.

Installation du serveur et des services

Installation du système

  • Installation de l'OS: Red Hat Enterprise Linux Server release 5.2 (Tikanga)
  • Installation des VMWare Tools:
[root@diabolo ~]# mount /dev/cdrom /media/cdrom
[root@diabolo ~]# cd /media/cdrom
[root@diabolo cdrom]# cp VMwareTools-3.0.2-69376.tar.gz /tmp
[root@diabolo cdrom]# cd ..
[root@diabolo ~]# umount /media/cdrom
[root@diabolo ~]# cd /tmp
[root@diabolo tmp]# tar zxvf VMwareTools-3.0.2-69376.tar.gz 
[root@diabolo tmp]# cd vmware-tools-distrib/
[root@diabolo vmware-tools-distrib]# ./vmware-install.pl
[root@diabolo vmware-tools-distrib]#  cd ..
[root@diabolo tmp]# rm -rf /tmp/vmware-tools-distrib/
[root@diabolo tmp]# rm /tmp/VMwareTools-3.0.2-69376.tar.gz 
[root@diabolo tmp]# reboot
  • Nettoyage des services:
[root@diabolo ~]# chkconfig --list
[root@diabolo ~]# chkconfig --level 2345 bluetooth off
[root@diabolo ~]# chkconfig --level 2345 kudzu off
[root@diabolo ~]# chkconfig --level 2345 cups off
[root@diabolo ~]# chkconfig --level 2345 apmd off
[root@diabolo ~]# chkconfig --level 2345 smartd off
[root@diabolo ~]# chkconfig --level 2345 isdn off
[root@diabolo ~]# chkconfig --level 3 nfs on
[root@diabolo ~]# chkconfig --level 3 avahi-daemon off
[root@diabolo ~]# chkconfig --level 3 anacron off
[root@diabolo ~]# chkconfig --level 3 atd off
[root@diabolo ~]# chkconfig --level 3 cpuspeed off

Création de l'espace disque sur la baie de disque

  • Se connecter via un navigateur au gestionnaire EqualLogic de la baie de disque.
  • Création d'un LUN (Logical UNit) au niveau du stockage.
  • Attribution du LUN à Diabolo en Raw Device Mapping.
  • Formatage du LUN depuis diabolo:
[root@diabolo ~]# fdisk /dev/sdb
[root@diabolo ~]# mkfs -t ext3 /dev/sdb1
[root@diabolo ~]# mkdir /perso

Intégration de cet espace disque au système

[root@diabolo ~]# vi /etc/fstab
ajout de la ligne suivante:
/dev/sdb1               /perso                  ext3    defaults,usrquota,grpquota        1 1
[root@diabolo ~]# vi /etc/mtab
ajout de la ligne suivante:
/dev/sdb1 /perso ext3 rw,usrquota,grpquota 0 0

Configuration de NFS

[root@diabolo ~]# vi /etc/ldap.conf
paramètres ajoutés au fichier:
host annuaire.insa-rennes.fr
base dc=insa-rennes,dc=fr
pam_filter objectclass=posixAccount
nss_base_passwd         ou=people,dc=insa-rennes,dc=fr?sub
nss_base_group          ou=groupsys,dc=insa-rennes,dc=fr?sub
[root@diabolo ~]# vi /etc/nsswitch.conf
paramètres ajoutés au fichier:
passwd:     files ldap
shadow:     files
group:      files ldap
[root@diabolo ~]# /etc/init.d/nfs start
[root@diabolo ~]# vi /etc/exports
paramètres ajoutés au fichier:
/perso 10.5.1.0/24(rw,sync,no_root_squash)
[root@diabolo ~]# /etc/init.d/portmap restart
[root@diabolo ~]# service nfs restart

Configuration de samba

  • Paramétrage de smb.conf:
[root@diabolo ~]# vi /etc/samba/smb.conf
paramètres ajoutés au fichier:
[global]
        workgroup = ADMR
        netbios name = DIABOLO
        server string = Serveur Samba Diabolo
        log file = /var/log/samba/smbd.log
        max log size = 5000
        #security = DOMAIN
        security = ADS
        #security = user
        use kerberos keytab = true
        #password server = 10.1.64.3
        password server = 10.1.64.1
        realm = ADMR.INSA
        encrypt passwords = yes
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        #remote announce = 10.1.64.3
        remote announce = 10.1.64.1
        winbind use default domain = yes
        winbind trusted domains only = yes
        idmap uid = 10000-20000
        #idmap gid = 10000-20000
        idmap gid = 500-20000
        load printers = no
        show add printer wizard = no
        printing = none
        printcap name = /dev/null
        disable spoolss = yes 

#============================ Share Definitions ============================== 

[homes]
        comment = Répertoires personnels réseau
        browseable = no
        writable = yes
        path = /perso/%S
        create mask = 700
        directory mask = 711
        force create mode = 700
        inherit acls = yes
  • Paramétrage de krb5.conf:
[root@diabolo ~]# vi /etc/krb5.conf
paramètres ajoutés au fichier:
[libdefaults]
 default_realm = ADMR.INSA
 dns_lookup_realm = false
 dns_lookup_kdc = false

[realms]
 ADMR.INSA = {
  kdc = castor.admr.insa
  admin_server = castor.admr.insa
  default_domain = ADMR.INSA
 }

[domain_realm]
 .admr.insa = ADMR.INSA
 admr.insa = ADMR.INSA
  • Jonction du serveur au domaine ADMR:
[root@diabolo ~]# net ads join -U administrateur
  • Création des homedir:
[root@diabolo ~]# for user in `wbinfo -u`; do mkdir /perso/$user; chown $user: /perso/$user; chmod 0711 /perso/$user; setquota -u $user 1000000 1000000 0 0 /perso; done
  • Mapping manuel de groupes pour éviter des erreurs samba:
[root@diabolo ~]# groupadd Admin_nt
[root@diabolo ~]# groupadd Users_nt
[root@diabolo ~]# net groupmap add unixgroup=Admin_nt ntgroup=Administrators
[root@diabolo ~]# net groupmap add unixgroup=Users_nt ntgroup=Users
[root@diabolo ~]# net groupmap list

Installation du serveur FTP

[root@diabolo ~]# yum install vsftpd.i386
[root@diabolo ~]# chkconfig --level 3 vsftpd on
[root@diabolo ~]# scp root@satanas:/etc/auto.master /etc/
[root@diabolo ~]# scp root@satanas:/etc/auto.home /etc/
[root@diabolo ~]# /etc/init.d/autofs restart