scp ssh-key连接原理
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连接原理的更多相关文章
- 本地ssh key连接多个git账号
在开发过程中,可能需要在本地同时连接到多个gitlab账户,但是一个用户的ssh key只能连接到一个git账户,这就需要创建多个ssh key,分别连接到不同的账户.具体步骤如下: 1.生成ssh ...
- 创建SSH Key连接github或gitlab
mac下用SoureceTree下载github或gitlab上的项目时,需要进行ssh key验证.每次重装系统啥的都要重新弄,我在csdn上看到一篇不错的文章.转载一下,以后自己找起来也方便. 地 ...
- SSH Key连接github提示Permission denied (publickey).错误
root@debian64:/home/xiaoliuzi/.ssh/key_backup# ssh -T git@github.com The authenticity of host 'githu ...
- [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录
一.什么是 SSH ? SSH全称(Secure SHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输.早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗. ...
- Linux实战教学笔记24:SSH连接原理及ssh-key
目录 第二十四节 SSH连接原理及ssh-key讲解 第1章 SSH服务 1.1 ssh介绍 1.2 知识小结 第2章 ssh结构 2.1 SSH加密技术 第3章 ssh服务认证类型 3.1 基于口令 ...
- window下配置SSH连接GitHub、GitHub配置ssh key(转)
转自:http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html 此经验分两部分: 第一部分介绍:在windows下通过msysGit ...
- SSH连接GitHub并配置ssh key
SSH连接GitHub并配置ssh key 配置git的ssh提交,主要需要以下三步: 1.设置Git的user name和email 2.生成ssh 3.配置git 的ssh key 一.设置Git ...
- window下配置SSH连接GitHub、GitHub配置ssh key
window下配置SSH连接GitHub.GitHub配置ssh key 此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...
- Navicat 用ssh通道连接时总是报错 (报错信息:SSH:expected key exchange group packet form serve
转:https://blog.csdn.net/qq_27463323/article/details/76830731 之前下了一个Navicat 11.0 版本 用ssh通道连接时总是报错 (报错 ...
随机推荐
- vscode/webstorm快捷键
ctrl+/ 单行 [alt+shift+A] 多行注释 (默认的 我已经修改了) 复制当前行:shift + alt +up/down(上下箭头)可以修改成ctrl+d(改成webstorm一 ...
- C语言进阶之路(一)----C语言的内存四区模型
内存四区模型:操作系统给C/C++编写的程序分配内存,通常将分配的内存划分为以下四个区域:1.栈区:存放局部变量,用完由操作系统自动释放2.堆区:动态分配给程序的内存区域,由程序员手动释放3.数据区: ...
- python实现比对两个json串的方法
记录瞬间 前段时间为了解决一些实际问题,引出了要对json字符串进行比对的需求. 觉得有意义,作以简单记录. # 比对数据 def compare_data(set_key, src_data, ds ...
- CentOS7+Apache+MySQL+PHP环境
Apache 1.安装Apache:yum -y install httpd 2.开启apache服务:systemctl start httpd.service 3.设置apache服务开机启动:s ...
- 如何导出不带.svn的文件夹项目
实际工作中有需要导出项目,却含有大量的.svn文件夹,有以下几种方式导出: 一.TortoiseSVN导出 项目文件夹,右键->TortoiseSVN->导出(Export),勾选“导出无 ...
- 第六篇——Struts2的后缀
Struts2后缀 1.Struts2默认后缀是action: 2.Struts2使用默认后缀时 *.aciton 和 * 都是同一个请求: 3.Struts2自定义后缀后只能使用自定义的后缀访问: ...
- MSP430入门准备
为什么选择MSP430? 低功耗是最主要原因,那有人说了,低功耗的片子多了去了,还有比这更低功耗的呢,只能说, 一个是精力有限, 二是430低功耗做的不差,能满足大部分项目的需求, 三是网上430的资 ...
- C#中抽象类和接口的区别与使用
一.抽象类: 抽象类是特殊的类,只是不能被实例化:除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法,这是普通类所不能的.抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们.另外 ...
- [C++ Primer Plus] 第4章、复合类型(一)程序清单——指针new和delete
程序清单4.1 #include<iostream> using namespace std; void main(){ ]; yams[]=; yams[]=; yams[]=; ]={ ...
- [c/c++] programming之路(15)、多维数组和二分查找法,小外挂
一.多维数组 #include<stdio.h> #include<stdlib.h> void main(){ ][]; int i,j; ; i < ; i++) { ...