source: trunk/INSTALL/arquivos/scripts/ldap.sh @ 5836

Revision 5836, 2.9 KB checked in by wmerlotto, 12 years ago (diff)

Ticket #2557 - Adcionado o suporte para Ubuntu Server 11.10

Line 
1
2# Servico LDAP (OpenLDAP)
3
4# Comum a todas as distros
5DB_CONFIG=$ARQS/DB_CONFIG
6SCHEMAS=$ARQS/schemas
7
8# Parametro 1: Arquivo modelo de configuração do LDAP
9# Parametro 2: Destino (completo) do arquivo de configuração do servidor LDAP
10# Parametro 3: Diretório, do instalador, contendo os schemas do servidor LDAP
11# Parametro 4: Diretório, do servidor, para onde os schemas do servidor LDAP serao copiados
12# Exemplo: ldap $RHEL6/slapd.conf /etc/openldap/slapd.conf $SCHEMAS/* /etc/openldap/schema/
13ldap () {
14        get_org
15        get_pass
16
17        # As novas distros necessitam de schemas em UTF-8. Entao estou deixando essa copia para cada distro.
18        cp -a $3/* $4/
19       
20        sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/LDAP_PWD_MD5/$LDAP_PWD_MD5/g" $1 > $2
21        sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/LDAP_PWD_MD5/$LDAP_PWD_MD5/g" -e "s/ORG/$ORG/g" -e "s/DOMAIN/$DOMAIN/g" -e "s/LDAP_DC/$LDAP_DC/g" $ARQS/expresso.ldif > /tmp/expresso.ldif
22        slapadd -v -f $2 -l /tmp/expresso.ldif
23        # TODO: E mesmo necessario rodar o slapindex ou o slapadd ja indexa?
24        #slapindex
25}
26
27# Parametros: Iguais a funcao ldap;
28ldap_debian ()
29{
30        apt-get -y install slapd ldap-utils
31        /etc/init.d/slapd stop
32        # Move a atual base LDAP
33        # TODO: Executar varias a vezes este instalador ira gerar muitos arquivos de backup! Melhor do que nao ter nenhum...
34        mv /var/lib/ldap /var/lib/ldap.`date +"%s"`
35        mkdir /var/lib/ldap
36        cp -a $DB_CONFIG /var/lib/ldap/
37
38        # Cria o arquivo de configuração do LDAP e sua árvore conforme a distro
39        ldap $1 $2 $3 $4
40        # Altera as permissões para o usuario padrao do Debian
41        chown -R openldap:openldap /var/lib/ldap
42        # Apaga os arquivos do slapd.d, para que o LDAP funcione com o
43        # slapd.conf
44        rm -rf /etc/ldap/slapd.d
45        /etc/init.d/slapd start
46}
47
48ldap_debian-squeeze ()
49{
50        # BDB do Squeeze
51        apt-get -y install db4.7-util
52
53        SQUEEZE=debian/squeeze/etc/ldap
54        ldap_debian $SQUEEZE/slapd.conf /etc/ldap/slapd.conf $SCHEMAS /etc/ldap/schema
55}
56
57ldap_ubuntu-11.10 ()
58{
59        ldap_debian-squeeze
60}
61
62# Parametros: Iguais a funcao ldap;
63ldap_rhel ()
64{
65        yum -y install openldap openldap-clients openldap-servers
66        service ldap stop
67        # Faz backup das bases do LDAP
68        mv /var/lib/ldap /var/lib/ldap.`date +"%s"`
69        mkdir /var/lib/ldap
70        cp -a $DB_CONFIG /var/lib/ldap/
71
72        # Cria o arquivo de configuração do LDAP e sua árvore conforme a distro
73        ldap $1 $2 $3 $4
74        chown -R ldap:ldap /var/lib/ldap
75        chkconfig slapd on
76        rm -rf /etc/openldap/slapd.d
77        service slapd start
78}
79
80ldap_rhel6 ()
81{
82        RHEL6=rhel/6/etc/openldap
83        ldap_rhel $RHEL6/slapd.conf /etc/openldap/slapd.conf $SCHEMAS /etc/openldap/schema/
84}
85
86#
87# TODO: Preciso de alguem que ajude a testar o SLES! Nao garanto que este codigo funcione
88#
89ldap_sles ()
90{
91        yast -i install openldap2 openldap2-client openldap2-devel openldap2-back-meta openldap2-back-perl db42
92        rcldap stop
93        rm -rf /var/lib/ldap/*
94        ldap sles10/etc/openldap/slapd.conf /etc/openldap/slapd.conf /etc/openldap/schema
95        # Qual o usuário no SLES??
96        chown -R ldap:ldap /var/lib/ldap
97        rcldap ldap start
98}
99
100ldap_sles10 ()
101{
102        ldap_sles
103}
Note: See TracBrowser for help on using the repository browser.