Linux九阴真经之九阴白骨爪残卷2(SSH)

SSH

ssh:安全的远程登录

两种方式的用户登录认证

基于passwork

基于key

客户端

常见的客户端工具有:Windows版的putty、securecrt、xshell;linux中有ssh、sftp、scp、slogin等

配置文件: /etc/ssh/ssh_config

ssh命令

用法:ssh  [email protected]   CMD

选项:

-p   port :  远程服务器监听端口

-b          :  指定连接的源IP

-v          :  调试模式

-C         :  压缩方式

-X         : 支持x11转发

-Y         :支持信任x11转发

-t          :强制伪tty分配    例:  ssh  -t  remoteserver1  ssh  remoteserver2

ssh 客户端

当客户端第一次连接服务器时,服务器会发送自己的公钥给客户端,并保存在客户端的~./ssh/know_hosts中。下次连接时不会再询问。

SSH服务登录验证

基于密码登录验证

由上图我们总结出如下步骤

(1)客户单向服务器发起SSH请求,服务器会把自己的公钥发送给客户端

(2)用户根据服务器发送的公钥,对密码进行加密

(3)加密后的信息回传给服务器,服务器用自己的私钥解密,如果密码正确,则用户登录成功

基于秘钥的登录方式验证

(1)首先在客户端生成一对密钥(ssh-keygen)

(2)并将客户端的公钥拷贝(ssh-copy-id) 到服务器

(3)当客户端再一次发送连接请求,包括IP,用户名

(4)服务器得到客户端的请求后,会到authorized——keys中查找,如果有响应的IP和用户,   就会随机生成一个字符串,利如:acdf

(5)服务器将使用客户端拷贝过来的公钥对字符串进行加密,然后发送给客户端

(6)得到服务器发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端

(7)服务器接受到客户端发来的字符串后,跟之前的字符串进行对比,如果一致就允许免密码登录

基于key认证

基于密钥的认证:

(1)在客户端生成密钥对

ssh-keygen  -t  rsa(指定加密方式)  -p‘‘(指定空密码)  -f  "~/.ssh/id_rsa"

(2)把公钥文件传输至远程服务器对应用户的家目录

ssh-copy-id  -i  ~/.ssh/id_rsa.pub  [email protected]

(3)测试

(4)在SecureCRT或Xshell实现基于key验证
在SecureCRT工具—>创建公钥—>生成Identity.pub文件
转化为openssh兼容格式(适合SecureCRT,Xshell不需要转化格式),并复制到需登录主机上相应文件authorized_keys中,注意权限必须为600,在需登录的ssh主机上执行:
ssh-keygen -i -f Identity.pub >> .ssh/authorized_keys

(5)重设私钥口令:
ssh-keygen –p     (为私钥加密)

(6)验证代理(authentication agent)保密解密后的密钥
这样口令就只需要输入一次
在GNOME中,代理被自动提供给root用户
否则运行ssh-agent bash

(7)钥匙通过命令添加给代理
ssh-add

例:配置基于密钥的免密登录

1、在客户端A生成密钥对,按3次回车键

[[email protected] ~/.ssh]#ssh-keygen

2、把公钥传给客户端B对应的家目录,并重命名为 authorized_keys

3、在客户端Bde ~/.ssh 的目录下检查是否有authorized_keys 文件

4、在客户端A测试连接客户端B,发现无需输入密码,直接登录

原文地址:https://www.cnblogs.com/huxiaojun/p/9064122.html

时间: 2024-10-02 03:10:46

Linux九阴真经之九阴白骨爪残卷2(SSH)的相关文章

Linux九阴真经之九阴白骨爪残卷5(ansible用法二之Playbook和YAML语法)

playbook是由一个或多个"play"组成的列表 play的主要功能在于将事先归并为一组的主机装扮成事先通过ansible中的task定义好的角色.从根本上来讲,所谓task无非是调用ansible的module.将多个play组织在一个playbook中,即可让他们联通起来按事先编排的机制运行. Playbook 采用yaml 语言编写每一个ansible 的 playbook 都是一个yaml格式的文件,因此要学习编写剧本(playbook), 我们先来了解 yaml 语法的基

Linux九阴真经之九阴白骨爪残卷1(加密和安全)

