ALT Linux sysadmins discussion
 help / color / mirror / Atom feed
From: "Nikolay A. Fetisov" <naf@naf.net.ru>
To: Dank Bagryantsev <4alt@mail.ru>,
	ALT Linux sysadmins' discussion <sysadmins@lists.altlinux.org>
Subject: Re: [Sysadmins] Ввод логина-пароля для доступа к сайту неизвестных пользователю
Date: Thu, 28 Oct 2010 09:38:20 +0400
Message-ID: <1288244301.32412.116.camel@v3405.naf.net.ru> (raw)
In-Reply-To: <1041415051.20101028054015@lugaport.net>

В Чтв, 28/10/2010 в 05:40 +0300, Dank Bagryantsev пишет:
> ...
> пока никаких толковых наработок я не нашел в этом направлении.

Там наработок-то... В простейшем случае для http:// на nginx'е
конфигурация для сайта вида

server {
    listen 80;
    server_name .service.tld;
    proxy_set_header  Host $host;
    location /auth {
	if ($request_method = POST ) {
 	      	proxy_pass http://filter_host;
        }
        proxy_pass http://service.tld;
    }
    location / {
        proxy_pass http://service.tld;
    }
}

И на filter_host выполнять подмену паролей в отправляемых POST'ах.
Например, так:
----------------------
#!/usr/bin/perl -w
use strict;
use HTTP::Proxy;
use HTTP::Proxy::BodyFilter;

my $proxy = HTTP::Proxy->new(port => 80);
$proxy->push_filter(
   mime => 'text/html',
   request => HTTP::Proxy::BodyFilter->new(
      sub {
        my ( $self, $dataref, $message, $protocol, $buffer ) = @_;
        $$dataref =~ s/fakepassword/realpassword/g;
        }
      )
    );

$proxy->start;
----------------------
(Выдрано из документации к HTTP::Proxy, работоспособность не
проверялась.)

> ... но если доступ к nginx будет все-равно через VPN, то
> можно будет попробовать вариант перебрасывать с http nginx'a на https
> сайтов (где https обязателен), чтобы избежать самоподписанных сертификатов.

Этот вариант сильно хуже - придётся разбирать на прокси-сервере все
ответы и менять https:// на http:// перед отправкой их клиенту. И
наоборот. Причём только в нужных URL. 

> Кстати, а вариант с промежуточным http-сервером и открытием сайтов во
> фреймах и внесение-отсылка логинов-паролей через JavaScript, в моем
> случае будет работоспособным?

Зависит от сайтов. На первый взгляд, потребует больше программного кода
на стороне сервера, и передачу на сторону пользователей (и потенциальных
троянов на их машинах) исходных паролей.


-- 
С уважением,
Николай Фетисов




  reply	other threads:[~2010-10-28  5:38 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-01 19:42 ` [Sysadmins] Прощай, немытая рассылка! Mykola S. Grechukh
2010-11-01 19:47 ` Anatol B. Bazyukin
2010-11-02  6:17   ` Mikhail A. Pokidko
2010-11-02  6:20   ` Денис Назаров
2010-10-26 16:19     ` [Sysadmins] Ввод логина-пароля для доступа к сайту неизвестных пользователю Dank Bagryantsev
2010-10-27  6:20       ` Александр Ежов
2010-10-27 16:44         ` Dank Bagryantsev
2010-10-27 11:41       ` Michael Shigorin
2010-10-27 16:46         ` Dank Bagryantsev
2010-10-27 12:45       ` Roman Lesnichenko
2010-10-27 16:46         ` Dank Bagryantsev
2010-10-27 19:48           ` Roman Lesnichenko
2010-10-27 19:57           ` Roman Lesnichenko
2010-10-29 13:47             ` Mykola S. Grechukh
2010-10-29 13:51               ` melcomtec
2010-10-28 22:15           ` admin931
2010-10-27 20:16         ` melcomtec
2010-10-27 20:21           ` Roman Lesnichenko
2010-10-27 20:39             ` melcomtec
2010-10-27 20:44               ` Roman Lesnichenko
2010-10-27 21:05                 ` melcomtec
2010-10-27 21:12                   ` [Sysadmins] Adm Michael Shigorin
2010-10-27 21:10             ` Michael Shigorin
2010-10-27 20:34           ` [Sysadmins] Ввод логина-пароля для доступа к сайту неизвестных пользователю Roman Lesnichenko
2010-10-27 20:49             ` melcomtec
2010-10-27 21:42               ` Roman Lesnichenko
2010-10-27 21:48                 ` [Sysadmins] Administrivia Michael Shigorin
2010-10-27 21:52                   ` Roman Lesnichenko
2010-11-01 15:45             ` [Sysadmins] Ввод логина-пароля для доступа к сайту неизвестных пользователю Михаил
2010-11-01 17:40               ` Roman Lesnichenko
2010-11-01 17:44                 ` Andrii Dobrovol`s`kii
2010-11-01 18:13                     ` Михаил
2010-11-02 11:34                     ` [Sysadmins] ну что же мы так :((( Michael Shigorin
2010-11-02 17:27                       ` Denis Nazarov
2010-11-02 11:44               ` [Sysadmins] Administrivia Michael Shigorin
2010-10-27 15:17       ` [Sysadmins] Ввод логина-пароля для доступа к сайту неизвестных пользователю Nikolay A. Fetisov
2010-10-27 16:49         ` Dank Bagryantsev
2010-10-27 17:21           ` Michael Shigorin
2010-10-28  2:38             ` Dank Bagryantsev
2010-10-27 21:54           ` Nikolay A. Fetisov
2010-10-28  2:40             ` Dank Bagryantsev
2010-10-28  5:38               ` Nikolay A. Fetisov [this message]
2010-10-28  7:32               ` Michael Shigorin
2010-10-28  8:50               ` Yuri Bushmelev
2010-10-28  9:12                 ` Gennadii Redko
2010-10-28 10:13                   ` Nikolay A. Fetisov
2010-10-28 10:25                 ` Michael Shigorin
2010-10-28 18:28       ` Dank Bagryantsev
2010-11-02 17:22       ` podenok

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1288244301.32412.116.camel@v3405.naf.net.ru \
    --to=naf@naf.net.ru \
    --cc=4alt@mail.ru \
    --cc=sysadmins@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux sysadmins discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
		sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
	public-inbox-index sysadmins

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sysadmins


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git