Question

Je suis en train de travailler sur un script bash pour configurer openldap et ajouter ldif script avec les utilisateurs et les groupes.

Comment puis-je écrire le mot de passe dans le script bash ?

C'est le script que j'courir quand il vous demande le mot de passe:

ldapadd -h localhost -D "cn=admin,dc=sysadmin1,dc=hioa,dc=no" -W -x -f /etc/ldap/base.ldif

EDIT:

J'ai essayé et créé un passwd.txt fichier avec le mot de passe:

ldapadd -h localhost -D "cn=admin,dc=sysadmin1,dc=hioa,dc=no" -W -x -y'passwd.txt' -f /etc/ldap/base.ldif

Mais on obtient cette erreur:

Warning: Password file passwd.txt is publicly readable/writeable
ldap_bind: Invalid credentials (49)

enter image description here

Était-ce utile?

La solution

homme ldapadd.

-W
Prompt for simple authentication. This is used instead of specifying the password on the command line.

-w passwd
Use passwd as the password for simple authentication.
-y passwdfile
Use complete contents of passwdfile as the password for simple authentication.

SE SE SE SE SE SE SE QUE VOUS RECHERCHEZ UNE OPTION DE -w OU -y, NON -W

Autres conseils

Il y a deux possibilités:

  1. ldapadd lit le mot de passe à partir de l'entrée standard.
  2. ldapadd lit le mot de passe directement depuis le TERMINAL.

Dans le premier cas, il suffit d'utiliser quelque chose comme ceci echo 'MySecretPassword' | ldapadd -h localhost -D "cn=admin,dc=sysadmin1,dc=hioa,dc=no" -W -x -f /etc/ldap/base.ldif.Le deuxième est plus compliqué parce que vous avez besoin d'un outil comme attendre.Vérifier si la simple redirection fonctionne bien.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top