linux 5.5 外接usb2.0硬盘,RHEL5 使用pam_usb
发布日期:2021-06-24 13:22:53 浏览次数:2 分类:技术文章

本文共 3393 字,大约阅读时间需要 11 分钟。

RHEL5 使用pam_usb

RHEL5 制作USBKEY登陆系统

他的官方站点:http://pamusb.org/

关于这个软件的详细信息可以去这个站点查看。

linux可以使用usbkey来登录系统,要实现这种功能,要使用pam_usb这个软件

首先当然是下载这个软件:

http://ncu.dl.sourceforge.net/sourceforge/pamusb/pam_usb-0.4.2.tar.gz

查看软件包里面的./pam_usb-0.4.2/doc/QUICKSTART文件,可以知道

pam_usb依赖于:libxml2, PAM, HAL and pmount        ## 前面三个说的都是devel包

[root@station203 pam_usb-0.4.2]# rpm -qa | grep devel | grep -E "hal|libxml|pam"

libxml2-devel-2.6.26-2.1.2

hal-devel-0.5.8.1-25.el5

pam-devel-0.99.6.2-3.26.el5

[root@station203 pam_usb-0.4.2]# rpm -qa | grep pmount

pmount-0.9.13-1.el5

pam_usb's tools (pamusb-agent,pamusb-conf)依赖于:python, python-celementtree and python-gobject.

注意:RHEL5中python-celementtree的名字叫:python-elementtree-1.2.6-5

python-gobject的名字叫:pygobject2-2.12.1-5.el5

RHEL5的ISO中是不带有pmount,所以要另外下载。地址如下:

ftp://ftp.univie.ac.at/systems/linux/fedora/epel/5/i386/pmount-0.9.13-1.el5.i386.rpm

[root@station203 ~]# rpm -ivh pmount-0.9.13-1.el5.i386.rpm

warning: pmount-0.9.13-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6

Preparing...                ########################################### [100%]

1:pmount                 ########################################### [100%]

[root@station203 ~]# tar zxvf  pam_usb-0.4.2.tar.gz

[root@station203 pam_usb-0.4.2]# make

[root@station203 pam_usb-0.4.2]# make install

现在pam_usb已经安装好了。

[root@station203 pam_usb-0.4.2]# ls /lib/security/ | grep usb

pam_usb.so

## 已经可以看到pam_usb.so模块了

[root@station203 pam_usb-0.4.2]# ls /usr/bin/ | grep pamusb

pamusb-agent

pamusb-check

pamusb-conf

## 并且pamusb的三个工具命令也有了。

现在可以修改登陆验证的过程了。用pam验证。

[root@station203 pam_usb-0.4.2]# cd /etc/pam.d/

[root@station203 pam.d]# vim system-auth

## 在auth        sufficient    pam_unix.so nullok try_first_pass这行的上面添加一行:

auth    sufficient      pam_usb.so

## 使用pam_usb.so验证登陆,可以加-c 后面指定配置文件,默认是在/etc下面

好,现在可以制作usbkey了。

把准备好的u盘设备接好。

[root@station203 pam.d]# pamusb-conf --add-device usbkey

Please select the device you wish to add.

* Using "USB2.0 Flash Disk (USB2.0_Flash_Disk_1000000000000859)" (only option)

Which volume would you like to use for storing data ?

* Using "/dev/sdb1 (UUID: 58E6-7979)" (only option)

Name            : usbkey

Vendor          : USB2.0

Model           : Flash Disk

Serial          : USB2.0_Flash_Disk_1000000000000859

UUID            : 58E6-7979

Save to /etc/pamusb.conf ?

[Y/n] y

Done.

## 添加一个设备,名字叫usbkey,我随便取的。pamusb-conf会自动扫描u盘设备,并添加。

## 然后添加用户,我添加root用户,当然,你也可以添加其他的用户。

[root@station203 pam.d]# pamusb-conf --add-user root

Which device would you like to use for authentication ?

* Using "usbkey" (only option)

User            : root

Device          : usbkey

Save to /etc/pamusb.conf ?

[Y/n] y

Done.

[root@station203 pam.d]# pamusb-check root

* Authentication request for user "root" (pamusb-check)

* Remote authentication request: 192.168.1.110

* Access denied.

## 测试下,失败了。。。。。:(

没有关系,我这里是用的虚拟机,远程上去做的试验,现在到虚拟机的本地去测试。效果如下:图1

200906051244179543721.jpg

开始的时候,插入usbkey,输入root,然后pamusb验证没有通过,结果要求输入密码,假如密码正确,也可以登陆,但是我故意输错。因为我知道为什么会这样。

在刚才实验的远程终端上,使用下面命令:

[root@station203 pam.d]# setenforce 0

## 把selinux改成默许模式

## 所以说,用pamusb验证需要关掉selinux,具体关掉的方法如下:

修改grub.conf文件,在你用的kernel启动项后面加上selinux=0,就可以了。

再到虚拟机本地测试,就出现图片下面部分的。输入root,直接的验证通过,,不需要密码,登陆成功。

在远程测试:

[root@station203 pam.d]# pamusb-check root

* Authentication request for user "root" (pamusb-check)

* Remote authentication request: 192.168.1.110

* Access denied.

## 失败,具体的我也不确定,但是我觉得应该是:

这个pamusb是通过pam的功能来验证的,是用户在使用login程序登陆的时候才起作用,但是远程的时候是用ssh程序,所以不能用

pamusb,或者说是要修改那个配置文件,这里我不知道,有高手知道的话,麻烦指点。

©著作权归作者所有:来自51CTO博客作者jasonyong的原创作品,如需转载,请注明出处,否则将追究法律责任

转载地址:https://blog.csdn.net/weixin_33102135/article/details/116836933 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:linux水仙花代码,linux下namp简单使用
下一篇:linux oracle查询语句,从linux的pid查询oracle执行语句的方法(ZT)

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月24日 05时39分58秒