如何使用默认配置连接到远程 (VNC) Ubuntu Desktop 16.04,但没有互联网访问(即没有其他方式安装其他软件)。在我的远程机器上,没有任何安装限制。
第一个问题是关于 windows->ubuntu,没有解决方案。我想知道是否有办法使用相同的操作系统?我知道这些问题看起来有点奇怪,但有一个严重的应用背景,所以请耐心等待,只有你真的确定时才考虑“没办法”。谢谢
答案1
Download the latest OpenSSH for Windows binaries (package OpenSSH-Win32.zip)
Extract the package to a convenient location (we will use C:\openssh in this guide)
As the Administrator, install SSHD and ssh-agent services:
powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1
Generate server keys by running the following commands from the C:\openssh:
.\ssh-keygen.exe -A
Open a port for the SSH server in Windows Firewall:
Either run the following PowerShell command (Windows 8 and 2012 or newer only), as the Administrator:
New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH
or go to Control Panel > System and Security > Windows Firewall > Advanced Settings > Inbound Rules and add a new rule for port 22.
To allow a public key authentication, as an Administrator, from C:\openssh, run:
powershell.exe -ExecutionPolicy Bypass -File install-sshlsa.ps1
and restart the machine
In C:\openssh\sshd_config locate a Subsystem sftp directive and change the path to sftp-server to its Windows location:
Subsystem sftp C:\openssh\sftp-server.exe
Start the service and/or configure automatic start:
Go to Control Panel > System and Security > Administrative Tools and open Services. Locate SSHD service.
If you want the server to start automatically when your machine is started: Go to Action > Properties. In the Properties dialog, change Startup type to Automatic and confirm.
Start the SSHD service by clicking the Start the service.
这些说明部分基于官方部署说明。设置 SSH 公钥认证
按照通用指南在 *nix OpenSSH 服务器中设置 SSH 公钥认证,但有以下区别:
Create the .ssh folder (for the authorized_keys file) in your Windows account profile folder (typically in C:\Users\username\.ssh).
Do not change permissions for the .ssh and the authorized_keys.
连接到服务器
第一次连接之前,通过从 C:\openssh 运行 ssh-keygen.exe -l -f ssh_host_rsa_key -E md5 来找出服务器的 RSA 密钥的指纹:
C:\openssh>ssh-keygen.exe -l -f ssh_host_rsa_key -E md5 2048 MD5:94:93:fe:cc:c5:7d:d8:2a:33:21:0e:f3:91:11:8a:d9 martin@example (RSA)
启动 WinSCP。将出现登录对话框。在对话框中:
Make sure New site node is selected.
On New site node, make sure the SFTP protocol is selected.
Enter your machine/server IP address (or a hostname) into the Host name box.
Enter your Windows account name to the User name box. It might have to be entered in the format user@domain, if running on a domain.
For a public key authentication:
Press the Advanced button to open Advanced site settings dialog and go to SSH > Authentication page.
In Private key file box select your private key file.
Submit Advanced site settings dialog with the OK button.
For a password authentication:
Enter your Windows account password to the Password box.
If you Windows account does not have a password, you cannot authenticate with the password authentication (i.e. with an empty password), you need to use the public key authentication.
Save your site settings using the Save button.
Login using Login button.
Verify the host key by comparing fingerprint with the one collected before (see above).
答案2
问题的答案是:
不可能。
正如第一个答案所暗示的,当不使用标准安装 CD 或愿意安装原始安装介质以外的其他软件时,还有其他选择。使用谷歌可以找到几个如何制作自定义 Ubuntu 安装 CD 的教程。然后,只需添加 openssh-server 包并按照上面“Ubuntu 用户”答案的说明进行操作。
唯一接近问题的替代方案(使用原始媒体)是:
不要安装 Ubuntu 桌面,安装 Ubuntu 服务器。
虽然两者都使用相同的内核,并且基本上是相同的发行版,但两个官方 *.iso 映像之间的区别在于 CD 上所包含的软件包的选择。该服务器确实有最好用的远程控制软件包:openssh-server。
该服务器可以通过任何桌面完成 Ubuntu 完整桌面版本。
最简单的方法是使用“tasksel”,这是一个命令行但菜单驱动的安装工具。它提供不同的 Ubuntu 版本供安装。
显然,该解决方法的缺点是,您需要知道如何使用 Ubuntu 中的命令行以及其工作原理,例如包管理 apt 及其配置文件 /etc/apt/sources.list。