Вопрос или проблема
Мне нужно подключиться к своей машине с Ubuntu (15.04) с компьютера под управлением Windows 10.
Я установил сервер NoMachine на Ubuntu, и вижу, что он использует протокол NX на порту 4000 согласно графическому интерфейсу сервера.
Когда я пытаюсь подключиться с компьютера под управлением Windows, я получаю ошибку 138 – истекло время ожидания подключения.
Тесты:
Я могу подключиться по ssh с помощью PuTTY с Windows 10 на машину с Ubuntu без проблем.
Но я не могу заставить работать NoMachine.
Буду признателен за любые советы.
ИЗМЕНЕНИЕ 1
Я выполнил следующую команду, чтобы проверить, открыт ли порт 4000:
netstat -ntlp | grep LISTEN
И среди прочего я получил следующее:
tcp 0 0 0.0.0.0:4000 0.0.0.0:* LISTEN -
ИЗМЕНЕНИЕ 2
Я удалил и переустановил следующим образом:
me@devbox:~$ sudo dpkg --purge nomachine && sudo rm -rf /usr/NX /etc/NX .nx
[sudo] пароль для me:
(Чтение базы данных ... 496028 файлов и каталогов в данный момент установлены.)
Удаление nomachine (5.1.26-1) ...
NX> 702 Начало удаления в: Вт Июл 19 09:32:57 2016.
NX> 702 Удаление: nxserver версия: 5.1.26.
NX> 702 Журнал удаления: /usr/NX/var/log/nxuninstall.log.
NX> 702 Сохранение конфигурационного файла в: /usr/NX/etc/server.cfg.backup.
NX> 702 Сохранение базы данных паролей в: /usr/NX/etc/passwords.db.backup.
NX> 702 Сохранение базы данных пользователей в: /usr/NX/etc/users.db.backup.
NX> 702 Сохранение базы данных администраторов в: /usr/NX/etc/administrators.db.backup.
NX> 702 Сохранение базы данных профилей в: /usr/NX/etc/profiles.db.backup.
NX> 702 Сохранение базы данных гостей в: /usr/NX/etc/guests.db.backup.
NX> 702 Сохранение базы данных хостов в: /usr/NX/etc/hosts.db.backup.
NX> 702 Сохранение базы данных узлов в: /usr/NX/etc/nodes.db.backup.
NX> 702 Сохранение базы данных групп в: /usr/NX/etc/groups.db.backup.
NX> 702 Удаление: nxnode версия: 5.1.26.
NX> 702 Журнал удаления: /usr/NX/var/log/nxuninstall.log.
NX> 702 Сохранение конфигурационного файла в: /usr/NX/etc/node.cfg.backup.
NX> 702 Удаление пользователя: nx из системы.
NX> 702 Удаление: nxplayer версия: 5.1.26.
NX> 702 Журнал удаления: /usr/NX/var/log/nxuninstall.log.
NX> 702 Удаление: nxclient версия: 5.1.26.
NX> 702 Журнал удаления: /usr/NX/var/log/nxuninstall.log.
NX> 702 Удаление завершено в: Вт Июл 19 09:33:52 2016.
Удаление конфигурационных файлов для nomachine (5.1.26-1) ...
me@devbox:~$ sudo dpkg -i /home/me/Downloads/nomachine_5.1.26_1_amd64.deb
Выбор пакета nomachine, который ранее не был выбран.
(Чтение базы данных ... 496015 файлов и каталогов в данный момент установлены.)
Подготовка к распаковке .../nomachine_5.1.26_1_amd64.deb ...
Распаковка nomachine (5.1.26-1) ...
Настройка nomachine (5.1.26-1) ...
NX> 700 Начало установки в: Вт Июл 19 09:42:52 2016.
NX> 700 Установка: nxclient версия: 5.1.26.
NX> 700 Использование профиля установки: Ubuntu.
NX> 700 Журнал установки: /usr/NX/var/log/nxinstall.log.
NX> 700 Компиляция модуля USB.
NX> 700 Установка: nxplayer версия: 5.1.26.
NX> 700 Использование профиля установки: Ubuntu.
NX> 700 Журнал установки: /usr/NX/var/log/nxinstall.log.
NX> 700 Для подключения удаленного принтера к локальному рабочему столу,
NX> 700 учетная запись пользователя должна быть членом системной группы CUPS: lpadmin.
NX> 700 Установка: nxnode версия: 5.1.26.
NX> 700 Использование профиля установки: Ubuntu.
NX> 700 Журнал установки: /usr/NX/var/log/nxinstall.log.
NX> 700 Создание конфигурации в: /usr/NX/etc/node.cfg.
NX> 700 Установка: nxserver версия: 5.1.26.
NX> 700 Использование профиля установки: Ubuntu.
NX> 700 Журнал установки: /usr/NX/var/log/nxinstall.log.
NX> 700 Создание конфигурации в: /usr/NX/etc/server.cfg.
NX> 700 Установка завершена в: Вт Июл 19 09:43:33 2016.
NX> 700 NoMachine был настроен для работы следующих служб:
NX> 700 NX служба на порту: 4000
me@devbox:~$
Затем я запустил графический интерфейс сервиса и убедился, что он работает.
Теперь на моем компьютере с Windows я снова пытаюсь подключиться, но это все еще не удается.
Когда вы говорите, что это может быть брандмауэр, следует ли мне проверить это на стороне Ubuntu или на стороне Windows?
Возможно, вы что-то изменили в конфигурации nxserver. Попробуйте полностью удалить NoMachine из системы sudo dpkg --purge nomachine && sudo rm -rf /usr/NX /etc/NX .nx
и переустановить с нуля.
Это может быть связано с проблемой брандмауэра. Но это странно, я регулярно использую NoMachine на Ubuntu и не сталкиваюсь с такими проблемами. Будет хорошей идеей заглянуть на их форумы.
Это, скорее всего, брандмауэр на сервере, проверьте, не блокируются ли порты.
Вы можете попробовать отключить его, попытаться подключиться, а затем после тестирования снова включить.
Для меня это выглядит как проблема с брандмауэром, попробуйте открыть порт 4000 в iptables с помощью
/sbin/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4000 -j ACCEPT
Также может быть полезно открыть UDP порты.
Ответ или решение
Чтобы установить NoMachine на Ubuntu и успешно подключиться к нему с Windows 10, выполните следующие шаги. Поскольку вы уже установили NoMachine и проверили, что сервер запущен на порту 4000, давайте рассмотрим возможные проблемы и их решения.
-
Проверка конфигурации и статус NoMachine:
- Убедитесь, что NoMachine действительно работает с помощью команды:
sudo systemctl status nxserver
Это даст вам информацию о текущем состоянии службы.
- Убедитесь, что NoMachine действительно работает с помощью команды:
-
Проверка сетевых подключений:
- Поскольку вы можете подключаться через SSH, проверьте, действительно ли порт 4000 открыт на вашем сервере с Ubuntu:
netstat -ntlp | grep LISTEN
Если вы видите строчку с
0.0.0.0:4000
, то порт открыт и слушает.
- Поскольку вы можете подключаться через SSH, проверьте, действительно ли порт 4000 открыт на вашем сервере с Ubuntu:
-
Настройки брандмауэра:
- Убедитесь, что брандмауэр (firewall) на стороне Ubuntu не блокирует этот порт. Вы можете временно отключить его для тестирования:
sudo ufw disable
После отключения брандмауэра попробуйте снова подключиться с вашей Windows-машины. Если соединение прошло, значит проблема была в настройках брандмауэра.
Если вам не удобно отключать брандмауэр, используйте команды для разрешения доступа к порту 4000:
sudo ufw allow 4000/tcp sudo ufw allow 4000/udp
Затем активируйте брандмауэр снова:
sudo ufw enable
- Убедитесь, что брандмауэр (firewall) на стороне Ubuntu не блокирует этот порт. Вы можете временно отключить его для тестирования:
-
Проверка конфигурации NoMachine:
- Возможно, что конфигурационные файлы NoMachine были изменены. Проверьте файл
/usr/NX/etc/server.cfg
и убедитесь, что в нем все настроено корректно, включая настройки для IP-адресов и портов.
- Возможно, что конфигурационные файлы NoMachine были изменены. Проверьте файл
-
Проверка IP-адреса:
- Убедитесь, что вы используете правильный IP-адрес вашей Ubuntu-машины при подключении с Windows. Вы можете узнать свой IP-адрес с помощью команды:
ip a
- Убедитесь, что вы используете правильный IP-адрес вашей Ubuntu-машины при подключении с Windows. Вы можете узнать свой IP-адрес с помощью команды:
-
Переустановка NoMachine:
- Если вы пробовали все вышеперечисленное и все еще получаете ошибку, возможно, стоит полностью удалить и переустановить NoMachine:
sudo dpkg --purge nomachine sudo rm -rf /usr/NX /etc/NX .nx sudo dpkg -i /path/to/nomachine.deb
- Если вы пробовали все вышеперечисленное и все еще получаете ошибку, возможно, стоит полностью удалить и переустановить NoMachine:
-
Клиентское приложение на Windows:
- Убедитесь, что вы используете актуальную версию клиента NoMachine на Windows. Если у вас есть проблемы с совместимостью, попробуйте скачать последнюю версию с официального сайта NoMachine.
-
Логи и отладка:
- Если ошибка 138 (время ожидания подключения) сохраняется, посмотрите логи NoMachine на Ubuntu:
cat /usr/NX/var/log/nxserver.log
Это может дать дополнительную информацию о том, почему соединение не удается.
- Если ошибка 138 (время ожидания подключения) сохраняется, посмотрите логи NoMachine на Ubuntu:
Если все шаги не помогли, вы можете посетить форумы NoMachine или обратиться в техническую поддержку для получения дополнительной помощи.