Автор Тема: Пакетное добавление сетевых пользователей на сервер.  (Прочитано 1790 раз)

Оффлайн Zelgadis

  • Начинающий
  • *
  • Сообщений: 18
Есть желание для каждого ученика завести свой сетевой аккаунт. Но с текущим интерфесом добавления новой учетки, первоначальное заведение учеток превращается в неблагодную работу, слишком долго и кучу однотипных действий.
Насколько я понимаю из коробки пакетного заведения пользователей не предусмотрено. Нет ли готового решения? Может кто-то уже с этим разбирался и написал скрипт для решения этой задачи?

Понятно что можно пойти и покопать исходники альтератора, но решил узнать, может не придется создавать очередной велосипед.
« Последнее редактирование: 08.10.2010 12:42:06 от Zelgadis »
1. Ubuntu 10.04 x86
2. виртуалка: ALT школьный Легкий 5.0.1 и Юниор 5.0.1

Оффлайн aol-nnov

  • Начинающий
  • *
  • Сообщений: 2
вобщем, есть одно средство, но я, увы, его на альтовском сервере не проверял.
дело в том, что линуксовый сервер в школе у меня появился задолго до этой возни со школьным линуксом.

а автоматизировал я следующим образом: (сразу оговорюсь, что для этого способа потребуется хорошая дружба с консолью!! иначе, пожалуйста, не пытайтесь!)

значит, так. есть на свете пакетик такой smbldap-tools (в альте он тоже есть - только что проверил!). в нем - всё, что надо для управления деревом каталогов. А это и есть то самое место, где хранятся все данные о пользователях.

в результате у меня получился вот такой скриптик:
#!/bin/bash
HOME=/home/$2
SAMBA=/var/lib/samba
PASSWORD=`pwgen -Bcn`

if [ ! -d "$HOME" ]; then
       smbldap-groupadd -a -t domain "$2"
      
       mkdir           "$HOME" "$SAMBA/profiles/$2" "$SAMBA/netlogon/$2"
       chmod g+w       "$HOME" "$SAMBA/profiles/$2" "$SAMBA/netlogon/$2"
       chgrp "$2"      "$HOME" "$SAMBA/profiles/$2" "$SAMBA/netlogon/$2"
fi
echo -e "$PASSWORD\n$PASSWORD" | smbldap-useradd -a -d "$HOME/$1" -g "$2" -m -A 1 -B 1 -P $1
su - $1
echo "Account $2\\$1 with password $PASSWORD created!"
первый аргумент - логин нового пользователя, второй - основная группа, в которую он должен входить.
программа pwgen находится в одноименном пакете

повтрюсь еще раз: мой сервер не основан на Альте, так что пути могут различаться!! почитайте документацию.
если что - пишите сюда.  я буду заглядывать изредка!

Андрей.
инженер по информатизации
Гимназия №13
Нижний Новгород
« Последнее редактирование: 01.11.2010 21:35:24 от aol-nnov »

Оффлайн Zelgadis

  • Начинающий
  • *
  • Сообщений: 18
Насколько я успел разобраться в скриптах альтератора, добавление нового пользователя происходит не только в стандартную ветку ldap, но и в ветку для кербероса.
Если я не ошибаюсь ваш скрипт работает только в случае использования чистого LDAP причем добавление идет с поправкой на самбу (иначе можно бы было обойтись обычным ldapadd). Поэтому я пока склоняюсь к работе через веб запросы. В любом случае спасибо за предоставленнй вариант решения проблемы.

а автоматизировал я следующим образом: (сразу оговорюсь, что для этого способа потребуется хорошая дружба с консолью!! иначе, пожалуйста, не пытайтесь!)


не увидел ничего сложного, вы немного перестарались с предупреждениями :)
1. Ubuntu 10.04 x86
2. виртуалка: ALT школьный Легкий 5.0.1 и Юниор 5.0.1

Оффлайн aol-nnov

  • Начинающий
  • *
  • Сообщений: 2

ну, это я так... на всякий случай... потому, что были прецеденты.. насоветуешь чего-нить, что у себя работает, а тот, кто помощи просил потом дуется либо потому, что не сработало, либо сломалось из-за неопытности..

а так - да... про керберос я вспомнил позже.. :)) но он у меня пока неиспользуется (только тс-с-с-с-с!! ;))) так что, мне smbldap-tools очень в своё время помогли.. а теперь вот не вижу профита переползать на другой серверный дистр - всё уже три года как по маслу... сначала был "контроллер" на самбе с лдапом и виндовые клиенты. теперь вот количество виндовых клиентов уменьшается, количество линуксовых клиентов увеличивается %)) некоторые пользователи не видят разницы вообще %)) просто "ломка" проходит через дня 2-3 после миграции на линукс и всё - не жужжат! :)