Ubuntu下使用SSH 命令用于登录远程桌面

  • 问题描述
  • 基础:ssh命令连接
  • 进阶:利用公钥省去口令输入
  • 参考资料
  • 问题描述

    做DL的经常需要在一台电脑(本地主机)上写代码,另一台电脑(服务器,计算力强)上进行训练,我们在两台电脑上都安装的是Ubuntu16.04,为了在local主机下也可以随时跑程序,调代码,同时省流量而且迅速(不考虑这些的话用teamviewer也行),所以在两台电脑主机上进行SSH配置。

    基础:ssh命令连接

    step1:SSH程序的安装

    确保在服务器上安装好了openssh-server程序,在本地主机上安装好了openssh-client程序。

    sudo apt install openssh-client #本地主机运行此条,实际上通常是默认安装client端程序的
    sudo apt install openssh-server #服务器运行此条命令安装

    step2:服务器启动ssh服务

    以下命令都只针对服务器端(server only)。
    一般服务器上安装ssh完成后,会自动启动ssh服务,并且默认随系统启动,如果没有,请手动启动:

    sudo /etc/init.d/ssh start #服务器启动ssh-server服务,

    其他命令:

    sudo /etc/init.d/ssh stop #server停止ssh服务
    sudo /etc/init.d/ssh restart #server重启ssh服务

    step3:查询服务器的ip地址

    在服务器终端运行以下命令:

    ifconfig #查询ip地址,在返回信息中找到自己的ip地址

    inet
    从我的返回信息中看到,我的ip地址(inet地址)是:10.170.11.147。

    step4:在本地主机端ssh远程登录服务器

    这一步需要知道服务器的用户名(我的服务器名字也是yucicheung)及IP地址。
    在本地主机上运行以下命令:
    用户端连接服务器用于登录远程桌面(以下user时远程主机的用户名)

    ssh yucicheung@10.170.11.147
    #或
    ssh -l yucicheung 10.170.11.147
    # 如果需要调用图形界面程序
    ssh -X yucicheung@10.170.11.147

    初次登录时会出现以下信息,请记住要输入的密码是服务器主机本身的登陆密码
    初次登录

    以上表示连接成功,且命令提示副前的用户名@主机名由本地主机变成服务器的信息,即表明现在该终端所有的命令都是在服务器中执行

    本地主机端登录相关的其他命令:

    • 如果服务器的SSH服务没有开启在22端口,那么SSH链接时则需要用-p指定端口(如202):
    ssh -p 202 yucicheung@10.170.11.147
    #或
    ssh -l yucicheung -p 202 10.170.11.147

    step5:退出远程登录

    用Ctrl+D或者

    exit

    进阶:利用公钥省去口令输入

    每次登录远程主机都需要输入密码是很不便捷的,如果要加速这一步骤,可以利用密钥对进行连接,主要思路是:生成一对公钥私钥,私钥在local主机上,公钥在远程服务器上,每次建立ssh连接自动检查密钥对是否匹配。

    step1 生成密钥对

    ssh-keygen -t rsa #-t表示选择类型,类型为rsa

    执行以后会在$HOME目录下生成一个.ssh文件夹,其中包含私钥文件id_rsa和公钥文件id_rsa.pub

    step2 复制公钥至服务器

    # 登录远程服务器
    ssh yucicheung@10.170.11.147 
    
    # 在服务器上创建.ssh文件夹,如果已经存在就跳过此步
    mkdir .ssh 
    
    # 为了保证.ssh文件夹的安全,应取消其他用户对文件夹的所有权限
    chmod 700 .ssh
    
    # 退出登录
    exit
    
    # 本地主机的公钥复制到远程服务器,作为已认证密钥
    scp /home/yucicheung/.ssh/id_rsa.pub yucicheung@10.170.44.206:/home/yucicheung/.ssh/authorized_keys

    在进行以上配置以后,再进行连接时,就可以免去口令(密码)的输入了。

    参考资料

    《Linux从入门到精通(第2版)》刘忆智 等

    转载自:[Ubuntu下使用SSH 命令用于登录远程桌面](https://blog.csdn.net/yucicheung/article/details/79427578#step1ssh%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%AE%89%E8%A3%85)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值