Mirgorod
@Mirgorod

Добавление Unix-пользователя с помощью скриптов?

Здравствуйте, у меня возникла проблема с добавлением новых пользователей в CentOS с помощью скриптов.

Добавить пользователя можно следующим образом:

useradd -g ftp-users -d /home/ftp-docs -p crypted_password login

Для использования этой команды я создал небольшой php-скрипт:

<?php

system(«useradd -g ftp-users -d /home/ftp-docs -p ».crypt($argv[2])." ".$argv[1]);

?>

При вводе в консоле: php add_user.php test_user_mir testpassword

Пользователь создается и выводится сообщение:
ng: the home directory already exists.

Not copying any file from skel directory into it.


После этой команды пользователь действительно создаётся, но не удаётся его использовать.

При ручном создании пользователя, я делаю следующее:

1. Прописываю в консоле useradd -g ftp-users -d /home/ftp-docs login

2. Прописываю пароль пользователю с помощью команды passwd login

После этих действий можно использовать данный логин для соединение с фтп-сервером.

Но, когда я делаю это с помощью скрипта, я не могу соединиться с фтп-сервером:
Команда: USER login_created_by_script

Ответ: 331 Please specify the password.

Команда: PASS ************

Ответ: 530 Login incorrect.

Ошибка: Критическая ошибка

Ошибка: Невозможно подключиться к серверу


Хотя в списке пользователей данный логин присутствует.


Буду благодарен за любую помощь в решении данной проблемы.
  • Вопрос задан
  • 4294 просмотра
Решения вопроса 1
alexxxst
@alexxxst
Значит пароль неверно криптуется.
Надо делать с помощью passwd типа вот так:
echo "пароль" | passwd --stdin login
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
shadowalone
@shadowalone
Что-бы не было первой ошибки добавьте -M.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы