The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Смена пароля через cgi. Хелп."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Смена пароля через cgi. Хелп."  
Сообщение от Lex (??) on 05-Май-06, 13:24 
В общем есть такая штука называется vpopmail у нее команда vpasswd
так вот, как передать ей параметры через скрипт на перле?
Она дает такой диалог
./vpasswd  mymail@mydomain
Please enter password for mymail@mydomain
enter password again:

В принципе вопрос в передаче инфы команде, при диалоге.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Смена пароля через cgi. Хелп."  
Сообщение от GD on 05-Май-06, 13:29 
>В общем есть такая штука называется vpopmail у нее команда vpasswd
>так вот, как передать ей параметры через скрипт на перле?
>Она дает такой диалог
>./vpasswd  mymail@mydomain
>Please enter password for mymail@mydomain
>enter password again:
>
>В принципе вопрос в передаче инфы команде, при диалоге.


# /usr/local/vpopmail/bin/vpasswd
vpasswd: usage: [options] email_address [password]
options: -v (print version number)
         -a (use apop, pop is default)

хотя возможно это шибко древняя версия и сейчас все уже не так

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "Смена пароля через cgi. Хелп."  
Сообщение от Lex (??) on 05-Май-06, 13:55 
>
># /usr/local/vpopmail/bin/vpasswd
>vpasswd: usage: [options] email_address [password]
>options: -v (print version number)
>         -a (use apop,
>pop is default)
>
>хотя возможно это шибко древняя версия и сейчас все уже не так
>


я б не мудрил если б qmailadmin работал корректно. А то не хочет менять пароли из под пользователей. Уходит в таймаут и потом ошибка 500. Хотя редиректы можно менять. Вот и хочется в обход этого qmail-admin сделать.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "Смена пароля через cgi. Хелп."  
Сообщение от GD on 05-Май-06, 14:57 
>>
>># /usr/local/vpopmail/bin/vpasswd
>>vpasswd: usage: [options] email_address [password]
>>options: -v (print version number)
>>         -a (use apop,
>>pop is default)
>>
>>хотя возможно это шибко древняя версия и сейчас все уже не так
>>
>
>
>я б не мудрил если б qmailadmin работал корректно. А то не
>хочет менять пароли из под пользователей. Уходит в таймаут и потом
>ошибка 500. Хотя редиректы можно менять. Вот и хочется в обход
>этого qmail-admin сделать.

а при чем здесь qmail-admin?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "Смена пароля через cgi. Хелп."  
Сообщение от phpcoder email(ok) on 05-Май-06, 14:51 
Вижу два пути... Первый это expect, правда, сам я его не пробовал, но он вроде как раз про это :)

Второй это... гм.. не знаю как на перле но знаю как на шелле... в приципе если у тебя скрипт решает только эту задачу, то можно написать скрипт на шелле и всё.

Сейчас в принципе проверил и вроде работает:


[c0der@semushin ~]$ vim passwd.sh
[c0der@semushin ~]$ chmod u+x passwd.sh
[c0der@semushin ~]$ ./passwd.sh                                                                          
Password: 123
Retype: 456
Password is: 123 / 456
[c0der@semushin ~]$ echo -e "123\n456" | ./passwd.sh                                                      
Password: Retype: Password is: 123 / 456
[c0der@semushin ~]$ ./passwd.sh <<                                                                        
zsh: parse error near `\n'
[c1der@semushin ~]$ ./passwd.sh <<EOF                                                                    
heredoc> 1234
heredoc> 567
heredoc> EOF
Password: Retype: Password is: 1234 / 567
[c0der@semushin ~]$ cat passwd.sh                                                                         17:49
#!/bin/sh

echo -n "Password: "
read PASS
echo -n "Retype: "
read PASS2

echo "Password is:" $PASS "/" $PASS2

[c0der@semushin ~]$

Тут аж двумя путями можно: и через трубу и с помощью контрукции test here (как-то так она называется %))

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

5. "Смена пароля через cgi. Хелп."  
Сообщение от Pikador (ok) on 05-Май-06, 15:10 
>Вижу два пути... Первый это expect, правда, сам я его не пробовал,

Так уж легче empty, простая и удобная вещь.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

6. "Смена пароля через cgi. Хелп."  
Сообщение от Lex (??) on 06-Май-06, 05:15 
аха, такая конструкция работает. ./vpasswd  user@mymail.ru  my_pass

теперь cgi-ка что то типа так?

#!/usr/bin/perl -w
################################################################################
use        strict;
use        CGI qw(:param);
use        CGI qw(:standard);
my $sv_user = param('user');
my $sv_pass = param('pass');
system "/mail/bin/vpasswd $sv_user $sv_pass";


Осталось проверку прикрутить к ldap-у, что б юзер сначало старый мог пароль вбить, а потом по условию типа что все верно, ему этот скрипт подсовывать.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

7. "Смена пароля через cgi. Хелп."  
Сообщение от Lex (??) on 06-Май-06, 05:34 
мля такая же ошибка после исполнения этого скрипта в логах
[error] Premature end of script headers: ps.cgi

причем апатч запущен с той же группой и уидом что и vpasswd

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

8. "Смена пароля через cgi. Хелп."  
Сообщение от Lex (??) on 06-Май-06, 05:41 
лол, надобыло вот это
print "Content-type: text/html\n\n";
Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру