scp ssh-key连接原理

 

如何关闭位置解析

vim手动打开ssh的配置文件修改81行和122行,位置解析需要双方都关闭

 
 

 

注意重点部分

 

ssh特别提醒

 

22端口信息

 

连接前提

远程连接双方都需要提前安装openssh-clientts软件包也就是scp命令

 

ssh远程连接

远程连接:ssh -p 22 root@192.168.200.100:22 
不写端口,不写用户,默认是22端口和roo用户,-p指定端口,root@是用户

 

scp远程复制

远程复制:scp /etc/hosts root@192.168.200.100:/etc/hosts 
远程复制不会提示yes或no,直接把/etc/hosts覆盖,:后是路径

 

可以把对方客户端的东西复制到自己当前在的目录

 

 

ssh-key交互生成密钥对

ssh-keygen:生成密钥对命令 ssh-copy-id:分发密钥对命令 
rsa指的是加密算法 密钥对密码:什么都不输入就代表不需要密码登陆 
id_rsa:私钥(放客户端) id-rsa.pub:公钥(放服务端)

放密钥对的目录权限不能过大,只能700 
如果客户端或服务端家目录下没有隐藏的.ssh目录,需要手动创建目录并修改权限

 

scp .ssh/id_rsa.pub 192.168.200.100:~/.ssh/ 
因为是从客户端复制到服务端所以是id_rsa.pub文件 
远程复制完后在服务端查看并把公钥重定向到authorized_keys免钥匙文件里 
这回客户端登陆服务端就不需要输入任何密码了 
因为密钥都是在root用户家目录下所以只能root登陆免密钥 
要想普通用户免登陆密码需要把密钥放在普通用户的家目录里 
没有目录则需要手动创建目录并附700权限,authorized_keys文件需要属主改成普通用户,权限是644


 
 

 

ssh-key非交互生成密钥对

ssh-keygen -t dsa -f ~/.ssh/id_dsa -P "" 
-t指定加密算法,-f生成的密钥放在哪里,-P是密码不写是空

ssh-copy-id -i ~/.ssh/id_dsa.pubyunjisuan@192.168.200.66 
-i告诉你要分发什么密钥文件后面是分发的用户和IP,输入指定的普通用户密码生成 
查看生成的密钥文件目录,目录700,属主普通用户,密钥文件authorized_keys


连接普通用户测试并免密码进入普通用户

 

sshpass免密生成分发密钥对

sshpass需要云yum安装软件包

ssh-keygen -t dsa -f ~/.ssh/id_dsa -P "" 
-t指定加密算法,-f生成的密钥放在哪里,-P是密码不写是空 
sshpass -p "123123" ssh-copy-id -i ~/.ssh/id_dsa.pub yunjisuan@192.168.200.66 
-p代表指定密码,-i告诉你要分发什么密钥文件后面是分发的用户和IP,免密码生成


连接普通用户测试并免密码进入普通用户

 

known_hosts文件完全分发

known_hosts文件是记录每次连接的信息,把他清空了,每次连接虽然是免密不过提示是否记录对方主机信息

sshpass -p "123123" ssh-copy-id -i ~/.ssh/id_rsa.pub "-o StrictHostKeyChecking=no yunjisuan@192.168.200.66" 
sshpass -p:密码,免交户输入密码 
ssh-copy-id -i:指定公钥文件路径 
-o StrictHostKeyChecking=no:不记录对方主机信息 
vim /etc/ssh/ssh_config:把35行注释开启,后面改成no也不需要记录对方主机信息,ask是询问,重启sshd服务

