【译文】如果您组装一台计算机并安装一个Linux发行版供非专业用户或您的家人使用,那么您就是在为他们提供一个安全可靠的系统,以及功能齐全的计算平台在这条道路上迈出了第一步。但是,如果用户需要一些实际操作指导,您迟早需要执行一些维护工作;毕竟,有些维护任务无法通过电话向某人解释。本教程涵盖安装SSH以进行命令行访问和建立安全隧道、安装VNC以进行远程桌面访问以及安装Webmin以进行整体系统配置。请注意:启动并运行SSH隧道访问机制后,您可以通过LAN远程执行本教程的其余部分。事实上,如果您随后直接跳到端口转发部分,您可以通过Internet处理本教程的其余部分。首先,假设您的客户端计算机(您的计算机)和远程计算机(另一台计算机)都连接到您的LAN。然后,我们将在主机的家中安装路由器并安装动态DNS服务器,以便我们可以在Internet上找到该远程计算机。通过SSH使用VNC获得远程桌面访问。循序渐进指南第1步:设置网络本教程假设远程计算机和客户端计算机都连接到您的LAN。记下远程计算机的登录用户名和密码,以及它的IP地址(键入ifconfig找到它)。第2步:安装SSH要启用远程终端登录,请安装SSH服务器,为此键入sudoapt-getinstallopenssh-server(在RedHatLinux发行版上为oryum-yinstallopenssh-server)。以root用户身份,在文本编辑器中打开/etc/ssh/sshd_config以开始配置SSH。第3步:配置SSH服务器更改PubkeyAuthentication行,使其更改为PubkeyAuthenticationyes。确保PasswordAuthentication设置为no。这是因为我们想使用加密密钥而不是用户名和登录名远程登录到这台计算机。保存文件并键入sudoservicesshrestart以重新启动服务器。第四步:生成密钥我们需要生成一个公钥和一个私钥,这样我们就可以在不使用密码和用户名的情况下登录SSH。输入ssh-keygen-tdsa开始密钥生成。出现提示时,您可以按Enter接受默认值;但是,您必须在询问时输入密码。第5步:复制密钥将公钥复制到将用于远程维护的计算机。您可以通过在客户端计算机上键入ssh-copy-id[远程登录名]@[远程计算机的IP地址]来执行此操作。第6步:测试SSH通过键入ssh[远程用户名]@[远程IP地址],您可以使用SSH从客户端计算机登录到远程计算机。这应该会在另一台计算机上为您提供命令行,而不会提示您输入密码。尝试使用几个命令并键入Ctrl+D组合键以终止会话。第七步:文件复制(SSH)可以使用scp命令将文件复制到远程计算机,或者从远程计算机复制文件到本地。scp[远程用户]@[远程IP]:[本地文件][目标目录],可以复制一个或多个文件到远程计算机;否则,使用scp[本地文件][远程用户]@[远程IP]:[目标目录]。步骤8:Web代理(SSH)假设用户抱怨他们无法访问某个网站,或者无法访问整个Internet。我们可以使用SSH隧道机制来测试连接。输入ssh-D8888[用户名]@[IP地址]开始测试。这将创建一个本地代理服务器,它实际上是通过远程计算机访问Internet的。然后,您可以通过在本地主机上指定Socks5代理服务器,将Firefox配置为通过此代理服务器访问Internet。如果您可以通过SSH连接到另一台计算机并访问有问题的网站,那么问题一定出在另一台计算机上的软件上,而不是网络上。第9步:运行X应用程序(SSH)您可以使用隧道远程运行X应用程序。例如,您所要做的就是在GUI应用程序中编辑配置,而无需使用完整的桌面共享。输入ssh-X[username]@[remoteIP]打开连接。然后您可以从命令行正常启动应用程序。键入firefox以在远程计算机上启动Firefox浏览器并在本地桌面上与其通信。您可以将许多操作简化为一个命令,只需键入ssh-f-T-X[用户名]@[ip地址][应用程序名称]。步骤10:安装VNC服务器我们准备安装VNC以访问远程桌面。在这种情况下,我们将忽略VNC服务器自身的安全功能,而是完全通过SSH隧道。第一步是通过键入sudoapt-getinstallx11vnc(或在RedHatLinux发行版上,yuminstallvnc-server)在远程计算机上安装VNC服务器。第十一步:建立VNC隧道,打开服务器为VNC建立SSH隧道,输入ssh-L5900:localhost:5900[remoteuser]@[remoteIP]即可。除了建立隧道外,该命令还将启动隧道连接。在该终端中,键入x11vnc-safer-localhost-nopw-once-display:0。第12步:连接到VNC市场上有多种VNC客户端,但本示例假定您已安装Vinagre。使用此客户端软件连接到本地主机的VNC服务器。请记住,我们正在连接到本地主机,因为我们在上一步中建立了SSH隧道,以便所有数据包都发送到端口5900上的远程计算机。您现在应该具有远程桌面访问权限,并且可以访问远程计算机。如果此连接有任何问题,请仔细检查终端中的文本输出是否有错误。第十三步:安装Webmin到Webmin网站(www.webmin.com)的下载页面,下载适合您的Linux架构的软件包。以Debian为例,要安装.deb文件,只需键入sudodpkg-i[您下载的.deb文件的名称]。接下来,键入sudoapt-get-finstall以安装依赖项。以RedHatLinux为例,键入yuminstall[RPM名称]。第十四步:测试Webmin默认情况下,Webmin运行在SSL模式下,因此只需浏览到https://[远程计算机的IP地址]:10000即可访问它。接受它提供的浏览器证书。以Ubuntu为例,使用root用户名和密码,或者使用可以运行sudo的普通用户名和密码。将来,可以通过隧道连接到Webmin以获得最大的安全性,而无需在路由器上打开其他端口。我们使用与VNC相同的方法。键入ssh-L10000:localhost:10000[用户名]@[IP地址]以构建它,然后浏览到https://localhost:10000。第15步:设置远程网络现在是时候将我们为远程维护设置的计算机连接回总部了。计算机重新连接到网络后,请确保它可以像往常一样访问Internet。第16步:设置静态IP地址不同的Linux发行版对如何设置静态IP地址有不同的方法。在Ubuntu计算机上,单击控制面板中的网络图标,选择编辑...,然后选择IPv4设置选项卡。从方法:下拉列表中选择手动。现在,添加一个属于当前子网的IP地址。例如,如果输入ifconfig后当前IP地址为192.168.0.5,请选择更高的地址,例如192.168.0.100。您可能需要为您的Internet服务提供商(ISP)手动添加DNS服务器地址。在线搜索。接受更改并重置计算机。第17步:端口转发充分利用路由器的文档(或Portforward)建立端口转发机制。您需要将端口22转发到我们设置的静态IP地址。第18步:在Internet上查找远程IP地址您可以要求运行远程系统的人员访问whatismyip.com并通过电子邮件发送他们当前的IP地址,但动态DNS是一种更可靠和安全的解决方案。转到No-IP网站(www.noip.com)并设置一个免费帐户。现在安装ddclient包。第19步:安装ddclient在/etc/ddclient.conf中添加/更改以下行:protocol=dyndns2use=web,web=checkip.dyndns.com/,web-skip='IPAddress'server=dynupdate.no-ip.comlogin=usernamepassword='password'[hostname].no-ip.bizrun_daemon=true现在重启ddclient,输入sudoserviceddclientrestart。原文链接:http://www.linuxuser.co.uk/news/pc-remote-maintenance-tutorial
