The OpenNET Project / Index page

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

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

"смена паролей пользователей через веб интерфейс"  
Сообщение от sugresmax email(ok) on 17-Апр-07, 15:28 
Приветствую всех.
Хочу сделать бесплатный хостинг в локальной сети.
Встал вопрос: как пользователь сможет изменить свой пароль для доступа к своему домашнему каталогу через ftp? По ssh я пускать их не хочу на сервер. (Или можно как то закрыть пользователя в домашнем каталоге?)
sudo тоже применять думаю нет смысла (опасно).
Если есть какие то идеи по этому поводу, отпишитесь пожалуйста. Заранее спасибо.

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

 Оглавление

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


1. "смена паролей пользователей через веб интерфейс"  
Сообщение от SDenis (??) on 17-Апр-07, 17:38 
>Приветствую всех.
>Хочу сделать бесплатный хостинг в локальной сети.
>Встал вопрос: как пользователь сможет изменить свой пароль для доступа к своему
>домашнему каталогу через ftp? По ssh я пускать их не хочу
>на сервер. (Или можно как то закрыть пользователя в домашнем каталоге?)
>
>sudo тоже применять думаю нет смысла (опасно).
>Если есть какие то идеи по этому поводу, отпишитесь пожалуйста. Заранее спасибо.
>

Usermin ?

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

2. "смена паролей пользователей через веб интерфейс"  
Сообщение от Adrian on 24-Апр-07, 13:54 
>Приветствую всех.
>Хочу сделать бесплатный хостинг в локальной сети.
>Встал вопрос: как пользователь сможет изменить свой пароль для доступа к своему
>домашнему каталогу через ftp? По ssh я пускать их не хочу
>на сервер. (Или можно как то закрыть пользователя в домашнем каталоге?)
>
>sudo тоже применять думаю нет смысла (опасно).
>Если есть какие то идеи по этому поводу, отпишитесь пожалуйста. Заранее спасибо.
>

delieta prosta ..

stavish proftpd + mysql  + script na php


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

3. "смена паролей пользователей через веб интерфейс"  
Сообщение от btr email(??) on 25-Апр-07, 11:36 
>>Приветствую всех.
>>Хочу сделать бесплатный хостинг в локальной сети.
>>Встал вопрос: как пользователь сможет изменить свой пароль для доступа к своему
>>домашнему каталогу через ftp? По ssh я пускать их не хочу
>>на сервер. (Или можно как то закрыть пользователя в домашнем каталоге?)
>>
>>sudo тоже применять думаю нет смысла (опасно).
>>Если есть какие то идеи по этому поводу, отпишитесь пожалуйста. Заранее спасибо.
>>
>
>delieta prosta ..
>
>stavish proftpd + mysql  + script na php


вот тебе скрпит.
В веб форме примерно такое. Скрипт проверит старый пасс и заменит на новый если все ок.Схемка немного опасная, но в целом если внутри лана юзать, то пойдет. По крайней мере все просто.
в хтмлку:

                          <FORM
                          action=passwd.cgi
                          method=post style="DISPLAY: inline"
                          AUTOCOMPLETE="off">


                            <B>Введите ваше имя <br>
<INPUT id=email maxLength=50 name=email maxLength=50 type=text> <br>

Введите ваш новый пароль:</B><br>
<INPUT id=repass maxLength=50 name=repass maxLength=50 type=text>
<br><br>
Введите ваш старый пароль:</B><br>
<INPUT id=pass_old maxLength=50 name=pass_old maxLength=50 type=text>
<br><br>
<INPUT border=0 src="green_so_btn.gif"
                              type=image></body></html>


Сам passwd.cgi:

#!/usr/bin/perl -w
################################################################################
use strict;
use IO::Socket qw(:DEFAULT :crlf);
use        strict;
use        CGI qw(:param);
use        CGI qw(:standard);

my $host = shift || 'your.ftp_host';
my $port = shift || '21';

my $socket = IO::Socket::INET->new(PeerAddr => $host, PeerPort => $port) or die "no sock $!";

my $answer;


my $username = param('email');
my $mypass = param('repass');
my $pass_old = param('pass_old');

$answer = <$socket>;


# send username, pass
print $socket "user " . $username,CRLF;
$answer = <$socket>;
print $socket "pass " . $pass_old,CRLF;

$answer .= <$socket>;
print $socket   "quit " ,CRLF;
#print "$answer\n";
my $mess = "$answer";
#print $mess;

if ($mess =~ m/logged in/) {
print "Content-type: text/html\n\n";

# ТУТ СТАВИШЬ СИСТЕМНУЮ КОМАНДУ
system "/usr/bin/passwd $username $mypass";

printf "Пароль успешно изменен!\n";
} else {

print "Content-type: text/html\n\n";
printf "Хуй волкам сказала красная шапочка, и почесала свою волосатую грудь! Старые пaроль не тот\n";
};

Должно работать.

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

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

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




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

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