要在Ubuntu上通过SSH(Secure Shell)访问另一台主机,您需要确保几件事情:
目标主机上的SSH服务器:确保您要访问的主机上安装并运行了SSH服务器(例如OpenSSH服务器)。
网络连接:确保您的Ubuntu系统与目标主机在同一网络上,或者可以通过网络路由访问对方。
目标主机的IP地址或主机名:您需要知道目标主机的IP地址或可解析的主机名。
用户凭证:您需要知道用于SSH登录的用户名,如果需要密码验证,还需知道密码;如果使用密钥认证,则需要有私钥文件。
大多数Ubuntu系统默认安装了SSH客户端。如果没有,可以使用以下命令安装:
sudo apt-get update
sudo apt-get install openssh-client
打开终端。
使用以下命令连接到目标主机:
ssh username@hostname_or_ip
其中username
是您在目标主机上的用户名,hostname_or_ip
是目标主机的主机名或IP地址。
例如:
ssh john@192.168.1.5
如果是第一次连接到该主机,会出现关于主机身份验证的提示。输入yes
继续。
输入您的密码进行身份验证(如果使用的是密钥认证,则可能需要输入密钥的密码)。
如果您设置了基于SSH密钥的认证,使用以下命令连接:
ssh -i /path/to/private_key username@hostname_or_ip
其中/path/to/private_key
是您的私钥文件路径。
-p
选项,例如:ssh -p 2222 username@hostname_or_ip
。chmod 600 /path/to/private_key
设置权限。在Linux系统中,包括Ubuntu在内,要开启SSH服务,您通常需要安装OpenSSH服务器软件,并确保它被正确配置和启动。以下是开启SSH服务的基本步骤:
如果还没有安装OpenSSH服务器,可以通过以下命令安装:
sudo apt-get update
sudo apt-get install openssh-server
这会安装OpenSSH服务器,并通常会自动启动SSH服务。
安装完成后,可以通过以下命令检查SSH服务的状态:
sudo systemctl status ssh
如果SSH服务正在运行,您应该看到输出显示它是“active (running)”状态。
如果SSH服务未运行,可以使用以下命令启动它:
sudo systemctl start ssh
SSH服务的配置文件位于/etc/ssh/sshd_config
。您可以编辑此文件来更改诸如端口号、允许的身份验证方法等设置。
修改配置文件后,需要重新启动SSH服务以应用更改:
sudo systemctl restart ssh
如果您的系统使用UFW防火墙,确保允许SSH流量:
sudo ufw allow ssh
或者,如果您使用的是特定的端口(例如2222),则需要指定该端口:
sudo ufw allow 2222/tcp
确保没有其他网络设置或设备(如路由器的安全设置)阻止对SSH端口(默认为22)的访问。
完成这些步骤后,您应该能够从远程系统通过SSH连接到您的服务器。例如,使用ssh username@your_server_ip
从另一台计算机连接到您的服务器。