Active Directory export script to import into SME Server

I had to migrate users from an Active Directory/Exchange combo to a SME server for temporary disaster recovery event. Here’s the script I wrote to create the export and recreate the users and their aliases in the SME server. The export was done before the disaster of course :) #!/bin/bash #ldapsearch -x -b "dc=customer,dc=com" -h 1.2.3.4 -D "domain\user" -W "(objectclass=user)" > activedirectory.ldiff File="activedirectory.ldiff" #reset files content echo > sme.users echo > sme.aliases cat "$File" | while read line do #concatenate new line to existing info UserInfo="$UserInfo $line" #treat all info if user is finished if $(echo -e "$line" | grep -q '^$') then echo User info finished #treat only users with mail address if $(echo "$UserInfo" | grep -q '^mail:') then #recover data UserName=$(echo "$UserInfo" | grep '^sAMAccountName:' | sed -e 's/sAMAccountName: //' | tr '\[A-Z\]' '\[a-z\]') UserFirstName=$(echo "$UserInfo" | grep '^givenName:' | sed -e 's/givenName: //') UserLastName=$(echo "$UserInfo" | grep '^sn:' | sed -e 's/sn: //') UserMail=$(echo "$UserInfo" | grep '^mail:' | awk '{print $2}' | tr '\[A-Z\]' '\[a-z\]') UserMailAliases=$(echo "$UserInfo" | grep '^proxyAddresses: smtp:' | sed -e 's/^proxyAddresses: smtp:\(.\*\)@.\*$/\1/' | sort -u | grep -vi "^${UserName}$" | tr '\n' '|' | tr '\[A-Z\]' '\[a-z\]') Tmp=$(dd if=/dev/urandom | tr -dc \_A-Z-a-z-0-9 | head -c 4) UserPassword=$(echo "${UserName}${Tmp}" | tr '\[A-Z\]' '\[a-z\]') #print user info echo "$UserName |$UserFirstName |$UserLastName |$UserPassword" >> sme.users #print aliases if any if \[ $(echo "$UserMailAliases" | wc -c) -gt 2 \] then echo "$UserName |$UserMailAliases" | sed -e 's/^\(.\*\)|$/\1/' >> sme.aliases fi #cleanup some shit unset UserName unset UserFirstName unset UserLastName unset UserMail unset UserMailAliases unset Tmp unset UserPassword fi unset UserInfo fi done You can then import all the users and their aliases with the following commands: ...

March 9, 2014 · 2 min

Exchange 2003 : rechercher une adresse email

Si vous voulez retrouver à quel User est lié une adresse email dans Exchange, suivez les points suivants: Ouvrez Active Directory Users and Computers, Clic droit sur le domaine ciblé, cliquez Find, Dans le champ Find, choisissez Custom Search, Choisissez l’onglet Advanced, Entrez comme LDAP query: proxyAddresses=smtp:myemail@mydomain.example Vous devriez avoir un résultat qui est l’user associé à la boite mail ou à l’alias.

March 21, 2012 · 1 min

Transition Exchange 2003 vers 2010 : points clés

Hardware Exchange 2010 requiert un OS 64bits et donc un hardware 64bits. Si le stress sur le disque a été réduit, il a été augmenté sur le processeur et la mémoire. Ne pas lésiner sur les quantités de RAM (>8GBytes). Il est toujours recommandé de séparer les transaction logs des databases donc si possible, deux controleurs RAID et deux groupes de disques distincts pour ces objets. Operating System Bien mettre à jour le controleur de domaine et l’Exchange 2003 actuel (SP2, hotfixes, toussa). L’installation d’Exchange 2010 refusera de poursuivre si certains composants manquent dans l’architecture existante. Ensuite il faut préparer Active Directory pour les nouvelles fonctionnalités d’Exchange 2010/ Depuis les fichiers d’installation, exécutez: setup.exe /PrepareLegacyExchangePermissions ou setup.exe /pl + setup.exe /PrepareSchema + setup.exe /PrepareAllDomains . ...

February 1, 2012 · 3 min