Linux下基于PAM机制的USB Key的制作
摘自:https://server.zzidc.com/fwqpz/157.html
USB Key这个概念最早是由加密锁厂家提出来的,加密锁是用来防止软件盗版的硬件产品,加密锁的概念是使安装在计算机的应用程序脱离加密锁硬件无法运行来达到保护软件不被盗版的目的。
目前的硬件设置,USB Key产品一方面价格昂贵(2000-12800),另外主要用于Windows操作系统。景安服务器租用小编给大家介绍如何在Linux环境下通过软硬结合的方法自己制作USB Key。本文以Red Hat Enterprise Linux3.0为例,使用具有双启动型功能的闪盘建立基于Linux USB Key.
1. 软件下载安装
下载pam_usb软件
2. pam_usb登录配置
pum_usb编译安装后会在Linux 目录/etc/pam.d/下面产生两个配置文件:/etc/pam.d/login,/etc/pam.d/xdm。Pdm_usb支持以下三种登录方式。
(1) 登录方法:即插入正确的带有私钥的USB Key即可登录,不需要输入密码。方法是修改配置文件/etc/pam.d/login。
删除一行
Required pam_unix.so
添加一行
auth required pam_usb.so
(2) 二者择一登录方法:即插入正确的带有私钥的USB Key 或者正确输入正确的登录密码都可以登录。其流程是,假如没有给秘钥设置密码,那么登录的时候,插入USB闪盘,然后输入用户名可以直接登录了;如果秘钥有密码,要输入密码。方法是修改配置文件/etc/pam.d/login。
在auth required pam_unix.so前面加入一行
auth sufficient pam_usb.so
(3) 双重登录方法:即插入正确的带有私钥的USB Key并且输入正确登录密码即可登录。方法是修改配置文件/etc/pam.d/login。
在auth required pam_unix.so前面加入一行
auth sufficient pam_usb.so
3. 制作存储密码钥匙的USB Key。
在服务器安装编译pub_usb一行可以制作USB Key 了。方法很简单
#mkdir /mnt/usb
#mount /dev/sda1 /mnt/usb
以上命令建立挂载USB闪盘,下面可以产生一对DSA算法的公私密钥,其格式为:
# usbadm keygen <mntpoint> <user> <bits>
mntpoint:挂载点
user:用户名称
bits:密钥长度
Linux下基于PAM机制的USB Key的制作的更多相关文章
- linux下epoll实现机制
linux下epoll实现机制 原作者:陶辉 链接:http://blog.csdn.net/russell_tao/article/details/7160071 先简单回顾下如何使用C库封装的se ...
- 2017-2018-1 20155222 《信息安全系统设计基础》第10周 Linux下的IPC机制
2017-2018-1 20155222 <信息安全系统设计基础>第10周 Linux下的IPC机制 IPC机制 在linux下的多个进程间的通信机制叫做IPC(Inter-Process ...
- Kali Linux下破解WIFI密码挂载usb无线网卡的方法
Kali Linux下破解WIFI密码挂载usb无线网卡的方法 时间:2014-10-12 来源:服务器之家 投稿:root 首先我要说的是,wifi密码的破解不是想象中的那么容易,目前还 ...
- 实现Linux下的U盘(USB Mass Storage)驱动
如何实现Linux下的U盘(USB Mass Storage)驱动 版本:v0.7 How to Write Linux USB MSC (Mass Storage Class) Driver Cri ...
- 如何实现Linux下的U盘(USB Mass Storage)驱动
如何实现Linux下的U盘(USB Mass Storage)驱动 版本:v0.7 How to Write Linux USB MSC (Mass Storage Class) Driver Cri ...
- Linux下的IPC机制
Linux下的IPC机制 IPC(Inter-Process Communication)是多个进程之间相互沟通的一种方法.在linux下有多种进程间通信的方法. 共享内存 Linux内存共享有多种, ...
- Linux下基于LDAP统一用户认证的研究
Linux下基于LDAP统一用户认证的研究 本文出自 "李晨光原创技术博客" 博客,谢绝转载!
- Linux下基于.NET5开发CAX应用
<<.NET5下的三维应用程序开发>>一文中介绍了如何在.NET5下使用AnyCAD开发应用程序.相比.NET4.x,.NET5一大进步便是可以跨平台,即可以在Linux.Ma ...
- linux下六大IPC机制【转】
转自http://blog.sina.com.cn/s/blog_587c016a0100nfeq.html linux下进程间通信IPC的几种主要手段简介: 管道(Pipe)及有名管道(named ...
随机推荐
- Bootstrap 手机屏幕自适应的响应式布局开关
head中添加 <meta name="viewport" content="width=device-width, initial-scale=1, shrink ...
- netty 4.x用户使用指南
引言 问题 现在我们使用通用的应用程序或库来相互通信.例如,我们经常使用HTTP客户机从web服务器检索信息,并通过web服务调用远程过程调用.然而,通用协议或其实现有时不能很好地进行扩展.这就像我们 ...
- nginx: [warn] conflicting server name "aaa.7yule.cn" on 0.0.0.0:80, ignored
故障现象: 修改nginx配置参数后,使用nginx -t检查配置,出现告警提示 nginx: [warn] conflicting server name "aaa.7yule.cn&qu ...
- opencv —— normalize 矩阵归一化
归一化:就是将数据通过某种算法,限制需要的一定范围内. 归一化的目的:简而言之,是使得没有可比性的数据变得具有可比性,同时又保持相比较的两个数据之间的相对关系,如大小关系:或是为了作图,原来很难在一张 ...
- PTA 邻接表存储图的广度优先遍历
试实现邻接表存储图的广度优先遍历. 函数接口定义: void BFS ( LGraph Graph, Vertex S, void (*Visit)(Vertex) ) 其中LGraph是邻接表存储的 ...
- java-局部变量,成员变量区别
1. 内存中的位置 成员变量: 堆内存 局部变量: 栈内存 2. 生命周期 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法调用完毕而消失 3. 注意事项 ...
- netty 的事件驱动
netty 是事件驱动的,这里面有两个含义,一是 netty 接收到 socket 数据后,会产生事件,事件在 pipeline 上传播,二是事件由特定的线程池处理. NioEventLoop 轮询网 ...
- 如何在IDEA中使用GitHub
第一步:在GitHub网站中注册自己的账号 地址:https://github.com/ 第二步:下载Git客户端 地址:https://git-scm.com/ 第三步:在GitBash中配置用户名 ...
- 请求筛选模块被配置为拒绝包含双重转义序列的请求(.net core程序的‘web.config’调整)
之前项目有一个静态文件特殊字符转义的报错(+变为 %2B),老是显示404 请求筛选模块被配置为拒绝包含双重转义序列的请求 .网上的大多数解决方案都是一下: https://www.cnblogs ...
- 纪中集训2020.02.03【NOIP提高组】模拟B 组总结反思——登机(board),游戏(game),分组(group)
T1 JZOJ5535. 登机(board) 比赛时 一在题目列表里看到题目标题,就热血沸腾了,不知道为什么,老师居然放了一道之前做过的题目.我清楚地记得这题是DP,于是很快码了出来.讲一讲我的思路, ...