linux系统,如何使用ssh远程访问linux系统

时间:2024-12-15 17:47


SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络中安全地访问远程计算机。通过SSH,用户可以在本地计算机上运行一个SSH客户端,并连接到远程Linux服务器上的SSH服务器,从而实现对远程系统的访问和管理。以下是使用SSH远程访问Linux系统的详细步骤:
 
一、准备工作
 
1.确认远程Linux系统上已安装并运行SSH服务器
    大多数Linux发行版(如Ubuntu、CentOS等)默认已安装OpenSSH服务器。
    可以通过命令`sudo systemctl status sshd`(对于使用systemd的系统)来检查SSH服务的运行状态。
 
2.获取远程Linux系统的IP地址
    可以通过命令`ifconfig`(部分系统已弃用,建议使用`ipaddr`)或`hostname I`来查看远程系统的IP地址。
 
3.确保本地计算机上已安装SSH客户端
    在Windows上,可以使用PuTTY、Windows Subsystem for Linux(WSL)或OpenSSH客户端。
    在macOS和大多数Linux发行版上,OpenSSH客户端默认已安装。
 
二、使用SSH客户端进行连接
 
1. 在Linux或macOS上使用命令行连接
 
打开终端,输入以下命令:
 
 
ssh username@remote_ip_address
 
 
 `username`:远程Linux系统上的用户名。
 `remote_ip_address`:远程Linux系统的IP地址。
 
如果SSH服务器配置为使用非默认端口(如2222),可以使用`p`选项指定端口:
 
 
ssh p 2222 username@remote_ip_address
 
 
2. 在Windows上使用PuTTY连接
 
1. 下载并安装PuTTY。
2. 打开PuTTY,在“Session”类别中输入远程Linux系统的IP地址和端口(默认为22)。
3. 在“Connection” > “SSH” > “Auth”中,点击“Browse”选择包含私钥的文件(如果使用密钥认证)。
4. 在“Session”类别中,为会话命名并保存(可选),以便将来快速连接。
5. 点击“Open”开始连接。
6. 如果使用密码认证,会提示输入用户名和密码;如果使用密钥认证,可能需要确认密钥指纹。
 
三、认证方式
 
1.密码认证
    输入用户名后,系统会提示输入密码。
    输入密码并按下回车即可登录。
 
2.密钥认证
    使用SSH密钥对进行认证,可以提高安全性。
    在本地计算机上生成密钥对(如使用`sshkeygen`命令)。
    将公钥(`.pub`文件)复制到远程Linux系统的`~/.ssh/authorized_keys`文件中。
    连接时,SSH客户端会自动使用私钥进行认证。
 
四、常见问题解决
 
1.连接被拒绝
    确认SSH服务正在远程系统上运行。
    检查防火墙设置,确保允许SSH连接(默认端口为22)。
    确认IP地址和端口号正确无误。
 
2.权限问题
   检查`~/.ssh`目录和`authorized_keys`文件的权限。
   `~/.ssh`目录的权限应为700,`authorized_keys`文件的权限应为600。
 
3.密码错误
    确认输入的用户名和密码正确。
    如果忘记密码,可能需要通过其他方式(如物理访问服务器或使用root账户)重置密码。