Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Помогите настроить доступ через тунель(openvpn) на комп в локальной сети.  (Прочитано 1047 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн mmm3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
192.168.1.1/24 домашняя локальная сетка (ip роутера 192.168.1.1 / внешний динамический ип y.y.y.y). внутри локальной сети есть комп 192.168.1.100
есть сервер x.x.x.x с настоенным там openvpn server (tun0 10.8.0.1)
на 192.168.1.100 openvpn client c поднятым tun0 (10.8.0.6)

все настраивал по статье https://codebeer.ru/nastrojka-openvpn-v-debian/
все работает

в iptables
# Generated by iptables-save v1.4.21 on Tue Oct 10 19:29:29 2017
*nat
:PREROUTING ACCEPT [113:7316]
:INPUT ACCEPT [66:4179]
:OUTPUT ACCEPT [46:3379]
:POSTROUTING ACCEPT [46:3379]
-A POSTROUTING -s 10.8.0.6/32 -o eth0 -j SNAT --to-source x.x.x.x
COMMIT
# Completed on Tue Oct 10 19:29:29 2017
# Generated by iptables-save v1.4.21 on Tue Oct 10 19:29:29 2017
*filter
:INPUT ACCEPT [1435:223121]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1469:266112]
-A FORWARD -i tun0 -j ACCEPT
-A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Tue Oct 10 19:29:29 2017

с 192.168.1.100 во внешний мир есть доступ.

Вопрос как сделать настройки iptables чтобы при обращении на внешний ип сервера x.x.x.x а по 80 порту попадал на 192.168.1.100:80 через шлюз tun0?
долго искал в интрернете ничего не нашел.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Если именно на 192.168.1.100:80, то нужно допилить конфиг сервера OVPN, чтобы у него добавлялся маршрут на эту сеть, а потом классический DNAT
Если хорошо подумать и изменить ТЗ без потери функциональности, то первую часть решения можно упразднить.
« Последнее редактирование: 10 Октября 2017, 20:28:11 от fisher74 »

Оффлайн mmm3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
я так понял что надо добавить правило в iptables
это
iptables -t nat -A PREROUTING -p tcp -d x.x.x.x --dport 80 -j DNAT --to-destination 192.168.1.100

но я не знаю как сконфигурировать openvpn

У меня сейчас такая конфигурация на сервере

/etc/openvpn/server.conf
local x.x.x.x                    # Внешний ip сервера, указываем если на машине несколько адресов.
port 1194                            # Порт на котором будет принимать соединения сервер OpenVPN.
proto tcp                            # Для лучшего быстродействия рекомендуется указать udp.
                                     # Если вы используете прокси, необходимо указать tcp.
dev tun                              # Интерфейс туннеля
ca ca.crt                            # Путь к корневому сертификату
cert server.crt                      # Путь к сертификату сервера
key server.key                       # Путь к ключу сервера
dh dh2048.pem                        # Путь к ключу Диффи - Хеллмана
server 10.8.0.0 255.255.255.0        # Пул DHCP виртуальной сети OpenVPN. Работает только с TLS-клиентами в режиме tun.
ifconfig-pool-persist ipp.txt        # Запоминать динамически выданные адреса.
;client-config-dir ccd               # Директория для клиентских конфигов
;push "route 10.0.1.1 255.255.255.0" # Передаем маршрут клиенту (сеть-клиента).
push "redirect-gateway def1"         # Установить шлюзом по умолчанию удаленный сервер.
;push "dhcp-option DNS 8.8.8.8"      # Передаем DNS клиенту.
;client-to-client                    # Если нужно, чтобы клиенты видели друг друга.
keepalive 10 120                     # Каждые 10 секунд посылать ping, перезапустить туннель если сервер не отвечает в течении 120 секунд.
tls-server                           # Включаем TLS
auth SHA512                          # Для аутентификации используются ключи SHA512
tls-auth ta.key 0                    # Путь к ключу TLS
cipher BF-CBC                        # Метод шифрования
comp-lzo adaptive                    # Включить сжатие
user nobody                          # Права, с которыми будет работать OpenVPN.
group nogroup
persist-key                          # Не перечитывать файлы ключей при перезапуске туннеля.
persist-tun                          # Оставить без изменения устройства tun/tap при перезапуске OpenVPN.
status openvpn-status.log            # Лог с информацией о текущих соединениях.
log /var/log/openvpn.log             # Путь к лог-файлу.
verb 3                               # Уровень детализации лога.
mute 10                                 # В лог будет записываться до 10 сообщений из одной категории.


/etc/openvpn/ccd/client1

push "route 192.168.1.0 255.255.255.0"
push "dhcp-option DNS 192.168.1.1"

подскажите как подправить?
в текущей версии не работает

или подскажите может есть где подробная инструкция по настройке такой конфигурации.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Какой "такой"?
Для начала настройте нормально OVPN.
ccd-файлы так же являются частью настройки, а у Вас там явная ошибка.
Почитайте, что же делает первая директива в Вашем ccd. И точно это действие соответствует тому, что Вы закладывали добавляя её?


Пользователь добавил сообщение 11 Октября 2017, 21:07:10:
(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 11 Октября 2017, 21:07:10 от fisher74 »

 

Страница сгенерирована за 0.053 секунд. Запросов: 25.