CA和证书 1.KPI :公共秘钥体系 签证机构:CA 注册机构:RA 证书吊销列表:CRL 证书存取库 509:定义了证书的结构以及认证协议标准 版本号序列号签名算法                   主体公钥         颁发者                      CRL分发点有效期限                    扩展信息主体名称                   发行者签名 证书类型: 证书授权机构的证书 服务器 用户证书 获取证书两种方法: ?使用证书授权机构 生

Linux九阴真经之九阴白骨爪残卷8(存储函数、存储过程、触发器)

存储函数 说明: 参数可以有多个,也可以没有参数,必须有且只有一个返回值. 1.系统函数 参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/func-op-summary-ref.html 2.自定义函数(user-defined function:UDF) 自定义函数保存在mysql.proc表中 查看UDF列表 SHOW FUNCTIOIN STATUS; 查看UDF定义 SHOW CREATE FUNCTION function_name 删除U

Linux九阴真经之九阴白骨爪残卷11(并发访问控制和事务Transactions)

一.并发访问控制 实现的并发访问的控制技术是基于锁: 锁分为表级锁和行级锁,MyISAM存储引擎不支持行级锁:InnoDB支持表级锁和行级锁: 锁的分类有读锁和写锁,读锁也被称为共享锁,加读锁的时候其他的人可以读:写锁也称为独占锁或排它锁,一个写锁会阻塞其他读操作和写操作: 锁还分为隐式锁和显式锁,隐式锁由存储引擎自行管理,显式锁是用户手动添加锁: 锁策略:在锁粒度及数据安全性寻求的平衡机制. 显式锁的使用方法:LOCK TABLES tbl_name READ|WRITE MariaDB [s

Linux九阴真经之九阴白骨爪残卷12(备份还原)

一.备份策略 1.备份的类型 类型1: 热备份:读写不受影响(MyISAM不支持热备,InnoDB支持热备) 温备份:仅可以执行读操作 冷备份:离线备份,读写操作均中止 类型2: 物理备份:复制数据文件进行备份,占用较多的空间,速度快 逻辑备份:将数据导出至文本文件中,占用空间少,速度慢,可能丢失精度 类型3: 完全备份:备份全部数据 增量备份:仅备份上次完全备份或增量备份以后变化的数据,备份较快,还原复杂 差异备份:仅备份上次完全备份以来变化的数据,备份较慢,还原简单 2.备份需要考虑的因素

Linux九阴真经之九阴白骨爪残卷13()

备份还原案例 前提:log_bin=ON 一.早上上班后误删数据库,如何恢复数据库 1.假设早上已经完成备份 (开启二进制),然后在students表里新增了一条数据 [[email protected] ~]#mysqldump -A -F --single-transaction --master-data=2 > /backup/full.sqlMariaDB [hellodb]> insert students values (26,'laobai',30,'M',7,2); 2.然后

Linux九阴真经之九阴白骨爪残卷15

一.MySQL复制相关概念 1.主从复制:主节点将数据同步到多个从节点 2.级联复制:主节点将数据同步到一个从节点,其他的从节点在向从节点复制数据 3.同步复制:将数据从主节点全部同步到从节点时才返回给用户的复制策略叫同步复制 4.异步复制:只要数据写入到主节点就立即返回给用户同步完成 5.读写分离:在前端加一个调度器,负责将改变数据的语句和查询数据的语句分开调度,把写操作调度到主节点,读操作调度到从节点 主节点: dump Thread:为每个Slave的I/O Thread启动一个dump线

java应用程序远程登录linux并执行其命令(ssh jar包)

http://www.ganymed.ethz.ch/ssh2/在这个网址下载一个调用ssh和scp命令的jar包. 然后,就可以写程序了.将上面的jar包导入MyEclipse,下面是一个类的实例代码. package hh; import java.io.BufferedReader;     import java.io.IOException;     import java.io.InputStream;    import java.io.InputStreamReader; imp

Linux服务器一键删除文件夹SSH命令

Linux服务器管理不像Windows服务器管理那么方便,当然Linux也可以直观可视化操作,本人习惯使用SSH命令管理操作,常常会碰到网站产生 大量垃圾文件的苦恼,直接登录FTP删除的话,曾经试过删了一整天都删不完,FTP还常常断线.下面分享Linux服务器一键删除文件夹SSH命令的操作 方法: 下载Putty软件,双击打开,输入你的主机IP地址,连接类型选择SSH打开. 选择你要删除的文件夹,操作演示以网站http://www.war126.com为例,通过FTP连接到网站,可以看到网站的所