Krypton 一款 SSH 密钥管理/认证工具

07/18/18 更新:Krypton 更新支持 U2F,Blog post

知道这个软件是因为之前 Livid 在 V2EX 发了个帖子,就有点种草的感觉。唯一有点可惜的是不支持指纹…. 后来我也使用了很久直到切换 Windows….

Krypton 官网:https://krypt.co

官网介绍

Krypton Core combines the secure key storage of a USB smart card with a familiar mobile phone interface. The Krypton app performs SSH signatures without revealing the private key to a paired computer. A Krypton SSH key can be used without modifying any servers, allowing users to secure their GitHub, AWS, and Google Cloud SSH authentication without any changes to their infrastructure. Communication with Krypton occurs over encrypted and signed push notifications and Bluetooth, ensuring high availability and low latency. Krypton also verifies and displays exactly which server is being logged in to, unlike USB solutions that do not have a user interface.

其他 Q&A:https://krypt.co/faq/

关于 Windows

目前 Krypton 仅支持 Linux/Mac 不支持 Windows(包括 Linux 子环境)
~~不过不要灰心 已经有 Windows Port 的 PR 了 https://github.com/kryptco/kr/pull/138

Windows 目前可在 WSL 上使用(创意者更新及之后的版本

手机端配置

首次配置

首先打开 APP 新建密钥 我这里选的是 ed25519
密钥生成界面 正在生成密钥 输入邮箱

主界面

主界面 扫码配对 已配对机器

桌面端配置

1
curl https://krypt.co/kr | sh

脚本将会自动安装好 kr 客户端
P.S. 因为我身边暂时没带 Linux/Mac 设备 所以用服务器当做桌面端来演示

kr 的命令参数:
命令参数

1
kr pair

出现一个二维码 手机用 kr 客户端扫码即可配对
配对完成后会提示 Paired successfully with identity 并在第二行显示 SSH 公钥
此时手机上会提示让你使用 ssh me.krypt.co 来测试
测试通知 测试成功

成功之后你就可以根据命令参数将你的 SSH 公钥添加到各种服务以及服务器上

绑定 GitHub 等

1
kr github

一般情况下自动复制公钥到剪贴板并自动打开 GitHub 的 SSH keys 页面,添加复制进去即可。如果没有自动复制到剪贴板,那就手动复制一下吧 2333333 其他站例如 Bitbucket 等同理
绑定GitHub

绑定服务器

1
kr add user@server

将会自动给目标服务器添加 SSH 公钥
添加公钥

测试一下 SSH 到服务器,此时手机会弹出授权通知
授权通知

同意则登录成功
登录成功

如果拒绝授权会让你输入密码连接服务器
登录失败

代码签名

1
kr codesign

如果你还没有配置 Git 会让你设置 user.name 以及 user.email
将获得的 PGP 公钥提交到 GitHub 等网站
使用 kr me pgp 可以查看你的公钥
查看公钥

测试一下
测试成功 测试通知

U2F

安装 Krypton Authenticator 扩展:https://krypt.co/krext
安装扩展 支持列表
注册授权 完成注册

其他功能自己去探索吧…

所以还有什么理由不来试试这款优秀的 APP 呢