Linux - SSH登陆远程主机

  前言前端

    最近由于工做的开发环境转为Linux,因此尽管我是前端攻城师,仍是要熟悉一下开发环境,因此这里一边学习一边留下笔记.shell

  正文vim

    要经过终端链接一个远程主机,正常的配置是直接在命令行中:ssh user@192.168.1.1;而后输入秘密就行了.若是想经过SSH的方式进行免密码登陆,就要进行必定的配置.服务器

    这里的环境是Mac <--> Linux之间的链接,首先经过命令行生成SSH密匙.通常在home目录下的.ssh文件夹(隐藏)生成密匙,首先进入文件夹.cd ~/.ssh;而后经过ssh keygen命令生成密匙,这里我生成的一个id_rsa和一个id_rsa.pub两个密匙.带有.pub后缀的是公匙,不带的时私匙.ssh

    生成完毕后均可以打开里面就是一个长长的字符串,下一步要将公匙的内容复制到远程服务器的固定文件中.这里是但愿将~/.ssh/id_rsa.pub(Mac机)的内容复制到/home/elemedev/.ssh/authorized_keys(Linux机).编辑器

    这样的一个操做你能够经过命令行的方式,也能够vim编辑器来复制内容.若是是复制能够用:sudo scp -r ~/.ssh/id_rsa.pub user@192.168.1.1:~/.ssh/authroized_keys;这一过程可能会报一些问题,好比复制的scp命令提示权限等问题,这里的权限要精确到目录,即你提取内容的目录和你接收内容的目录是否都拥有权限.这里最好不要切换root用户,直接使用sudo升权命令或者修改文件目录便可. 学习

    而后再链接的时候,就不须要输入密码了,由于已经经过了SSH的密匙验证.spa

  补充命令行

    这样链接仍是要写用户名和地址的,若是你能够配置下.ssh/config文件,就能够经过更加方便的方式进行链接.code

    在config文件中,按照以下格式配置:

    Host 别名

    HostName 主机名(IP)

    Port 端口号(默承认以忽略)

    User 登陆用户名

    IdentityFile 密匙文件路径(包含文件名,不须要后缀)

    而后直接经过命令: ssh 别名;这样就能够链接了.

相关文章
相关标签/搜索