Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- ########## Создание нового пользователя ##########
- ###### Основные переменные ######
- # c - Комментарий
- # n - Имя пользователя
- # PASS - Пароль
- # q - Количество подключений пользователя
- # e -Адрес электронной почты, куда отправлять логин/пасс
- homedir='/var/data' # Корневой каталог FTP-сервера
- logdir='/var/log/usergen' # Каталог, в котором будут храниться протоколы работы скрипта
- g='ftpusers' # g - Основная группа
- s='/usr/sbin/nologin' # s - Шелл пользователя. По умолчанию /usr/sbin/nologin
- basedir='/root/ftp/users' # Каталог с базой пользователей
- basename='users'
- ###### Проверка наличия директорий и файлов ######
- # Проверка наличлия корневой директории FTP-сервера
- if ! [ -d /var/data ]; then
- echo 'No ftp-root directory!'
- fi
- # Проверка наличия директории лог-файлов
- #if ! [ -d /var/log/usergen ]; then
- # echo 'No log directory!'
- #fi
- ###### Создание пользователя ######
- # Генерируется пароль
- PASS=`pwgen -n1 -A`
- # Текстовое меню
- echo 'Введите имя пользователя'
- read n
- ###### Проверка существования пользователя ######
- grep "$n:" /etc/passwd # >/dev/null
- if [ $? -ne 1 ]; then
- echo 'User exist!'
- exit 0
- fi
- echo 'ВНИМАНИЕ! Пользователь будет добавлен в группу ftpusers'
- echo 'Shell по умолчанию /usr/sbin/nologin'
- echo 'Введите описание пользователя'
- read c
- echo 'Количество подключений'
- read q
- echo 'Адерс электронной почты Организации'
- read e
- # -b - базовый каталог. В нем будет создан каталог пользователя
- # -g - основная группа. Для пользователей FTP основной группой явзялется ftpusers
- # -G - Дополнительные группы
- # -m - Создать каталог пользователя
- # -s - оболочка пользователя
- # -N - Не создавать группу с таким же именем, что и у пользователя
- useradd -b $homedir -c "$c" -g $g -G users -m -N -s $s $n
- #Изменение пароля пользователя
- echo "$n:$PASS"| chpasswd
- #Установка корректных прав на каталог
- chown root.ftpusers $homedir/$n
- chmod g+w $homedir/$n
- #Удаление скрытых файлов
- rm -rf $homedir/$n/.*
- #Запись в базу
- tme=`date +%H:%M:%S`
- dte=`date +%d.%m.%Y`
- echo "$n $PASS $q $e $tme $dte comment: $c" >> /tmp/users2.txt
- #echo "$n $PASS $q $e $tme dte comment: $c " >> $basedir/basename
- exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement