Intereting Posts
удаление firewalld со всеми конфигурациями с использованием yum Ошибка импорта пакета python пакета lxml в Ubuntu Резервная копия rsync не включает / boot и / home Как подключиться к удаленному серверу Windows Windows из linux mint? Как вставить первую строку одного файла в первую строку другого? остановить внешний жесткий диск от групповой дискеты понимать обозначение символических ссылок Могу ли я запустить команду arbitary на удаленном сервере через tcpserver? Ограничение или правильная обработка больших количеств журналов Клиент CentOS 7 DHCP – Как использовать «бесclassовые статические маршруты» («код 121»)? как назначается комбинация клавиш для правильной программы? Время выполнения вычисления pi в сценариях оболочки Чистая установка Debian 8.3 отсутствует PermitRootLogin в ssh_config (не может войти в ssh root) Пользователь FTP создает файл, который не является исполняемым apache Где ext4 хранит размеры каталога?

SSH-сервер также запускает клиент OpenVPN – время входящего SSH

У меня есть удаленный домашний сервер с Debian. Я использую SSH на нестандартном порту из-за блокировки ISP-порта 22. У меня нет проблем с подключением к SSHd из-за пределов моей сети с клиентом OpenVPN, который не работает на сервере. Во-вторых, я запускаю клиент OpenVPN, я получаю следующее:

$ ssh -v -p 922 domain.dyndns.org OpenSSH_6.7p1 Debian-5+deb8u3, OpenSSL 1.0.1t 3 May 2016 debug1: Reading configuration data /home/user/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to domain.dyndns.org [1.2.3.4] port 922 debug1: connect to address 1.2.3.4 port 922: Connection timed out ssh: connect to host domain.dyndns.org port 922: Connection timed out 

У меня динамический IP-адрес, но сервер находится за маршрутизатором, поэтому я не могу заставить привязать sshd к общедоступному адресу. Даже если это возможно, я не уверен, что пакеты не потеряются через tun0.

В моих путешествиях в Интернете, чтобы попытаться решить эту проблему, я нашел следующий скрипт.

 #!/bin/bash grep -q fix_ssh /etc/init.d/openvpn || sed -i.backup -e '/start_vpn ()/ i fix_ssh () {\ ip rule add fwmark 65 table novpn\ ip route add default via 192.168.0.1 dev eth0 table novpn\ ip route flush cache\ iptables -t mangle -A OUTPUT -p tcp --sport 922 -j MARK --set-mark 65\ iptables -A INPUT -i tun0 -p tcp -m tcp --dport 922 -j DROP\ }\ undo_fix_ssh () {\ iptables -D INPUT -i tun0 -p tcp -m tcp --dport 922 -j DROP\ iptables -t mangle -D OUTPUT -p tcp --sport 922 -j MARK --set-mark 65\ ip route del default via 192.168.0.1 dev eth0 table novpn\ ip rule del fwmark 65 table novpn\ ip route flush cache\ }'\ -e 's/start_vpn$/& \&\& fix_ssh/' \ -e 's/stop_vpn$/& \&\& undo_fix_ssh/' \ /etc/init.d/openvpn 

Я попытался запустить его без успеха. По сравнению с другими ответами, которые я нашел, я не совсем уверен, где проблема с этим решением, и у меня закончились идеи по устранению неполадок.

Я не совсем уверен, какой лучший подход к этой проблеме. Служба OpenVPN – это коммерческая услуга, которую я не контролирую.

Изменить. Моя цель – использовать SSH в службе SSH, пока она работает и подключена к серверу OpenVPN. Я хочу, чтобы весь другой трафик проходил через VPN. В конце концов, я хочу использовать SSHFS для просмотра файлов на SSH-сервере, а затем переадресацию портов, чтобы мой ноутбук мог пропустить одно и то же VPN-соединение.

------------ ---------------- |My Server |--->OpenVPN>---|Commercial VPN |-->Internet>--Web ------------ Over internet | Server | | ----------------- /|\ SSH Over Internet /|\ ---------- | Laptop | ----------

Изменить 2: Нет. Ноутбук находится в другом месте на сервере SSHd. Отредактированное изображение снова для ясности.

Изменить 3: В работе задействован маршрутизатор. Сервер находится за маршрутизатором. tun0 – это соединение OpenVPN.

$ sudo /sbin/iptables-save # Generated by iptables-save v1.4.14 on Mon Dec 26 13:03:22 2016 *mangle :PREROUTING ACCEPT [11077726:5767595109] :INPUT ACCEPT [9445198:5734927839] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [10132207:7571233156] :POSTROUTING ACCEPT [10132784:7571256515] -A OUTPUT -p tcp -m tcp --sport 922 -j MARK --set-xmark 0x41/0xffffffff COMMIT # Completed on Mon Dec 26 13:03:23 2016 # Generated by iptables-save v1.4.14 on Mon Dec 26 13:03:23 2016 *filter :INPUT ACCEPT [9445173:5734925686] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [10132201:7571259291] -A INPUT -i tun0 -p tcp -m tcp --dport 922 -j DROP COMMIT # Completed on Mon Dec 26 13:03:23 2016

Edit: Я буду лучше иметь что-то вроде малины pi для ssh во избежание этого? У меня возникнут различные трудности? Я все еще не уверен в первопричине, чтобы узнать, разрешит ли это что-либо. Является ли цепь туннелей SSH плохим? Идея:

[Ноутбук] -> SSH -> ———> – [Pi] -Same Network -> – [Мой сервер] -> – [OpenVPN]

  /|\ [router] 

Редактировать: Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.68.10.5 128.0.0.0 UG 0 0 0 tun0 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0 10.68.10.1 10.68.10.5 255.255.255.255 UGH 0 0 0 tun0 10.68.10.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 128.0.0.0 10.68.10.5 128.0.0.0 UG 0 0 0 tun0 192.40.88.17 192.168.0.1 255.255.255.255 UGH 0 0 0 eth0 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

Содержимое файла .ovpn: client dev tun proto udp remote server 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt tls-client remote-cert-tls server auth-user-pass auth.txt comp-lzo verb 1 reneg-sec 0 crl-verify crl.pem

# Разрешить вызов встроенных исполняемых файлов и пользовательских скриптов. script-security 2

# Парширует параметры DHCP из openvpn для обновления resolv.conf вверх / etc / openvpn / update-resolv-conf down / etc / openvpn / update-resolv-conf