scp ssh-key连接原理的更多相关文章

  1. 本地ssh key连接多个git账号

    在开发过程中,可能需要在本地同时连接到多个gitlab账户,但是一个用户的ssh key只能连接到一个git账户,这就需要创建多个ssh key,分别连接到不同的账户.具体步骤如下: 1.生成ssh ...

  2. 创建SSH Key连接github或gitlab

    mac下用SoureceTree下载github或gitlab上的项目时,需要进行ssh key验证.每次重装系统啥的都要重新弄,我在csdn上看到一篇不错的文章.转载一下,以后自己找起来也方便. 地 ...

  3. SSH Key连接github提示Permission denied (publickey).错误

    root@debian64:/home/xiaoliuzi/.ssh/key_backup# ssh -T git@github.com The authenticity of host 'githu ...

  4. [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录

    一.什么是 SSH ? SSH全称(Secure SHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输.早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗. ...

  5. Linux实战教学笔记24:SSH连接原理及ssh-key

    目录 第二十四节 SSH连接原理及ssh-key讲解 第1章 SSH服务 1.1 ssh介绍 1.2 知识小结 第2章 ssh结构 2.1 SSH加密技术 第3章 ssh服务认证类型 3.1 基于口令 ...

  6. window下配置SSH连接GitHub、GitHub配置ssh key(转)

    转自:http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html 此经验分两部分: 第一部分介绍:在windows下通过msysGit ...

  7. SSH连接GitHub并配置ssh key

    SSH连接GitHub并配置ssh key 配置git的ssh提交,主要需要以下三步: 1.设置Git的user name和email 2.生成ssh 3.配置git 的ssh key 一.设置Git ...

  8. window下配置SSH连接GitHub、GitHub配置ssh key

    window下配置SSH连接GitHub.GitHub配置ssh key   此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...

  9. Navicat 用ssh通道连接时总是报错 (报错信息:SSH:expected key exchange group packet form serve

    转:https://blog.csdn.net/qq_27463323/article/details/76830731 之前下了一个Navicat 11.0 版本 用ssh通道连接时总是报错 (报错 ...

随机推荐

  1. Spark生态以及原理

    spark 生态及运行原理 Spark 特点 运行速度快 => Spark拥有DAG执行引擎,支持在内存中对数据进行迭代计算.官方提供的数据表明,如果数据由磁盘读取,速度是Hadoop MapR ...

  2. Streaming从Spark2X迁移到Spark1.5 summary

    配置文件的加载是一个难点,在local模式下非常容易,但是submit后一直报找不到文件,后来采用将properties文件放在加载类同一个package下,打包到同一个jar中解决. import ...

  3. Subverion仓库迁移知识点整理

    目录 dump远程仓库内容到本地 可能碰到的问题 将dumpFile导入到本地仓库 可能碰到的问题 如何获取控制台信息 最近在工作上提出了一个需求,需要将各个团队的Subversion仓库进行集中管理 ...

  4. ajax返回数据为undefined

    在使用ajax异步请求后台返回数据后,使用console.log(data.message)打印返回数据,显示为undefined.苦恼了很久,终于在网上找到了答案. 先给大家看下异步代码: /*清零 ...

  5. Object类型的转为String类型

    Map<String, Object> scaleMap = new HashMap(): scaleMap.put("name","张三"); S ...

  6. Linux(5.5版为主)的基本操作命令

    mount  查看挂载目录 cat  ~       查看文件下的内容 touch ~       创建一个文件 一次性性创建几个文件:  touch  /tmp/{1,2,3,4}.txt     ...

  7. 绑定到外部验证服务LDAP、配置 autofs

    题1:您的系统需要按照以下要求绑定到这个服务上:验证服务器的基本 DN 是: dc=xxxx,dc=xxxx,dc=xxxx. 帐户信息和验证信息都是由 LDAP 提供的.连 接 需 要 使 用 证 ...

  8. docker之Dockerfile实践

    上一篇介绍了Dockerfile中使用的指令,现在开始进行指令实践 先查看下本地的镜像,选一个作为base image: [root@docker ~]# docker images REPOSITO ...

  9. 【Python游戏编程01--初步认识pygame】

    一.pygame简介 Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发.允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,Pygame 是一个高 ...

  10. Base64 空格,加号问题

    缘由: 在一个项目中,app请求tcpdump日志与记录的日志内容不一致 请求%2B 识别成 + 请求 + 识别成 空格 这个在base64解密的时候会出现异常,base64需要的是加号,而不是空格 ...