-Поиск по дневнику

Поиск сообщений в ru_admin

 -Подписка по e-mail

 

 -Интересы

администрирование linux unix

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 10.02.2005
Записей:
Комментариев:
Написано: 50


Установка зашифрованного соединения между компьютерами на основе SSL

Понедельник, 21 Февраля 2005 г. 04:41 + в цитатник
Установка зашифрованного соединения между компьютерами на основе SSL

Настраиваем защищенное получение почты

Соединение двух портов на разных компьютерах через зашифрованное соединение можно установить, использую программу stunnel. Сам дистрибутив программы фриварный и работает как под *nix так и под w32, взять можно на http://www.stunnel.org/download/

Пример: незащищенное pop3 соединение двух портов (Хост А и хост В)

A:1099 ----->>Прозрачные данные>>-----> B:110

Защищенное pop3 соединение:

A:1099->A:995(stunnel client) -->>Шифрованные данные>>-> B:995(stunnel server) -> B:110

первым делом нужно проинсталить сервер (Linux/Debian, Stunnel-4.07):

tar -xzf stunnel-4.07.tar.gz

cd stunnel-4.07

Перед следующей коммандой ужно убедится,что существует директория /etc/ssl/certs/trusted и если нет, создать ее

./configure --with-pem-dir=/etc/ssl/certs --with-cert-dir=/etc/ssl/certs/trusted

Опция --with-pem-dir указывает каталог, где будет находиться секретный ключ и сертификат. Каталог зависит от опций компиляции OpenSSL. Это может быть /etc/ssl/certs,/usr/local/ssl/certs, /var/openssl/certs или какой-либо другой. Опция --with-cert-dir указывает каталог, где будут находиться проверенные сертификаты удаленных хостов. В принципе, можно указать любой каталог для хранения сертификатов и секретного ключа, это особого значения не имеет.

Далее комманда собрать пакет:

make

После сборки stunnel будут созданы секретный ключ и сертификат сервера, которые будут помещены в файл stunnel.pem. Для этого потребуется ввести некоторые данные. Первые три - код страны, название штата (области) и город:

/usr/bin/openssl req -new -x509 -days 365 -nodes \
-config stunnel.cnf -out stunnel.pem -keyout stunnel.pem
Using configuration from stunnel.cnf
Generating a 1024 bit RSA private key
.......................++++++
........++++++
writing new private key to 'stunnel.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:EN
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:city


Затем - название организации и отдела организации:


Organization Name (eg, company) [Stunnel Developers Ltd]:company
Organizational Unit Name (eg, section) []:


Затем имя сервера:


Common Name (FQDN of your server) []:server.com
Common Name (default) []:localhost

Второе значение (localhost) проставляется без твоей помощи. От этого можно избавится, если удалить строку 1. commonName_value = localhost в файле stunnel.cnf, удалить файл stunnel.pem (если он есть) и запустить сборку заново, введя в этом месте имя хоста.

В конце будут выведены данные созданного сертификата:

/usr/bin/openssl x509 -subject -dates -fingerprint -noout \
-in stunnel.pem
subject= /C=EN/ST=Some-State/L=сшен/O=company/CN=server.com/CN=localhost
notBefore=Mar 11 22:53:11 2001 GMT
notAfter=Mar 11 22:53:11 2002 GMT
MD5 Fingerprint=FA:2A:D8:D7:4B:23:D5:6C:67:22:D9:EC:06:C4:26:6F


Осталось только установить пакет:


su -c "make install"

После установки должны появиться следующие файлы:

/usr/local/sbin/stunnel
/usr/local/lib/stunnel.so
/usr/local/man/man8/stunnel.8
/usr/local/var
/usr/local/etc/stunnel/stunnel.pem

Инсталяция сервера завершена

До того места мануал частично взят с http://dh.opennet.ru/

Теперь займемся клиентом (используется windows-клиент)

Скачать можно с: http://www.stunnel.org/download/stunnel/win32/stunnel-4.07.exe

Если не установлены библиотеки OpenSSL, которые требует прорамма, взять можно с : http://www.stunnel.org/download/stunnel/win32/openssl-0.9.7e-zlib/openssl.zip
, распаковать и все .dll скопировать в \windows\system32

Далее скопировать созданый на сервере /usr/local/etc/stunnel/stunnel.pem на машину клиента в папку с stunnel-4.07.exe

Осталось главное - настроить файлы конфигов stunnel.conf

На сервере (/usr/local/etc/stunnel/stunnel.conf):

chroot = /usr/local/var/stunnel/
setuid = nobody
setgid = nogroup
pid = /stunnel.pid

verify = 2
CAfile = /usr/local/etc/stunnel/stunnel.pem

debug = 7
output = stunnel.log

[pop3s]
accept = 995
connect = 110

Все остальное может быть закомментировано

И на клиенте (stunnel.conf в директории с stunnel-4.07.exe):

cert = stunnel.pem
client = yes

[pop3s]
accept = 995
connect = 110

Все остальное может быть закомментировано

Теперь можно запускать stunnel на сервере (комманда stunnel) и клиент на windows-машине (stunnel-4.07.exe). В почтовом клиенте вместо удаленного имени компьютера ставим локальное и порт 995, дальше по ssl-тунелю данные на сервер пойдут по защищенному каналу

(с) ru_admin

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку