Метки
amd bittorrent bug centos debian enlightenment fedora fedora 8 fedora 9 fedora 10 fedora 11 fedora 12 fedora 13 fedora 15 fedora 16 FedoraMD fglrx firefox flash player gnome google intel interview java kde kernel linux livecd migrate moldova nvidia openoffice OpenStreetMap opera Orange ovirt radeon red hat rpmfusion Sandel skype video virtualisation vmware wine
Использование порта 443 несколькими службами одновременно при помощи SSLH
2013-04-14 13:26 | Автор: jekader | Filed under: Jekader
Так уж устроен мир, что некоторые порты TCP/IP имеют лучшую "репутацию" чем другие. Даже в самых параноидальных сетях порт 443 зачастую разрешён для прямых SSL подключений. В связи с этим многие службы вешаются на порт 443 для простоты доступа к ним отовсюду. Логично, что для каждой такой службы требуется один "белый" IP, а это дело стоит денег.
Тут нам на помощь и приходит sslh - мультиплексор, который анализирует первый пакет от клиента, и по его содержимому переадресовывает траффик нужной службе!
Итак, допустим у нас есть всего один внешний IP и мы хотим повесить на 443 порт SSH, apache и OpenVPN.
1) ставим sslh (для openvpn нужна версия не меньше 1.10):
apt-get install sslh
2) перенастраиваем Apache чтобы освободить 443 порт - вешаем SSL скажем на 444
3) проверяем, где у нас висят SSH и OpenVPN - по умолчанию это *:22 и *:1194
4) открываем /etc/default/sslh и выставляем:
RUN=yes
DAEMON_OPTS="--user sslh --listen 0.0.0.0:443 --openvpn 127.0.0.1:1194 --ssl 127.0.0.1:444 --ssh 127.0.0.1:22 --pidfile /var/run/sslh/sslh.pid"
5) запускаем мультиплексор!
/etc/init.d/sslh start
6) пробуем заходить на все службы через порт 443 и радуемся. Попутно смотрим лог:
tail -f /var/log/auth.log
там хорошо видно, что куда переадресовывается. Сами службы видят перенаправленный траффик как приходящий с 127.0.0.1
Поздравляю, теперь наш порт даёт доступ сразу к нескольким различным службам!
Метки: debian, httpd, openssh, openvpn, ssl
14, 2013 21:51
пока не нужно, но идея класс. Жаль в логах apache httpd не будет адреса клиента. может mod_rpaf можно с sslh подружить?
15, 2013 22:11
Само собой, это решение для тех, у кого есть только один IP и не сильно нагруженный сервер. Ну да ничего, скоро наступит счастье вместе с ipv6 😉
10, 2013 8:22
Для апача в качестве backend есть модуль RPAF который подменяет исходный IP в логах. В данном случае он не сработает, конечно, но знать об этом не помешает!