给Linux(Ubuntu 16.04/18.04)配置远程访问环境

年后给实验室装了一台小服务器,安装了Ubuntu系统,这篇博客记录一下给Ubuntu配置远程访问的设置过程。

虽然服务器是一台GPU服务器,但是出于简便考虑没有在服务器上安装虚拟化环境,有需要安装LXD或者Docker的朋友可以参考这几篇博客:实验室GPU服务器共享方案搭建多人共用的GPU服务器为实验室建立公用GPU服务器搭建实验室公共GPU服务器

SSH设置

远程连接最方便并且最稳定的就是SSH了,安装好SSH之后就基本可以远程操作服务器。SSH的安装非常简单,Ubuntu下通过apt安装即可:

1
sudo apt install openssh-server

安装完重启后,SSH服务就会自动运行了。客户端方面,Ubuntu默认提供SSH支持,而Windows在1809之后也内置了OpenSSH,在系统附加功能中打开开关后,通过cmd即可调用。如果系统版本较老则可以使用XShell。

SFTP设置 - 利用rclone

上面安装命令会顺带安装上SFTP客户端。SFTP可以看作加密的FTP协议,可以用来远程访问服务器的文件。SFTP现在已经受到广泛的支持,例如Android上的Solid Explorer就内置了SFTP访问功能。

这里介绍一个可以把远程文件挂载到本地的软件——rclone。安装rclone可以从官网下载二进制文件直接拷贝安装,或者下载打包好的deb文件,也可以使用snap进行安装。安装完成之后使用rclone config添加SFTP服务器,然后就可以rclone mount进行挂载。此外还可以使用RcloneBrowser等GUI进行更加直接的操作。

Tip: 如果你是在Ubuntu上安装RcloneBrowser的话,可以通过修改/usr/share/applications/rclone-browser.desktop文件来修改图标。(原来的图标实在太丑了)

远程桌面设置

远程桌面的设置就比较麻烦了,这里的远程桌面服务选择xrdp,关于xrdp,vnc等等服务的比较网上都有。由于最开始安装的是Gnome Ubuntu16.04,因此遇到了很多坑,最后配完远程桌面时显卡驱动崩了,因此最后换到了Ubuntu18.04。因此如果需要远程桌面的朋友可以考虑升级到Ubuntu18.04。

为了使用上Gnome桌面,最初参考的是一篇在Ubuntu16.04上配置xrdp访问Unity桌面的博客,最后安装完确实是可以完成访问的,并且如果碰到远程登陆之后提示需要新建color profile的话可以通过这个博客解决。但最后由于安装完xserver-xorg后显卡驱动崩了,换用了18.04。

在18.04下安装xrdp就简单多了,xrdp版本较新,也不需要安装tigervnc。具体教程还是参考了这篇博客,大概步骤就是

  1. 安装xrdpxserver-xorg。需要先安装的xserver-xorg的原因参见这篇博客

    1
    2
    apt install xserver-xorg-core xsrever-xorg-input-all
    apt install xrdp

    如果你安装了Nvidia驱动的话NV还提供定制版的nvidia-xserver-xorg,也可以通过apt直接安装。安装NV驱动和安装xrdp最好连续进行,避免安装完其他东西之后回头来发现要重装(亲身教训= =)

  2. 添加echo [session] > ~/.xsession/etc/xrdp/startwm.sh文件里。这里的[session]内容需要从/usr/share/xsessions里的桌面环境文件中拷贝出来,例如如果想远程桌面环境运行Gnome3,那么就把[session]替换成gnome-session --session=gnome(这行命令就是从/usr/share/xsessions/gnome.desktop文件中提取出来的)
  3. 修复一些小问题。例如上文提到的color profile问题可以通过这篇很详细的博客提到的方法进行解决

静态IP

如果想要稳定地连接服务器,还需要给服务器配置静态IP。由于我是在大学校园内,静态IP需要申请。我们的网管要求关闭SSH的远程root登陆,以及关闭不必要的服务,此外还推荐服务器用户使用rsakey登陆SSH。这些要求有利于保护服务器安全,因此也推荐在有需要的情况下完成这些操作。


以上就是给Ubuntu服务器配置远程桌面的主要步骤,步骤不多但是比较花时间。文中提到的几个博客的网站有提供不少的Linux设置教程,可以供读者参考。

其他参考阅读:

Shoot me some coffee money XD
0%