Есть ли способ определить диапазон портов в Stunnel?

611
ajoseps

У меня есть несколько клиентов в одной коробке, которые будут подключаться к одному домену. Каждый клиент должен пройти через свой порт. Я могу просто определить записи несколько раз, но есть ли более простой способ перечислить принятый последовательный диапазон портов?

# stunnel.conf  [client-1] client = yes accept = 127.0.0.1:5098 connect = target-domain.com:443  [client-2] client = yes accept = 127.0.0.1:5099 connect = target-domain.com:443  [client-3] client = yes accept = 127.0.0.1:5100 connect = target-domain.com:443  [client-4] client = yes accept = 127.0.0.1:5101 connect = target-domain.com:443  [client-5] client = yes accept = 127.0.0.1:5102 connect = target-domain.com:443 
0

1 ответ на вопрос

2
Patrick Mevzek

Я не думаю, что вы можете иметь диапазоны в stunnelконфигурации.

stunnelдокументация на https://www.stunnel.org/static/stunnel.html гласит:

Параметр адреса опции может быть:

Номер порта.

Пара IP-адресов, разделенных двоеточиями (IPv4, IPv6 или имя домена) и номер порта.

Путь к сокету Unix (только для Unix).

(примечание: номер порта)

а также:

принять = [ХОСТ:] ПОРТ

принимать соединения по указанному адресу

Возможные альтернативные решения, которые я могу придумать (не исчерпывающий список):

  • автоматически генерировать stunnelконфигурацию из какого-либо другого источника с любым типом системы шаблонов (что позволит простой команде цикла генерировать каждый оператор из диапазона портов),
  • определить один порт и использовать его iptablesдля переадресации каждого клиентского порта на единственный, определенный в stunnel; или redirкоманда ( https://linux.die.net/man/1/redir )
  • использовать другое программное обеспечение, так HAProxyкак его bindопция специально разрешает диапазоны портов: bind [<address>]:<port_range> [, ...] [param*]и:<port_range> is either a unique TCP port, or a port range for which the proxy will accept connections for the IP address specified above.
Знаете ли вы, если переадресация порта с помощью `iptables` вызовет какие-либо проблемы с несколькими одновременными сеансами HTTPS / TCP? ajoseps 6 лет назад 0
@ajoseps Это ничего не должно изменить. См. Этот вопрос для некоторой помощи: https://askubuntu.com/questions/104824/port-forward-to-a-port-on-the-same-machine Patrick Mevzek 6 лет назад 0
Я думаю, в любом случае мне нужно было бы автоматически генерировать команды `iptable` или автоматически генерировать stunnel.conf. Это просто вопрос того, какой конф-файл я выбрал для автоматической генерации. ajoseps 6 лет назад 0