[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 #!/bin/bash 2 # 3 ##### Script permettant de rejoindre un client ubuntu-6.06 au serveur SE3##### 4 # 5 # Auteur : Mickaël POIRAULT Mickael.Poirault@ac-versailles.fr 6 # Adaptation ubuntu 6.10 Philippe Chadefaux 7 # 8 ## $Id: rejoint_se3_ubuntu-6.sh 3657 2009-04-07 23:02:41Z keyser $ ## 9 10 if [ "$1" == "--help" -o "$1" == "-h" ] 11 then 12 echo "Permet de faire rejoindre un client ubuntu-6.06 au serveur SE3" 13 echo "Ce script est à lancer sur le client en root" 14 echo "Les données du serveur SE3 sont :" 15 echo "###SE3_SERVER### : nom du serveur Se3" 16 echo "###SE3_IP### : ip du serveur Se3" 17 echo "###BASE_DN### : base dn de l'annuaire" 18 echo "###LDAP_SERVER### : addresse du serveur ldap" 19 echo "###NTPSERVERS### : serveur de temps pour ntpdate" 20 echo "###NTPOPTIONS### : options pour ntpdate" 21 echo "Usage : ./rejoint_se3_ubuntu-6.06.sh" 22 echo "Ce script est distribué selon les termes de la licence GPL" 23 echo "--help cette aide" 24 25 exit 26 fi 27 28 # comment rendre le script "cretin-résistant", par Christian Westphal 29 TEST_CLIENT=`ifconfig | grep ":###SE3_IP### "` 30 if [ ! -z "$TEST_CLIENT" ]; then 31 echo "Malheureux... Ce script est a executer sur les clients Linux, pas sur le serveur." 32 exit 33 fi 34 35 [ -e /var/www/se3 ] && echo "Malheureux... Ce script est a executer sur les clients Linux, pas sur le serveur." && exit 1 36 # On commence par récupérer la date et l'heure pour la sauvegarde des fichiers 37 38 DATE=$(date +%D_%Hh%M | sed -e "s§/§_§g") 39 40 # On modifie le fichier /etc/apt/sources.list 41 42 cp /etc/apt/sources.list /etc/apt/sources_sauve_$DATE.list 43 perl -pi -e "s&deb cdrom&# deb cdrom&" /etc/apt/sources.list 44 perl -pi -e 's&^# deb http://(.*)universe$&deb http://$1 universe&' /etc/apt/sources.list 45 perl -pi -e 's&^# deb-src http://(.*)universe$&deb-src http://$1 universe&' /etc/apt/sources.list 46 47 # On met à jour la machine 48 echo "Mise à jour de la machine" 49 50 # probleme de lock 51 if [ -e "/var/lib/dpkg/lock" ] 52 then 53 rm -f /var/lib/dpkg/lock 54 fi 55 56 apt-get update 57 apt-get dist-upgrade 58 59 # Installation des paquets nécessaires 60 echo "Installation des paquets nécessaires" 61 echo "Ne rien remplir, les fichiers sont configurés automatiquement après" 62 apt-get install --assume-yes libnss-ldap libpam-ldap lsof libpam-mount smbfs samba-common ntpdate 63 64 # Configuration des fichiers 65 66 echo "Configuration" 67 68 cp /etc/hosts /etc/hosts_sauve_$DATE 69 OK_SE3=`cat /etc/hosts | grep ###SE3_SERVER###` 70 if [ "$OK_SE3" == "" ] 71 then 72 echo "###SE3_IP### ###SE3_SERVER###" >> /etc/hosts 73 fi 74 75 TLS_OK="###TLS###" 76 if [ "$TLS_OK" = "1" ] 77 then 78 echo "Souhaitez vous activer TLS sur LDAP" 79 echo "Votre serveur semble le permettre [o/n]" 80 read REPONSE 81 while [ "$REPONSE" != "o" -a "$REPONSE" != "n" ] 82 do 83 echo "Souhaitez vous activer TLS sur LDAP" 84 echo "Votre serveur semble le permettre [o/n]" 85 read REPONSE 86 done 87 fi 88 89 # Configuration du fichier /etc/pam_ldap.conf 90 91 cp /etc/pam_ldap.conf /etc/pam_ldap_sauve_$DATE.conf 92 echo " 93 # /etc/pam_ldap.conf 94 # Configuration pour Sambaedu3 95 96 host ###LDAP_SERVER### 97 base ###BASE_DN### 98 ldap_version 3 99 port 389 100 bind_policy soft 101 pam_password md5" > /etc/pam_ldap.conf 102 103 if [ "$REPONSE" = "o" -o "$REPONSE" = "O" ] 104 then 105 echo " 106 ssl start_tls 107 tls_checkpeer no" >> /etc/pam_ldap.conf 108 fi 109 110 # Configuration du fichier /etc/libnss-ldap.conf 111 112 cp /etc/libnss-ldap.conf /etc/libnss-ldap_sauve_$DATE.conf 113 echo " 114 # /etc/libnss-ldap.conf 115 # Configuration pour Sambaedu3 116 host ###LDAP_SERVER### 117 base ###BASE_DN### 118 ldap_version 3 119 port 389 120 bind_policy soft" > /etc/libnss-ldap.conf 121 122 if [ "$REPONSE" = "O" -o "$REPONSE" = "o" ] 123 then 124 echo " 125 ssl start_tls 126 tls_checkpeer no" >> /etc/libnss-ldap.conf 127 fi 128 129 # Configuration du fichier /etc/nsswitch.conf 130 131 cp /etc/nsswitch.conf /etc/nsswitch_sauve_$DATE.conf 132 echo " 133 # /etc/nsswitch.conf 134 # Configuration pour SambaEdu3 135 136 passwd: files ldap 137 group: files ldap 138 shadow: files ldap 139 140 hosts: files dns 141 networks: files 142 143 protocols: db files 144 services: db files 145 ethers: db files 146 rpc: db files 147 148 netgroup: nis" > /etc/nsswitch.conf 149 150 # Configuration du fichier /etc/pam.d/login 151 152 cp /etc/pam.d/login /etc/pam.d/login_sauve_$DATE 153 echo " 154 # /etc/pam.d/login 155 # Configuration pour SambaEdu3 156 157 auth requisite pam_securetty.so 158 auth requisite pam_nologin.so 159 session required pam_env.so readenv=1 160 @include common-auth 161 @include common-account 162 @include common-session 163 session required pam_limits.so 164 session optional am_lastlog.so 165 session optional pam_motd.so 166 session optional pam_mail.so standard 167 @include common-password" > /etc/pam.d/login 168 169 # Configuration du fichier /etc/pam.d/common-auth 170 171 cp /etc/pam.d/common-auth /etc/pam.d/common-auth_sauve_$DATE 172 echo " 173 # /etc/pam.d/common-auth 174 # Configuration pour SambaEdu3 175 176 auth optional pam_group.so 177 auth optional pam_mount.so 178 auth sufficient pam_ldap.so use_first_pass 179 auth required pam_unix.so use_first_pass" > /etc/pam.d/common-auth 180 181 # Configuration du fichier /etc/pam.d/common-account 182 183 cp /etc/pam.d/common-account /etc/pam.d/common-account_sauve_$DATE 184 echo " 185 # /etc/pam.d/common-account 186 # Configuration pour SambaEdu3 187 188 account sufficient pam_ldap.so use_first_pass 189 account required pam_unix.so use_first_pass" > /etc/pam.d/common-account 190 191 # Configuration du fichier /etc/pam.d/common-session 192 193 cp /etc/pam.d/common-session /etc/pam.d/common-session_sauve_$DATE 194 echo " 195 # /etc/pam.d/common-session 196 # Configuration pour SambaEdu3 197 198 session optional pam_mount.so 199 session required pam_unix.so use_first_pass" > /etc/pam.d/common-session 200 201 # Configuration du fichier /etc/pam.d/common-password 202 203 cp /etc/pam.d/common-password /etc/pam.d/common-password_sauve_$DATE 204 echo " 205 # /etc/pam.d/common-password 206 # Configuration pour SambaEdu3 207 208 password required pam_unix.so nullok obscure min=8 md5" > /etc/pam.d/common-password 209 210 # Configuration du fichier /etc/pam.d/sudo 211 212 cp /etc/pam.d/sudo /etc/pam.d/sudo_sauve_$DATE 213 echo " 214 # /etc/pam.d/sudo 215 # Configuration pour SambaEdu3 216 217 auth required pam_unix.so nullok_secure 218 @include common-account" > /etc/pam.d/sudo 219 220 # Configuration du fichier /etc/security/group.conf 221 222 cp /etc/security/group.conf /etc/security/group_sauve_$DATE.conf 223 echo " 224 # /etc/security/group.conf 225 # Configuration pour SambaEdu3 226 227 gdm;*;*;Al0000-2400;floppy,cdrom,audio,video,plugdev 228 kdm;*;*;Al0000-2400;floppy,cdrom,audio,video,plugdev" > /etc/security/group.conf 229 230 # Configuration du fichier /etc/security/pam_mount.conf 231 232 cp /etc/security/pam_mount.conf /etc/security/pam_mount_sauve_$DATE.conf 233 234 echo " 235 # /etc/security/pam_mount.conf 236 # Configuration pour SambaEdu3 237 238 debug 0 239 mkmountpoint 1 240 fsckloop /dev/loop7 241 options_allow nosuid,nodev,loop,encryption,fsck 242 options_require nosuid,nodev 243 244 lsof /usr/sbin/lsof %(MNTPT) 245 fsck /sbin/fsck -p %(FSCKTARGET) 246 losetup /sbin/losetup -p0 \"%(before=\\\"-e\\\" CIPHER)\" \"%(before=\\\"-k\\\" KEYBITS)\" %(FSCKLOOP) %(VOLUME) 247 unlosetup /sbin/losetup -d %(FSCKLOOP) 248 #cifsmount /bin/mount -t cifs //%(SERVER)/%(VOLUME) %(MNTPT) -o \"username=%(USER)%(before=\\\",\\\" OPTIONS)\" 249 cifsmount /sbin/mount.cifs //%(SERVER)/%(VOLUME) %(MNTPT) -o \"username=%(USER)%(before=\\\",\\\" OPTIONS)\" 250 #smbmount /usr/bin/smbmount //%(SERVER)/%(VOLUME) %(MNTPT) -o \"username=%(USER)%(before=\\\",\\\" OPTIONS)\" 251 #ncpmount /usr/bin/ncpmount %(SERVER)/%(USER) %(MNTPT) -o \"pass-fd=0,volume=%(VOLUME)%(before=\\\",\\\" OPTIONS)\" 252 #smbumount /usr/bin/smbumount %(MNTPT) 253 #ncpumount /usr/bin/ncpumount %(MNTPT) 254 # Linux supports lazy unmounting (-l). May be dangerous for encrypted volumes. 255 # May also break loopback mounts because loopback devices are not freed. 256 # Need to unmount mount point not volume to support SMB mounts, etc. 257 umount /usr/sbin/umountH.sh %(MNTPT) 258 # On OpenBSD try \"/usr/local/bin/mount_ehd\" (included in pam_mount package). 259 #lclmount /bin/mount -p0 -t %(FSTYPE) %(VOLUME) %(MNTPT) \"%(before=\\\"-o\\\" OPTIONS)\" 260 #cryptmount /bin/mount -t crypt \"%(before=\\\"-o\\\" OPTIONS)\" %(VOLUME) %(MNTPT) 261 #nfsmount /bin/mount %(SERVER):%(VOLUME) %(MNTPT) \"%(before=\\\"-o\\\" OPTIONS)\" 262 # For BSD: mntagain mount_null %(PREVMNTPT) %(MNTPT) 263 # For Solaris: mntagain mount -F lofs %(PREVMNTPT) %(MNTPT) 264 #mntcheck /bin/mount # For BSD's (don't have /etc/mtab) 265 #pmvarrun /usr/sbin/pmvarrun -u %(USER) -d -o %(OPERATION) 266 267 #volume * cifs ###SE3_SERVER### netlogon /home/netlogon mapchars,serverino,nobrl,iocharset=iso8859-15 - - 268 volume * cifs ###SE3_SERVER### & /home/& uid=&,gid=root,mapchars,serverino,nobrl,iocharset=iso8859-15 - - 269 volume * cifs ###SE3_SERVER### Classes /home/&/Desktop/Classes uid=&,gid=root,mapchars,serverino,nobrl,noperm,iocharset=iso8859-15 - - 270 volume * cifs ###SE3_SERVER### Progs /home/&/Progs uid=&,gid=root,mapchars,serverino,nobrl,noperm,iocharset=iso8859-15 - - 271 volume * cifs ###SE3_SERVER### Docs /home/&/Desktop/Partages uid=&,gid=root,mapchars,serverino,nobrl,noperm,iocharset=iso8859-15 - - " > /etc/security/pam_mount.conf 272 273 # Création du script de démontage des lecteurs réseaux : umountH.sh 274 275 touch /usr/sbin/umountH.sh 276 chmod +x /usr/sbin/umountH.sh 277 echo " 278 #!/bin/bash 279 # 280 ##### Script permettant de démonter correctement le /home/user##### 281 # 282 # Auteur : Mickaël POIRAULT Mickael.Poirault@ac-versailles.fr 283 # 284 285 if [ \"\$1\" == \"--help\" -o \"\$1\" == \"-h\" ] 286 then 287 echo \"Permet de démonter correctement le /home/user\" 288 echo \"Ce script est lancé automatiquement par pam_mount\" 289 echo \"Usage : /usr/sbin/umountH.sh /home/user\" 290 echo \"Ce script est distribué selon les termes de la licence GPL\" 291 echo \"--help cette aide\" 292 293 exit 294 fi 295 296 # Détermination du répertoire à démonter 297 homeUSER=\$1 298 299 # Attendre la fin des processus qui utilisent le répertoire à démonter 300 until [ ``\`/usr/sbin/lsof \$homeUSER | wc -l\``` = \"0\" ] 301 do 302 sleep 1 303 done 304 305 # Démontage du repertoire 306 /bin/umount \$homeUSER" > /usr/sbin/umountH.sh 307 308 # Configuration du fichier /etc/default/ntpdate 309 310 cp /etc/default/ntpdate /etc/default/ntpdate_sauve_$DATE 311 echo " 312 # /etc/default/ntpdate 313 # Configuration pour SambaEdu3 314 # servers to check. (Separate multiple servers with spaces.) 315 NTPSERVERS=\"###SE3_SERVER###\" 316 317 # additional options for ntpdate 318 ###NTPOPTIONS###" > /etc/default/ntpdate 319 320 # Fin de la configuration 321 echo "Fin de l'installation." 322 echo "ATTENTION : Seul les comptes ayant un shell peuvent se connecter" 323 echo "" 324 echo "Vous devez configurer les locale pour être compatible avec Se3" 325 echo "pour cela faire un apt-get install locale et lire la doc sur www.sambaedu.org"
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |