fizord.ru - статьи - 413
[главная] | [каталоги]

2
создан: 2023-05-12 16:38:29
пользователь: cloud раздел: linux
[221]
443 port, sslh, nginx, openvpn
Необходимо спрятать за 443 портом подключение к веб-серверу, к openvpn (можно и к ssh)
tag: 443, REMOTE_ADDR, nginx, transparent, sslh, debian, 1 port for all, один порт для всего

1. apt-get install sslh

2. nano /etc/default/sslh
>
# Default options for sslh initscript
# sourced by /etc/init.d/sslh

RUN=yes

# binary to use: forked (sslh) or single-thread (sslh-select) version
# systemd users: don't forget to modify /lib/systemd/system/sslh.service
DAEMON=/usr/sbin/sslh

##
DAEMON_OPTS="--user sslh --transparent --listen 192.168.1.100:443 --openvpn 192.168.1.100:1194 --tls 192.168.1.100:4443 --pidfile /var/run/sslh/sslh.pid"


описание:
192.168.1.100 - даёт вашему серверу ваш роутер, внешний ип адрес сервера.
--transparent - необходимо, чтобы ваш nginx правильно отдавал REMOTE_ADDR (ип адреса клиентов, для этого мы ещё настроим в 5. пункте "sslh-transparent" дополнительно)

3. nginx
в настройках /etc/nginx/sites-available у каждого домена меняем на:
listen 4443 ssl;

4. openvpn
/etc/openvpn/server.conf
меняем на:
port 1194
proto tcp


5. sslh-transparent
nano /usr/local/sbin/sslh-transparent
>
[i]#!/bin/bash

iptables -t mangle -N SSLH
iptables -t mangle -A OUTPUT --protocol tcp --out-interface enp0 --sport 4443 --jump SSLH
iptables -t mangle -A OUTPUT --protocol tcp --out-interface enp0 --sport 1194 --jump SSLH
iptables -t mangle -A SSLH --jump MARK --set-mark 0x1
iptables -t mangle -A SSLH --jump ACCEPT
ip rule add fwmark 0x1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100

ip6tables -t mangle -N SSLH
ip6tables -t mangle -A OUTPUT --protocol tcp --out-interface enp0 --sport 4443 --jump ...
загрузить
ещё

fizord.ru © 2024