ssh-keyscan - 收集 ssh 公钥
总览 (SYNOPSIS)
ssh-keyscan -words [-v46 ] [-p port ] [-T timeout ] [-t type ] [-f file ] [host | addrlist namelist ] [... ]
描述 (DESCRIPTION)
工具用来收集一组主机的 ssh 主机公钥 (host key), 设计目的是帮助建立和验证 ssh_known_hosts 文件.提供了一个小巧的接口让 shell 和 perl 文件使用.
使用了非阻塞 socket I/O 函数, 尽可能多的并行访问多个主机, 因此它的效率很高. 它可以在数十秒内采集某域中 1,000 台主机的密钥, 即使某些主机离线或不使用 ssh. 扫描的时候无须登录目标主机, 也不涉及任何加密操作.
可用的选项有:
- -p port
- 远程主机的端口.
- -T timeout
- 设置连接超时. 接入主机后, 从最后一次读到数据经过 timeout 秒没有新的数据进来, 连接就被关闭. 默认超时是 5 秒.
- -t type
- 指定收集的密钥类型. 可选项有协议第一版的 ``rsa1'' 和协议第二版的 ``rsa'' 或 ``dsa'' 可以指定多个选项, 中间用逗号隔开. 默认项是 ``rsa1''
- -f filename
- 从该文件读取主机名或 addrlist namelist 地址/名字对, 一行一项. 如果用 - 代替文件名, 就从标准输入设备读取主机名或 addrlist namelist 地址/名字对.
- -v
- 冗长模式. 使 显示调试信息.
- -4
- 强制 只使用 IPv4 地址.
- -6
- 强制 只使用 IPv6 地址.
安全 (SECURITY)
如果通过建立了 ssh_known_hosts 文件, 但却没有验证里面的公钥, 用户很容易遭到中间人 攻击. 而另一方面, 如果安全模型允许这个风险, 创建 ssh_known_hosts 文件后,能够帮助检测已经发起的密钥篡改或中间人攻击.
示例 (EXAMPLES)
显示 hostname 的 rsa1 主机密钥:
$ ssh-keyscan hostname
在 ssh_hosts 文件中查找那些主机, 它们有新的密钥, 或者密钥和排序后的 ssh_known_hosts 文件不同:
$ ssh-keyscan -t rsa,dsa -f ssh_hosts | \
sort -u - ssh_known_hosts | diff ssh_known_hosts -
文件 (FILES)
输入格式:
1.2.3.4,1.2.4.4 name.my.domain,name,n.my.domain,n,1.2.3.4,1.2.4.4
rsa1 密钥的输出格式:
host-or-namelist bits exponent modulus
rsa 和 dsa 密钥的输出格式:
host-or-namelist keytype base64-encoded-key
这里的 keytype 既可以是 ``ssh-rsa'' 也可以是 ``ssh-dsa''
/etc/ssh/ssh_known_hosts
ssh-keyscan - 收集 ssh 公钥的更多相关文章
- [daily] ssh通过私钥导出公钥
在使用key方式登录ssh服务的时候,我们知道ssh key是使用公钥ssh-keygen工具生成的. 有时候,我们只保存了私钥,但是并没有保存公钥.这个时候,可以使用如下方法, 从私钥中将公钥导 ...
- git配置ssh秘钥(公钥以及私钥)linux
本文默认已经安装git,并有github或者gitlab账号 git在linux下安装参考:https://www.cnblogs.com/lz0925/p/10791147.html 在Linux中 ...
- Xshell5配置ssh免密码登录-公钥与私钥登录linux服务器(xshell如何登陆上阿里云服务器)
原文地址:https://blog.csdn.net/longgeaisisi/article/details/78680180 ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口 ...
- git使用ssh协议,生成公钥和私钥,并指定私钥
http://superuser.com/questions/232373/how-to-tell-git-which-private-key-to-use In ~/.ssh/config, add ...
- 企业面试问题收集-ssh框架
SSH框架阶段 SSH的优缺点,使用场景? Hibernate优缺点 Hibernate优点:(1) 对象/关系数据库映射(ORM)它使用时只需要操纵对象,使开发更对象化,抛弃了数据库中心的思想,完全 ...
- [SSH服务]——一个SSH无密码登陆实验
实验拓扑图 实验描述 机房内有两台服务器: (1)B服务器10.0.10.158,充当Web服务器,有普通用户user_00 (2)C服务器10.0.10.191,充当Mysql服务器,有普通用户us ...
- Hadoop SSH+IP、SSH+别名 免密登录配置
1.为什么要进行 SSH 无密码验证配置? Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来启动和停止各个Da ...
- 第1章 ssh命令和SSH服务详解
基础服务类系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文对SSH连接验证机制进行了非常详细的分析,还详细介绍了ssh客户端工具的各种 ...
- Linux中ssh介绍与ssh+key密钥登陆部署
环境内核信息: [root@zabbix- ~]# uname -a Linux zabbix- -.el6.x86_64 # SMP Tue Mar :: UTC x86_64 x86_64 x86 ...
- Linux之间配置SSH互信(SSH免密码登录)
为简化SSH过程,采用证书方式,免去SSH登入时需要输入账号密码的过程,具体操作如下: 一.在SSH服务器所在机器上 1.以root用户登录,更改ssh配置文件 /etc/ssh/sshd_confi ...
随机推荐
- css-目标伪类选择器:target的应用
目标伪类选择器:target是众多CSS3众多 动态 伪类选择器中的一个,用来匹配锚点指向的元素,突出显示活动的HTML锚. <style> p:target{ border: 2px s ...
- shell内置命令getopts
- jQuery效果-隐藏与显示 小方块的移除
html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <ti ...
- Python和 pytest的异常处理
Python中有自带的异常处理 try: except: pytest中 1.可以用try except来处理,来保证出错后,把后面的语句执行完成: 2.当有多条用例需要跑完时,不需要考虑其中一条用例 ...
- postgres服务相关语法
远程登陆 psql -h 主机 -U 用户 -p端口 -W -d 数据库 #-W表示密码,例如:psql -h 192.168.137.3 -U postgres -p 5432 -W -d post ...
- 【leetcode】987. Vertical Order Traversal of a Binary Tree
题目如下: Given a binary tree, return the vertical order traversal of its nodes values. For each node at ...
- Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS
一.搭建单区域DNS服务器 目标: 本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站.测试阶段主要提供以下正向记录: svr7.tedu.cn ---> ...
- 远程桌面发生身份验证错误,要求的函数不受支持【WIN10家庭】或【专业版】--解决办法
10号更新后,远程出现如下报错 一.[家庭中文版]解决办法[亲自试验] 开启WIN家庭中文版的本地组策略 1.打开tet复制以下代码:@echo off pushd "%~dp0" ...
- leetcode中的一些二分搜索树
235(最近公共祖先) /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left ...
- Mac Office2016 安装及破解
一.安装包下载地址 http://officecdn.microsoft.com/sg/C1297A47-86C4-4C1F-97FA-950631F94777/OfficeMac/Microsoft ...