Ubuntu上配置【服务器端】和【客户端】的SSH


前言

有些小伙伴们有着多个不同配置的电脑,有时需要在一台电脑上访问了另一台电脑的文件或者使用服务器来训练模型,这时候就需要有一个工具来实现不同电脑之间的互联。那么SSH是一个非常好的工具,它可以配合vscode使用,方便快捷。接下来我将介绍Ubuntu上配置服务器端和主机端的SSH的具体流程。


一、在系统中安装SSH功能包

在此分为【服务器端】和【用户端】(即sever和client),两台电脑需要分别安装不同的功能包。
【服务器端】:sudo apt install openssh-server
【用户端】: sudo apt install openssh-client

其实这里可以在两台电脑上把两个包都安装上,这样一台电脑既可以当服务器也可以当用户端了。建议两个包同时安装~

比如在【客户端】的配置:

# Instal & start ssh in your own PC
sudo apt-get install openssh-client
/etc/init.d/ssh start
# Make sure ssh is running. You can see ssh-agent
ps -e | grep ssh

【服务器端】类似上述操作。

二、在VScode上安装【 Remote - SSH 】

在vscode界面左侧extension里搜索Remote - SSH,然后点击install即可安装。 在这里插入图片描述

三、 查看要连接电脑的ip地址

  1. 使用ifconfig命令查看【服务器端】当前的ip地址。
  2. 在【客户端】的vscode中打开【Remote - SSH】
    在这里插入图片描述
  3. 点击SSH这一行右侧的‘+’号,然后在弹出的如下图所示的框里以ssh name@ip的格式输入,name是【服务器端】的用户名(就是服务器终端一打开显示的绿字里的名字),ip就是上一步查到的【服务器端】的ip地址。输入完成后点击回车。
    在这里插入图片描述
  4. 回车之后弹出选择需要更新的ssh配置文件,选/home/张三/.ssh/config 这个文件即可。
  5. 右下角会弹出Host add!的提示。点击右边的Connect,然后会弹出需要输入密码,密码就是你【服务器端】的用户密码,输入后回车即可建立连接。

总结

本文讲述了符合在【服务器端】和【客户端】搭建ssh连接。

附上一些小tips

  1. 为了方便期间,可以在ssh的配置文件中把Host一行后面的ip地址更改为你所想用的名字,更改后点击ssh一行右侧的更新按钮,即可看到你更改的名字显示在了上面,这样就不用每次都有按照ip地址选【服务器端】了。

  2. ssh还可以用scp来传输文件。常用命令如下:

    # From own PC to sever
    scp -r file name@ip:${target_path}
    # From sever to own PC
    scp -r name@ip:${file_path} ${target_path}
    

    注意上述命令都是在【客户端】运行。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我明白你的问题了。首先,我们需要在两台虚拟机上安装SSH服务。在Ubuntu系统上,可以通过以下命令安装: ``` sudo apt-get update sudo apt-get install openssh-server ``` 安装完成后,我们需要修改SSH服务器的主机名为ssh_server_AAA。在Ubuntu系统上,可以通过以下命令修改: ``` sudo hostnamectl set-hostname ssh_server_AAA ``` 接下来,我们需要在SSH客户上访问SSH服务器的root账户。假设SSH服务器的IP地址为192.168.YY.22,SSH客户的操作系统为Linux或者MacOS,可以通过以下命令访问: ``` ssh root@192.168.YY.22 ``` 如果一切正常,你应该能够成功登录SSH服务器的root账户。 接下来,我们需要在SSH服务器配置禁止root访问。在Ubuntu系统上,可以通过以下步骤实现: 1. 编辑SSH服务器配置文件/etc/ssh/sshd_config,找到以下行: ``` #PermitRootLogin prohibit-password ``` 2. 将其修改为以下内容: ``` PermitRootLogin no ``` 3. 保存修改后的配置文件,并重新启动SSH服务: ``` sudo systemctl restart sshd ``` 接下来,我们需要在SSH客户上分别访问SSH服务器的root账户和普通用户账户,查看是否能正常访问。假设普通用户的用户名为test,可以通过以下命令分别访问: ``` ssh root@192.168.YY.22 ssh test@192.168.YY.22 ``` 如果一切正常,你应该能够成功登录SSH服务器的普通用户账户,但无法登录root账户。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值