На этот вопрос уже есть ответ здесь:
У меня проблемы с доступом к Raspberry Pi (работает Raspbian) с моего WAN IP.
- TightVNCserver установлен и работает на порту
5901
на малиновом пи. - Переадресация портов включена на моем маршрутизаторе / коммутаторе от
5900
в5901
перейдя на внутренний адрес Raspberry Pi. - При использовании внутреннего
192.x.x.x
адрес Raspberry Pi доступен. - При попытке получить доступ к Raspberry Pi из моей внешней глобальной сети с указанным портом 5901 я получаю «соединение отказано».
- Побежал
nmap -sV
сканировать, чтобы проверить порт5901
открыт на Raspberry Pi. - Временно отключил брандмауэр моего маршрутизатора, чтобы увидеть, блокирует ли он что-либо и дает ли тот же результат.
Какие-нибудь мысли?
Сначала используйте canyouseeme.org, чтобы убедиться, что правило NAT работает правильно. Также обратите внимание, что VNC не является безопасным протоколом для внешнего доступа, и вполне вероятно, что ваш интернет-провайдер блокирует 5900-5910, поэтому рассмотрите возможность использования другого порта. В общем, лучше всего туннелировать VNC через SSH, если вы хотите выставить его внешне. hertaville.com/2012/09/27/raspbian-raspberry-pi
—
Frank Thomas
Одна идея заключается в том, что ваш интернет-провайдер блокирует порт 5900, поэтому даже при отключенном брандмауэре 100% трафика отсутствует, независимо от того, что вы делаете. Другая идея, возможно, вы не передаете правильный протокол. Это должен быть порт 5900 с использованием TCP.
—
JakeGould
@FrankThomas, вероятно, прав, что VNC внешне не настолько безопасен, я не уверен, какой протокол используется, поэтому, возможно, любой из них должен быть обернут в SSH. Но есть ли у вас источник для этого, что VNC небезопасен?
—
barlop
@ barlop, я могу только предложить вам Google, чтобы информация не устарела, но сводится к этим основным проблемам. Во-первых, в общем VNC не поддерживает шифрование соединения, поэтому поток может быть скопирован и просмотрен пользователями в сетях-посредниках. Некоторые конкретные реализации VNC (например, Ultra) могут зашифровать поток, если клиент и сервер сопряжены, но есть множество ограничений. Во-вторых, по устаревшим причинам большинство реализаций VNC-серверов ограничивают пароли до 8 символов и не любят спец. это также зависит от поставщика.
—
Frank Thomas
@ barlop, есть некоторые протоколы, которые являются безопасными, например TeamViewer, и RDP может быть защищен, но на самом деле, большинство протоколов локальной сети следует запускать либо через SSH-шлюз, либо через сильный VPN (предпочтительно L2TP / IPSec, а предпочтительно не SSL) ,
—
Frank Thomas