防止密码泄露 linux命令行实用助记工具之cheat
为了鼓励广泛采用双因子认证的方式,Google公司发布了Google Authenticator,一款开源的,可基于开放规则(如 HMAP/基于时间)生成一次性密码的软件。这是一款跨平台软件,可运行在Linux, Android, iOS。Google公司同时也支持插件式鉴别模块PAM(pluggable authentication module),使其能和其他也适用PAM进行验证的工具(如OpenSSH)协同工作。
在本教程中,我们将叙述集成OpenSSH和Google提供的认证器实现如何为SSH服务设置双因子认证。我将使用一款Android设备来生成一次性密码,本教程中需要两样武器:(1)一台运行着OpenSSH服务的Linux终端,(2)一台安卓设备。
在Linux系统中安装Google Authenticator
第一步需要在运行着OpenSSH服务的Linux主机上安装Google认证器。按照如下步骤安装Google认证器及其PAM模块。
用安装包安装 Google Authenticator
如果你不想自己构建 Google Authenticator,在几个 Linux 发行版上有已经编译好的安装包。安装包里面包含 Google Authenticator 二进制程序和 PAM 模块。
在 Ubuntu 上安装 Google Authenticator:
- $ sudo apt-get install libpam-google-authenticator
在 Fedora 上安装 Google Authenticator:
- $ sudo yum install google-authenticator
在 CentOS 上安装 Google Authenticator ,需要首先启用 EPEL 软件库,然后运行如下命令:
- $ sudo yum install google-authenticator
如果不想使用已经编译好的安装包,或者你的 Linux 发行版不在此列,可以自行编译:
在 Linux 上 Google Authenticator
首先,安装构建 Google Authenticator 所需的软件包。
在 Debian、 Ubuntu 或 Linux Mint 上:
- $ sudo apt-get install wget make gcc libpam0g-dev
在 CentOS、 Fedora 或 RHEL上:
- $ sudo yum install wget make gcc pam-devel
然后下载 Google Authenticator 的源代码,并按如下命令编译。
- $ wget https://google-authenticator.googlecode.com/files/libpam-google-authenticator-1.0-source.tar.bz2
- $ tar xvfvj libpam-google-authenticator-1.0-source.tar.bz2
- $ cd libpam-google-authenticator-1.0
- $ make
如果构建成功,你会在目录中看到 pamgoogleauthenticator.so 和 google-authenticator 两个文件。
最后,将 Google Authenticator 安装到合适位置
- $ sudo make install
排错
当编译 Google Authenticator 时出现如下错误:
- fatal error:security/pam_appl.h:No such file ordirectory
要修复这个问题,请安装如下依赖包。
在 Debian、 Ubuntu 或 Linux Mint 上:
- $ sudo apt-get install libpam0g-dev
在 CentOS、 Fedora 或 RHEL 上:
- $ sudo yum install pam-devel
当Google认证器安装好后,你需要在Linux主机上创建验证密钥,并且在安卓设备上注册,注意这项配置操作是一次性的。我们将详细叙述如何完成这些操作:
生成验证密钥
在Linux主机上运行Google认证器
- $ google-authenticator
你将看到一个QR码,它使用如下图形表示我们数字形态的密钥。一会我们要用到它在安卓设备上完成配置。
Google认证器会问一些问题,如果你不确定,就回答"Yes"。这个应急备用验证码(图中 emergency scratch codes)可以在你由于丢失了绑定的安卓设备的情况下(所以不能得到生成的一次性密码)恢复访问。最好将应急备用验证码妥善保存。
在安卓设备上运行Google认证器
我们需要在安卓设备上安装Google Authenticator app才能完成双因子认证,到Google Play下载并安装一个。在安卓设备上运行Google认证器,找到下图所示中的配置菜单。
你可以选择"Scan a barcode" 或者"Enter provided key"选项。"Scan a barcode"允许你扫描QR码来完成密钥的输入,在此可能需要先安装扫描软件Barcode Scanner app。如果选择"Enter provided key"选项,你可以使用键盘输入验证密钥,如下图所示:
无论采用上述两种选项的任何方式,一旦成功,你将看到注册成功提示和一次性密码,如下图所示:
为SSH服务器用Google认证器
最终我们需要修改两个文件来完成集成Google认证器和OpenSSH服务这临门一脚。
首先,修改PAM配置文件,命令和需添加的内容如下:
- $ sudo vi /etc/pam.d/sshd
- auth required pam_google_authenticator.so
然后打开SSH配置文件,找到参数ChallengeResponseAuthentication,并启用它。
- $ sudo vi /etc/ssh/sshd_config
ChallengeResponseAuthentication yes
最后,重启SSH服务。
在 Ubuntu、 Debian 和 Linux Mint 上:
- $ sudo service ssh restart
在Fedora (或 CentOS/RHEL 7)上:
- $ sudo systemctl restart sshd
在CentOS 6.x或 RHEL 6.x上:
- $ sudo service sshd restart
验证双因子认证
在绑定的安卓设备上运行Google认证器,获得一个一次性验证码,该验证码30秒内有效,一旦过期,将重新生成一个新的验证码。
现在和往常一样,使用SSH登录终端
- $ ssh user@ssh_server
当提示你输入验证码的时候,输入我们刚获得的验证码。验证成功后,再输入SSH的登录密码。
双因子认证通过在用户密码前新增一层来有效的保护我们脆弱的用户密码。你可以使用Google认证器来保护我们其他的密码,如Google账户, WordPress.com, Dropbox.com, Outlook.com等等。是否使用这项技术,取决于我们自己,但采用双因子认证已经是行业的大趋势了。谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。
为了鼓励广泛采用双因子认证的方式,Google公司发布了Google Authenticator,一款开源的,可基于开放规则(如 HMAP/基于时间)生成一次性密码的软件。这是一款跨平台软件,可运行在Linux, Android, iOS。Google公司同时也支持插件式鉴别模块PAM(pluggable authentication module),使其能和其他也适用PAM进行验证的工具(如OpenSSH)协同工作。
在本教程中,我们将叙述集成OpenSSH和Google提供的认证器实现如何为SSH服务设置双因子认证。我将使用一款Android设备来生成一次性密码,本教程中需要两样武器:(1)一台运行着OpenSSH服务的Linux终端,(2)一台安卓设备。
在Linux系统中安装Google Authenticator
第一步需要在运行着OpenSSH服务的Linux主机上安装Google认证器。按照如下步骤安装Google认证器及其PAM模块。
用安装包安装 Google Authenticator
如果你不想自己构建 Google Authenticator,在几个 Linux 发行版上有已经编译好的安装包。安装包里面包含 Google Authenticator 二进制程序和 PAM 模块。
在 Ubuntu 上安装 Google Authenticator:
- $ sudo apt-get install libpam-google-authenticator
在 Fedora 上安装 Google Authenticator:
- $ sudo yum install google-authenticator
在 CentOS 上安装 Google Authenticator ,需要首先启用 EPEL 软件库,然后运行如下命令:
- $ sudo yum install google-authenticator
如果不想使用已经编译好的安装包,或者你的 Linux 发行版不在此列,可以自行编译:
在 Linux 上 Google Authenticator
首先,安装构建 Google Authenticator 所需的软件包。
在 Debian、 Ubuntu 或 Linux Mint 上:
- $ sudo apt-get install wget make gcc libpam0g-dev
在 CentOS、 Fedora 或 RHEL上:
- $ sudo yum install wget make gcc pam-devel
然后下载 Google Authenticator 的源代码,并按如下命令编译。
- $ wget https://google-authenticator.googlecode.com/files/libpam-google-authenticator-1.0-source.tar.bz2
- $ tar xvfvj libpam-google-authenticator-1.0-source.tar.bz2
- $ cd libpam-google-authenticator-1.0
- $ make
如果构建成功,你会在目录中看到 pamgoogleauthenticator.so 和 google-authenticator 两个文件。
最后,将 Google Authenticator 安装到合适位置
- $ sudo make install
排错
当编译 Google Authenticator 时出现如下错误:
- fatal error:security/pam_appl.h:No such file ordirectory
要修复这个问题,请安装如下依赖包。
在 Debian、 Ubuntu 或 Linux Mint 上:
- $ sudo apt-get install libpam0g-dev
在 CentOS、 Fedora 或 RHEL 上:
- $ sudo yum install pam-devel
当Google认证器安装好后,你需要在Linux主机上创建验证密钥,并且在安卓设备上注册,注意这项配置操作是一次性的。我们将详细叙述如何完成这些操作:
生成验证密钥
在Linux主机上运行Google认证器
- $ google-authenticator
你将看到一个QR码,它使用如下图形表示我们数字形态的密钥。一会我们要用到它在安卓设备上完成配置。
Google认证器会问一些问题,如果你不确定,就回答"Yes"。这个应急备用验证码(图中 emergency scratch codes)可以在你由于丢失了绑定的安卓设备的情况下(所以不能得到生成的一次性密码)恢复访问。最好将应急备用验证码妥善保存。
在安卓设备上运行Google认证器
我们需要在安卓设备上安装Google Authenticator app才能完成双因子认证,到Google Play下载并安装一个。在安卓设备上运行Google认证器,找到下图所示中的配置菜单。
你可以选择"Scan a barcode" 或者"Enter provided key"选项。"Scan a barcode"允许你扫描QR码来完成密钥的输入,在此可能需要先安装扫描软件Barcode Scanner app。如果选择"Enter provided key"选项,你可以使用键盘输入验证密钥,如下图所示:
无论采用上述两种选项的任何方式,一旦成功,你将看到注册成功提示和一次性密码,如下图所示:
为SSH服务器用Google认证器
最终我们需要修改两个文件来完成集成Google认证器和OpenSSH服务这临门一脚。
首先,修改PAM配置文件,命令和需添加的内容如下:
- $ sudo vi /etc/pam.d/sshd
- auth required pam_google_authenticator.so
然后打开SSH配置文件,找到参数ChallengeResponseAuthentication,并启用它。
- $ sudo vi /etc/ssh/sshd_config
ChallengeResponseAuthentication yes
最后,重启SSH服务。
在 Ubuntu、 Debian 和 Linux Mint 上:
- $ sudo service ssh restart
在Fedora (或 CentOS/RHEL 7)上:
- $ sudo systemctl restart sshd
在CentOS 6.x或 RHEL 6.x上:
- $ sudo service sshd restart
验证双因子认证
在绑定的安卓设备上运行Google认证器,获得一个一次性验证码,该验证码30秒内有效,一旦过期,将重新生成一个新的验证码。
现在和往常一样,使用SSH登录终端
- $ ssh user@ssh_server
当提示你输入验证码的时候,输入我们刚获得的验证码。验证成功后,再输入SSH的登录密码。
双因子认证通过在用户密码前新增一层来有效的保护我们脆弱的用户密码。你可以使用Google认证器来保护我们其他的密码,如Google账户, WordPress.com, Dropbox.com, Outlook.com等等。是否使用这项技术,取决于我们自己,但采用双因子认证已经是行业的大趋势了。谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。
推荐系统
电脑公司Ghost Win8.1 x32 精选纯净版2022年7月(免激活) ISO镜像高速下载
语言:中文版系统大小:2.98GB系统类型:Win8电脑公司Ghost Win8.1x32位纯净版V2022年7月版本集成了自2022流行的各种硬件驱动,首次进入系统即全部硬件已安装完毕。电脑公司Ghost Win8.1x32位纯净版具有更安全、更稳定、更人性化等特点。集成最常用的装机软件,精心挑选的系统维护工具,加上绿茶独有
微软Win11原版22H2下载_Win11GHOST 免 激活密钥 22H2正式版64位免费下载
语言:中文版系统大小:5.13GB系统类型:Win11微软Win11原版22H2下载_Win11GHOST 免 激活密钥 22H2正式版64位免费下载系统在家用办公上跑分表现都是非常优秀,完美的兼容各种硬件和软件,运行环境安全可靠稳定。Win11 64位 Office办公版(免费)优化 1、保留 Edge浏览器。 2、隐藏“操作中心”托盘图标。 3、保留常用组件(微软商店,计算器,图片查看器等)。 5、关闭天气资讯。
Win11 21H2 官方正式版下载_Win11 21H2最新系统免激活下载
语言:中文版系统大小:4.75GB系统类型:Win11Ghost Win11 21H2是微软在系统方面技术积累雄厚深耕多年,Ghost Win11 21H2系统在家用办公上跑分表现都是非常优秀,完美的兼容各种硬件和软件,运行环境安全可靠稳定。Ghost Win11 21H2是微软最新发布的KB5019961补丁升级而来的最新版的21H2系统,以Windows 11 21H2 22000 1219 专业版为基础进行优化,保持原汁原味,系统流畅稳定,保留常用组件
windows11中文版镜像 微软win11正式版简体中文GHOST ISO镜像64位系统下载
语言:中文版系统大小:5.31GB系统类型:Win11windows11中文版镜像 微软win11正式版简体中文GHOST ISO镜像64位系统下载,微软win11发布快大半年了,其中做了很多次补丁和修复一些BUG,比之前的版本有一些功能上的调整,目前已经升级到最新版本的镜像系统,并且优化了自动激活,永久使用。windows11中文版镜像国内镜像下载地址微软windows11正式版镜像 介绍:1、对函数算法进行了一定程度的简化和优化
微软windows11正式版GHOST ISO镜像 win11下载 国内最新版渠道下载
语言:中文版系统大小:5.31GB系统类型:Win11微软windows11正式版GHOST ISO镜像 win11下载 国内最新版渠道下载,微软2022年正式推出了win11系统,很多人迫不及待的要体验,本站提供了最新版的微软Windows11正式版系统下载,微软windows11正式版镜像 是一款功能超级强大的装机系统,是微软方面全新推出的装机系统,这款系统可以通过pe直接的完成安装,对此系统感兴趣,想要使用的用户们就快来下载
微软windows11系统下载 微软原版 Ghost win11 X64 正式版ISO镜像文件
语言:中文版系统大小:0MB系统类型:Win11微软Ghost win11 正式版镜像文件是一款由微软方面推出的优秀全新装机系统,这款系统的新功能非常多,用户们能够在这里体验到最富有人性化的设计等,且全新的柔软界面,看起来非常的舒服~微软Ghost win11 正式版镜像文件介绍:1、与各种硬件设备兼容。 更好地完成用户安装并有效地使用。2、稳定使用蓝屏,系统不再兼容,更能享受无缝的系统服务。3、为
雨林木风Windows11专业版 Ghost Win11官方正式版 (22H2) 系统下载
语言:中文版系统大小:4.75GB系统类型:雨林木风Windows11专业版 Ghost Win11官方正式版 (22H2) 系统下载在系统方面技术积累雄厚深耕多年,打造了国内重装系统行业的雨林木风品牌,其系统口碑得到许多人认可,积累了广大的用户群体,雨林木风是一款稳定流畅的系统,一直以来都以用户为中心,是由雨林木风团队推出的Windows11国内镜像版,基于国内用户的习惯,做了系统性能的优化,采用了新的系统
雨林木风win7旗舰版系统下载 win7 32位旗舰版 GHOST 免激活镜像ISO
语言:中文版系统大小:5.91GB系统类型:Win7雨林木风win7旗舰版系统下载 win7 32位旗舰版 GHOST 免激活镜像ISO在系统方面技术积累雄厚深耕多年,加固了系统安全策略,雨林木风win7旗舰版系统在家用办公上跑分表现都是非常优秀,完美的兼容各种硬件和软件,运行环境安全可靠稳定。win7 32位旗舰装机版 v2019 05能够帮助用户们进行系统的一键安装、快速装机等,系统中的内容全面,能够为广大用户
相关文章
- Windows 10 Build 10158有哪些变化?Win10 10158更新内容大全
- 微软官方公布 Win10详细的免费升级路径计划
- Win10 RS2正式版本号曝光 Win10预览版14946暗藏玄机
- win8系统怎么更改用户账户名称
- 荣耀MagicBook实现里程碑式创新!行业首创OS Turbo--快科技--科技改变未来
- 如何使用U盘启动盘(UltraISO)安装原版Win10系统
- 文件无法直接发送到蓝牙点击右键没有发送到蓝牙设备
- win10的消息中心怎么来管理消息?
- Win10正式版激活密钥是多少?如何利用密钥激活Win10正式版?
- win10中内置的Linux Bash启动闪退问题如何解决?
- SOLARIS系统下SSH安装和自动运行
- Win7系统取消局域网共享用户名密码的方法
- centos下关闭selinux不重启的方法
- Win10系统新增微软打印到PDF设置应用
- Win8系统IE浏览器如何实现全屏浏览网页
- 找回windows7系统开始菜单附件中的小工具(画图、计算器等等)
- windows8系统开机自动启动程序的使用方法图解
- iPhone 8及以上请注意 苹果已发布零日漏洞更新
热门系统
- 1华硕笔记本&台式机专用系统 GhostWin7 32位正式旗舰版2018年8月(32位)ISO镜像下载
- 2深度技术 Windows 10 x86 企业版 电脑城装机版2018年10月(32位) ISO镜像免费下载
- 3电脑公司 装机专用系统Windows10 x86喜迎国庆 企业版2020年10月(32位) ISO镜像快速下载
- 4雨林木风 Ghost Win7 SP1 装机版 2020年4月(32位) 提供下载
- 5深度技术 Windows 10 x86 企业版 六一节 电脑城装机版 版本1903 2022年6月(32位) ISO镜像免费下载
- 6深度技术 Windows 10 x64 企业版 电脑城装机版2021年1月(64位) 高速下载
- 7新萝卜家园电脑城专用系统 Windows10 x64 企业版2019年10月(64位) ISO镜像免费下载
- 8新萝卜家园 GhostWin7 SP1 最新电脑城极速装机版2018年8月(32位)ISO镜像下载
- 9电脑公司Ghost Win8.1 x32 精选纯净版2022年5月(免激活) ISO镜像高速下载
- 10新萝卜家园Ghost Win8.1 X32 最新纯净版2018年05(自动激活) ISO镜像免费下载
热门文章
常用系统
- 1技术员联盟Win10镜像文件下载_技术员联盟Win10 64位专业激活版下载V2021.09
- 2雨林木风系统正版下载_雨林木风Win10 20H2 64位完美装机版下载V2021.04
- 3新雨林木风 Windows10 x86 企业装机版2022年7月(32位) ISO镜像高速下载
- 4番茄花园 GHOST WIN7 SP1 X86 装机旗舰版 V2023.09 (32位) 下载
- 5电脑公司 装机专用系统Windows10 x86企业版2019年12月(32位) ISO镜像快速下载
- 6番茄花园GhostWin7 SP1电脑城极速装机版2021年12月(32位) 最新高速下载
- 7深度技术 Ghost Win7 Sp1 电脑城万能装机版2018年5月(32位) ISO镜像免费下载
- 8笔记本&台式机专用系统GhostWin7 64位旗舰版2020年4月(64位) 高速下载
- 9番茄花园Ghost Win7 x64 SP1稳定装机版2020年5月(64位) 高速下载
- 10技术员联盟 GHOST WIN7 SP1 X64 万能装机版 V2016.03 (64位) 下载