Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- ####################################################################################
- # Skrtpt dodający LDAP made by TheMamuth #
- # ver 1.0 #
- # #
- # uzywajcie i korzystajcie :) #
- # #
- # #
- ####################################################################################
- # begin
- # -- Poprosimy użytkownika o imię
- echo -n "PODAJ SWOJE IMIĘ: "
- read imie
- # -- Poprosimy użytkownika o nazwisko
- echo -n "PODAJ SWOJE NAZWISKO: "
- read nazwisko
- # -- Teraz wyswietlmy użytkownikowi jego wprowadzone dane
- echo " "
- echo "##############################################################################"
- echo "WPROWADZIŁEŚ IMIE: " $imie "ORAZ NAZWISKO: " $nazwisko
- echo "##############################################################################"
- echo " "
- echo -n "PODAJ OPIS DLA TWOEJEGO KONTA: "
- read opis
- echo " "
- # -- Jak można już zauważyć, polecenie echo wyświetla wprowadzone dane miedzy cudzysłowami
- # -- read to kontener na zmienną -> read <nazwa_zmiennej>
- # -- Teraz pobierzmy hasło od naszego użytkownika które, chce używać do logowania w ldap
- echo -n "PODAJ HASLO DO LDAP:"
- read -s haslo
- echo " "
- # -- teraz według polecenia mamy zmienić wszystkie duże litery na małe w imieniu i nazwisku
- imie=$(echo $imie | tr [:upper:] [:lower:])
- nazwisko=$(echo $nazwisko | tr [:upper:] [:lower:])
- # -- teraz należy pobrać pierwsza literę imienia i dokleić ja przed nazwiskiem
- litera=$(echo $imie |cut -c 1)
- username=$litera$nazwisko
- # -- teraz należy z pobranych danych utworzyć plik który, posłuży nam jako wpis dodający usera, wzorujemy się na tym co utworzyliśmy w poprzednim
- # -- labie.
- #-- pobranie uidnumber
- uidnumber=$(ldapsearch -x -LL uidnumber | grep "uidNumber:" | cut -d" " -f2 | sort -n -r | head -1)
- echo "OSTATNI uidNumber TO: " $uidnumber
- #-- zwiększenie uidnumber, bo nie może się powtarzac
- uidnumber=$[$uidnumber+1]
- echo "NOWY uidNumber TO: " $uidnumber
- #-- pobranie gidnumber
- gidnumber=$(ldapsearch -x -LL gidnumber | grep "gidNumber:" | cut -d" " -f2 | sort -n -r | head -1)
- echo "gidNumber to: " $gidnumber
- echo "Login to: " $username
- # -- pobralismy potrzebne nam zmienne czas teraz na utworzenie pliku
- echo "dn: cn="$username",dc=lab,dc=pl" > ldap.txt
- echo "cn: "$username >> ldap.txt
- echo "gidNumber: "$gidnumber >> ldap.txt
- echo "homeDirectory: /home/"$username >> ldap.txt
- echo "objectClass: simpleSecurityObject" >> ldap.txt
- echo "objectClass: person" >> ldap.txt
- echo "objectClass: posixAccount" >> ldap.txt
- echo "objectClass: top" >> ldap.txt
- echo "sn: "$opis >> ldap.txt
- echo "uid: "$username >> ldap.txt
- echo "uidNumber: "$uidnumber >> ldap.txt
- echo "userpassword: "$haslo >> ldap.txt
- # -- polecenie dodające usera do ldap
- ldapmodify -a -x -D cn=admin,dc=lab,dc=pl -W -f ldap.txt
- # -- tworzymy warunek który sie wykona jeżeli powyższe polecenie nie zglosi bledu;
- if [ "$?" = 0 ]; then
- # -- Tworzymy katalog;
- mkdir /home/$username
- # -- Nadajemy uprawnieni;
- chmod 700 /home/$username
- # -- Zmieniamy właściciela;
- chown $uidnumber:100 /home/$username
- # -- Komunikat;
- echo "Wszystko wukonane - if"
- fi
- # end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement