Я пытаюсь выяснить, каков "легкий" способ настроить мой сервер Ubuntu 16.04 LTS для доступа через графический интерфейс (через SSH в качестве опции). Я хотел бы получить доступ к нему со своей рабочей станции Ubuntu 16.04. Я действительно плохо разбираюсь в том, как работают эти методы. Я читал о X11, и кажется, что можно просто установить Xorg server и включить переадресацию X11, и все.
Но в других статьях я читал, что достаточно просто установить общие пакеты для рабочего стола, и нет необходимости устанавливать все, что связано с графическим интерфейсом. Так что я действительно в замешательстве. Я также вижу, что существует несколько методов, таких как VNC, "обычная" переадресация X11, xRDP. Их можно комбинировать. Я читал разные ресурсы, и, как я понял, наиболее предпочтительный способ сделать это - использовать xRDP? Может быть, я ошибаюсь?
Эта статья (одна из тех, что я прочитал) http://c-nergy.be/blog/?p=8952 описывает установку xRDP и не рассматривает SSH. Вот переадресация ssh, как переадресовать X по SSH с компьютера Ubuntu?
Вопросы заключаются в следующем:
Является ли xRDP наиболее предпочтительным способом достижения цели?
Какие шаги я должен сделать, чтобы xRDP предоставил мне удаленный графический интерфейс (какие пакеты я должен установить на сервер и рабочий стол)? Я хотел бы иметь рабочий стол mate. Должен ли я установить его на рабочую станцию или сервер или на то и другое?*
Как включить xRDP через SSH-туннель?*
* - Если xRDP не является вариантом, последние два вопроса относятся к тому (VNC или что-то еще), который вы предлагаете, пожалуйста.
На сервере вам нужен ssh-сервер, например openssh-server и, по крайней мере, некоторые базовые инструменты X, например xinit и fluxbox (а также программы и библиотеки, которые им нужны). Вы также должны установить прикладные программы, которые вы хотите запустить, я предлагаю xterm и графические прикладные программы, которые вы хотите запустить.
На клиентском компьютере вам нужно ssh чтобы войти в систему и sftp для передачи файлов или какой-либо другой инструмент, который может выполнять те же задачи, например filezilla.
Затем вы можете удаленно войти в систему с помощью графики,
ssh -X user@ip-address# for examplessh -X sudodus@192.168.0.2
а затем вы можете запускать графические прикладные программы, например
Прямое использование ssh таким образом просто, но, возможно, не так элегантно, как RDP или VNC. Но вам также следует рассмотреть возможность изучения необходимых инструментов командной строки и управления своим сервером таким образом или через веб-интерфейс.
Это зависит от обстоятельств, но я бы сказал, что да. Я сам столкнулся с такой же проблемой и пришел к xrdp. У меня тоже есть сервер ubuntu, на котором установлен xrdp, и я бы сказал, что он работает очень хорошо.
2.
Пока я сам искал решение, я наткнулся на эту статью здесь, что я нашел очень полезным. Кроме того, как также отметил @mikewhatever, вам не нужна одна и та же среда рабочего стола на подключаемом компьютере. Единственная причина, по которой вам нужна другая среда рабочего стола на сервере, заключается в том, что XRDP не поддерживает среду по умолчанию.
3.
Это происходит автоматически*, вам просто нужно включить опцию ssh-туннеля в вашем клиенте удаленного рабочего стола.
* Мне не нужно было делать ничего особенного, я просто следовал инструкциям в связанной статье.
Я знаю, что прошло некоторое время с тех пор, как этот вопрос был активен, однако я бы рекомендовал x2go. Это клиентское и серверное программное обеспечение, поэтому сервер x2go должен быть установлен на сервере, а клиент x2go должен быть установлен на стороне клиента. Кажется, это работает довольно хорошо.
К сожалению, мне не очень повезло с туннелированием X-сервера. Да, я могу открыть различные окна X на клиенте, но что касается туннелирования рабочего стола, это кажется немного более глючным.
У меня есть ssh-доступ к серверу, и этого вполне достаточно. Но мне нужно отобразить веб-страницу на локальном компьютере из локальной службы, которая мне не нравится, и, похоже, я не могу поделиться ею в Интернете.
@pzkpfw Я понимаю, что существует ssh-туннелирование. Что я могу с этим сделать? Я могу переслать RDP через ssh. Не могли бы вы, пожалуйста, поделиться более подробной информацией по этому поводу? У меня есть службы http и https, запущенные на сервере, расположенном в области частной сети. Я могу получить к ним доступ через http://192.168.1.10:5555 или https://192.168.1.10 из той же сети. Как я предполагаю, можно создать ssh-туннель для них… Но я не понимаю, как именно это сделать и как использовать его на стороне клиента? Спасибо.
Нет особого смысла запускать графический интерфейс на сервере, просто для удаленного входа в систему с рабочего стола. На рабочем столе есть графические интерфейсы, что в этом плохого? Но, поскольку вы хотите Mate, вам нужно установить Mate на сервер, не имеет значения, какой графический интерфейс находится на рабочем столе.