如何使用mac远程登录linux

2017-03-02  本文已影响1815人  kuohao

开放你的linux ssh服务

像Ubuntu,deepin的桌面版系统默认是不开启ssh 服务的,所以我们需要下载一个包来开启这个功能

  sudo apt-get install openssh-server

然后我们再使用以下命令

    ps -e | grep ssh

如果输出结果中有sshd就说明openssh-server已经成功安装

启动你的ssh-server服务

    sudo /etc/init.d/ssh start

如果终端输出

    [ ok ] Starting ssh (via systemctl): ssh.service

则说明ssh服务器启动成功

mac ssh 登录linux

    sudo ssh username@hostname  

如果不想每次都那么烦,输出那么多东西,可以在~/.ssh/config中修改 ssh登录配置

    Host            mylinux
    HostName        192.168.1.107
    Port            22

关闭linux的ssh-server服务

    sudo /etc/init.d/ssh stop

给ssh-server操作配置别名

上面的命令实在太长了,时间久了也容易忘记,我们可以在bash或者是zsh中配置alias,方便服务的开启和停止

我在mac上用的是zsh,所以是修改.zshrc,如果是用的bash(默认使用),则是.bashrc

    vim ~/.zshrc    ##使用vim打开.zhs配置
    alias openssh="sudo /etc/init.d/ssh start"   ##设置别名
    alias stopssh="sudo /etc/init.d/ssh stop" 
    alias relaod="sudo /etc/init.d/ssh relaod"
    
    source ~/.zshrc     #使得修改之后的配置立即生效

然后就可以用你的mac登录到deepin或者是Ubuntu中了

    sudo ssh mylinux
    #然后输入密码linux主机密码,即可登录

远程进阶 - 免密登录

如果就单纯的 ssh username@hostname 这样的登录方式,要每次都输入密码,那就太麻烦了,我们可以使用ssh 公钥验证免密登录,接下来一起来嗨吧。

  1. 使用ssh命令在mac上生成私钥和公钥
    ssh keygen -t rsa -C 'login my linux'
    ## -t 指定密钥类型,默认是ras,可省略
    ## -C 设置注释文字,如一些描述

一路回车,选择默认项,最后会生成一对密钥,分别是公钥和私钥,一般在~/.ssh目录下。

  1. 使用scp命令将公钥复制到你的linux远程主机上
    scp ~/.ssh/id_rsa.pub simple@192.168.1.103:~/.ssh
    # scp (本地文件绝对路径)[此处有一个空格](目标服务器名称@目标服务器ip):(目标服务器接收文本的存放路径)
    #假设我的linux主机名叫simple,主机ip是192.168.1.103
    #注意空格
    ##scp 命令是终端传输文件一个命令,以后会花时间来总结这个知识
  1. 将公钥重命名或者追加到authorized_keys文件
   cd ~/.ssh
   ##若存在authorized_keys,则将公钥追加到其中
   cat id_rsa.pub >> authorized_keys
   ##若不存在,直接重命名
   mv id_ras.pub authorized_keys
  1. 修改mac的ssh配置
    echo "IdentityFile    ~/.ssh/id_rsa" >> ~/.ssh/config
    ##我们在上面配置好了登录目标,但是要免密登录还需要再设置一个IdentityFile,设置为我们mac上的密钥路径即可
  1. 免密登录
    sudo ssh mylinux
上一篇下一篇

猜你喜欢

热点阅读