Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок
Модераторы: vadim64, terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
qtolikq
- рядовой
- Сообщения: 14
- Зарегистрирован: 2011-03-21 11:32:47
Непрочитанное сообщение
qtolikq » 2013-01-11 9:42:16
Вопрос конечно может и глупый но как можно добавить пользователя samba и пароль скриптом sh что не вводить вручную пароль а потом еще и повторять
smbpasswd –a user
SMB password:********
New SMB password:********
smbpasswd –e user
а делать автоматом при заведение пользователя в системе вот пример,
Код: Выделить всё
#!/usr/local/bin/bash
#
u_name="$1"
pass=`cat /dev/urandom | tr -dc a-zA-Z0123456789 | head -c 9`
pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin
mkdir /home/samba/$u_name
mkdir /home/samba/$u_name/profile
chown $u_name:$u_name /home/samba/$u_name
chown $u_name:$u_name /home/samba/$u_name/profile
#
#Теперь как сделать что пароль сгенерированный добавлялся
smbpasswd –a user
smbpasswd –e user
echo "User: $u_name Password: $pass"
qtolikq
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
qtolikq
- рядовой
- Сообщения: 14
- Зарегистрирован: 2011-03-21 11:32:47
Непрочитанное сообщение
qtolikq » 2013-01-11 10:08:04
Charlz_Klug_ писал(а):Посмотрите
здесь.
Приветствую вас с этим как добавить пароль к самой системе понятно (echo "password"|pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin) но пользователь не может зайти по этому паролю пока не зделаеш так:
smbpasswd –a user
SMB password:********
New SMB password:********
qtolikq
-
Гость
- проходил мимо
Непрочитанное сообщение
Гость » 2013-01-11 11:32:06
qtolikq писал(а):Приветствую вас с этим как добавить пароль к самой системе понятно (echo "password"|pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin) но пользователь не может зайти по этому паролю пока не зделаеш так:
smbpasswd –a user
SMB password:********
New SMB password:********
Гибкий
вариант и
ещё более гибкий вариант.
Гость
-
qtolikq
- рядовой
- Сообщения: 14
- Зарегистрирован: 2011-03-21 11:32:47
Непрочитанное сообщение
qtolikq » 2013-01-11 11:42:20
Гость писал(а):qtolikq писал(а):Приветствую вас с этим как добавить пароль к самой системе понятно (echo "password"|pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin) но пользователь не может зайти по этому паролю пока не зделаеш так:
smbpasswd –a user
SMB password:********
New SMB password:********
Гибкий
вариант и
ещё более гибкий вариант.
Если можно в примере ото что-то не пойму как это реализовать из вашего варианта мы только учимся прошу сильно не пинать.
qtolikq
-
Electronik
- капитан
- Сообщения: 1593
- Зарегистрирован: 2008-11-15 17:32:56
- Откуда: Минск
-
Контактная информация:
Непрочитанное сообщение
Electronik » 2013-01-11 12:35:59
Предскажем будущее hw по логам и дампу, снимем сглаз и порчу с рута, поможем придумать пароль(С)
Блог
Electronik
-
Charlz_Klug_
- проходил мимо
Непрочитанное сообщение
Charlz_Klug_ » 2013-01-11 13:06:00
qtolikq писал(а):
Если можно в примере ото что-то не пойму как это реализовать из вашего варианта мы только учимся прошу сильно не пинать.
Почитайте
Вики. Думаю, что информации, описанной в Википедии вам вполне хватит.
Charlz_Klug_
-
qtolikq
- рядовой
- Сообщения: 14
- Зарегистрирован: 2011-03-21 11:32:47
Непрочитанное сообщение
qtolikq » 2013-01-11 14:46:58
Charlz_Klug_ писал(а):Если и Вики мало, то вот вам
ещё.
Здесь нету ни одного примера который нужен мне если можно пример.
Код: Выделить всё
#!/usr/local/bin/bash
#
u_name="$1"
pass=`cat /dev/urandom | tr -dc a-zA-Z0123456789 | head -c 9`
pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin
mkdir /home/samba/$u_name
mkdir /home/samba/$u_name/profile
chown $u_name:$u_name /home/samba/$u_name
chown $u_name:$u_name /home/samba/$u_name/profile
#
#Теперь как сделать что пароль сгенерированный добавлялся
Пробовал так не получается видимо не так делаю.
smbpasswd –a $u_name
expect "New SMB password:" {send "$pass\r"}
expect "Retype new SMB password:" {send "$pass\r"}
smbpasswd –e $u_name
echo "User: $u_name Password: $pass"
Помогите примером.
qtolikq
-
Charlz_Klug_
- проходил мимо
Непрочитанное сообщение
Charlz_Klug_ » 2013-01-11 20:15:13
qtolikq писал(а):Код: Выделить всё
#!/usr/local/bin/bash
#
u_name="$1"
pass=`cat /dev/urandom | tr -dc a-zA-Z0123456789 | head -c 9`
pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin
mkdir /home/samba/$u_name
mkdir /home/samba/$u_name/profile
chown $u_name:$u_name /home/samba/$u_name
chown $u_name:$u_name /home/samba/$u_name/profile
#
#Теперь как сделать что пароль сгенерированный добавлялся
Пробовал так не получается видимо не так делаю.
smbpasswd –a $u_name
expect "New SMB password:" {send "$pass\r"}
expect "Retype new SMB password:" {send "$pass\r"}
smbpasswd –e $u_name
echo "User: $u_name Password: $pass"
Помогите примером.
Код: Выделить всё
imil@Azadbash:~/Temp/expect_sample$ cat sample.exp
#!/usr/bin/expect --
spawn ftp [lrange $argv 0 0]
set timeout 10
expect {
timeout {puts "timed out"; exit}
"connection refused" exit
"unknown host" exit
"Name"
}
send [lrange $argv 1 1]
send \r
expect "Password:"
send [lrange $argv 2 2]
send \r
expect "ftp>"
send "ls\r"
expect "Transfer complete"
send_user "\n"
imil@Azadbash:~/Temp/expect_sample$
Так выглядит в деле:
Код: Выделить всё
imil@Azadbash:~/Temp/expect_sample$ ./sample.exp ftp.freebsd.org anonymous kkk@mail.ru
spawn ftp ftp.freebsd.org
Connected to freebsd.isc.org.
220 Welcome to freebsd.isc.org.
Name (ftp.freebsd.org:imil): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxrwxr-x 3 110 1002 512 Oct 23 2006 pub
226 Directory send OK.
ftp>
imil@Azadbash:~/Temp/expect_sample$
Smb под рукой нет, поэтому пример с FTP. Придётся вам написать expect сценарий (Шебанг expect-овский "#!/usr/bin/expect --") и передавать ему пароль в виде аргумента.
Charlz_Klug_
-
qtolikq
- рядовой
- Сообщения: 14
- Зарегистрирован: 2011-03-21 11:32:47
Непрочитанное сообщение
qtolikq » 2013-01-11 20:21:29
Charlz_Klug_ писал(а):qtolikq писал(а):Код: Выделить всё
#!/usr/local/bin/bash
#
u_name="$1"
pass=`cat /dev/urandom | tr -dc a-zA-Z0123456789 | head -c 9`
pw useradd -n $u_name -c $u_name -d /home/samba/$1 -s /usr/sbin/nologin
mkdir /home/samba/$u_name
mkdir /home/samba/$u_name/profile
chown $u_name:$u_name /home/samba/$u_name
chown $u_name:$u_name /home/samba/$u_name/profile
#
#Теперь как сделать что пароль сгенерированный добавлялся
Пробовал так не получается видимо не так делаю.
smbpasswd –a $u_name
expect "New SMB password:" {send "$pass\r"}
expect "Retype new SMB password:" {send "$pass\r"}
smbpasswd –e $u_name
echo "User: $u_name Password: $pass"
Помогите примером.
Код: Выделить всё
imil@Azadbash:~/Temp/expect_sample$ cat sample.exp
#!/usr/bin/expect --
spawn ftp [lrange $argv 0 0]
set timeout 10
expect {
timeout {puts "timed out"; exit}
"connection refused" exit
"unknown host" exit
"Name"
}
send [lrange $argv 1 1]
send \r
expect "Password:"
send [lrange $argv 2 2]
send \r
expect "ftp>"
send "ls\r"
expect "Transfer complete"
send_user "\n"
imil@Azadbash:~/Temp/expect_sample$
Так выглядит в деле:
Код: Выделить всё
imil@Azadbash:~/Temp/expect_sample$ ./sample.exp ftp.freebsd.org anonymous kkk@mail.ru
spawn ftp ftp.freebsd.org
Connected to freebsd.isc.org.
220 Welcome to freebsd.isc.org.
Name (ftp.freebsd.org:imil): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxrwxr-x 3 110 1002 512 Oct 23 2006 pub
226 Directory send OK.
ftp>
imil@Azadbash:~/Temp/expect_sample$
Smb под рукой нет, поэтому пример с FTP. Придётся вам написать expect сценарий (Шебанг expect-овский "#!/usr/bin/expect --") и передавать ему пароль в виде аргумента.
Спасибо огромное за помощь разобрались как работает expect и сразу все заработала.
qtolikq
-
FiL
- ст. лейтенант
- Сообщения: 1375
- Зарегистрирован: 2010-02-05 0:21:40
Непрочитанное сообщение
FiL » 2013-01-14 21:41:57
ужас-ужас. читать man smbpasswd уже не модно? Там есть ключик -s специально для таких случаев.
FiL
-
Charlz_Klug_
- проходил мимо
Непрочитанное сообщение
Charlz_Klug_ » 2013-01-15 6:06:13
FiL писал(а):ужас-ужас. читать man smbpasswd уже не модно? Там есть ключик -s специально для таких случаев.
Спасибо, буду знать.
Charlz_Klug_