我在这里是因为我发现使用this guide中提出的this other question设置SSH会遇到不同的问题。
首先,我有一台名为timmy@timmy-Lenovo-G50-80
的电脑(我想用它作为主人)。我的另一台计算机是一个虚拟机,总是使用linux mint,名为test@test-VirtualBox
,我想将它用作奴隶。
到目前为止我所做的是:
安装所需的数据包(两台PC):
sudo apt-get install openssh-server openssh-client
在文件/etc/ssh/sshd_config
内更改:(仅限主)
22
到2222
PubkeyAuthentication yes
(所以没有变化)Banner /etc/issue.net
停止
当我要执行此命令时,我感到困惑:
ssh-copy-id username@remotehost
我想,阅读所写的内容,我要执行以下内容:
ssh-copy-id timmy@timmy-Lenovo-G50-80
但:
ERROR: ssh: Could not resolve hostname timmy@timmy-Lenovo-G50-80: Name or service not known
最后,我要做什么才能连接这两台PC?
答案 0 :(得分:1)
您需要启用端口转发到您的VirtualBox程序。只需右键单击虚拟机,然后进入网络。然后单击advance将展开Network窗口,然后单击标有 Port forwarding。
的按钮。将出现一个包含多个列的表(名称,协议,主机IP,主机端口......)。只需为协议TCP添加一个新条目,主机端口= X和访客端口= 22(请参阅此处着名端口列表https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers#Well-known_ports)。下面的截图来自我的cloudera quickstart VM。请注意端口转发规则中列出的条目,该条目是关于在来宾操作系统中设置SSH端口。
重启虚拟机后,您只需通过
连接即可# ssh -p X localhost
-p参数告诉通过端口X连接。请注意,如果要使用scp,则必须使用大写-P选项而不是小写-p。
# scp -P X localfile localhost:remote-dir/