快速业务通道

linux控制用户的登录地点以及PAM的用法

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-21

  控制用户的登录地点

  文件/etc/secruity/access.conf可控制用户登录地点,为了使用access.conf,在文件/etc/pam.d/login中加入下面行:

  account required /lib/security/pam_access.so

  access.conf文件的格式:

  permission : users : origins

  其中:

  permission:可以是 “ ”或“-”,表示允许或拒绝.

  user:可以是用户名、用户组名,如果是all则表示所有用户.

  origins:登录地点.local表示本地,all表示所有地点,console表示控制台.另外,origins也可以是某一网络.

  后面两个域中加上 except是“除了”的意思.例如:除了用户wheel、shutdown、sync禁止所有的控制台登录:

  -:ALL EXCEPT wheel shutdown sync:console

  root账户的登录地点不在access.conf文件中控制,而是由/etc/securetty文件控制.

  保证/etc/pam.d/login有下面这行:

  auth required pam_securetty.so

  etc/securetty文件指定了允许root登录的tty设备,由/bin/login程序读取,其格式是一个被允许的名字列表,你可以编辑/etc/securetty且注释掉如下的行.

  # tty2

  # tty3

  # tty4

  # tty5

  # tty6

  这时,root仅可在tty1终端登录.

  关于PAM的一些解释

  热身:

  何要授予用户特权的程序都要能够进行用户认证.当您登入系统时,您需要提供用户名和口令,而后登入进程据此以检验登入的合法性---确认您就是该用户.还有除口令认证之外的其他认证形式,口令的存储方式也是各不相同的.

  1、说明

  A、PAM可加载目标文件(模块)是在RedHat Linux系统中它们被放在了/lib/security目录下

  B、PAM库本地系统配置文件/etc/pam.conf OR /etc/pam.d/目录下的一些配置文件来设置

  2、# more login

  #%PAM-1.0

  auth required pam_securetty.so

  用来控制root用户只可以从包含在/etc/securetty文件中的终端登录系统.

  auth required pam_stack.so service=system-auth

  auth required pam_nologin.so

  提供标准的UNIX nologin登录认证.如果/etc/nologin文件存在,则只有root用户可以登录,其他用户登录时只会得到/etc/nologin文件的内容.如果/etc/nologin不存在,则该模块没有作用.

  account required pam_stack.so service=system-auth

  password required pam_stack.so service=system-auth

  # pam_selinux.so close should be the first session rule

  session required pam_selinux.so close

  session required pam_stack.so service=system-auth

  session optional pam_console.so

  # ls -l /dev/pts/1

  crw--w---- 1 root tty 136, 1 May 15 21:19 /dev/pts/1

  # ls -l /dev/pts/2

  crw--w---- 1 test tty 136, 2 May 15 21:20 /dev/pts/2

  用户登陆时,它将TTY设备权限改成该用户所有,当用户退出时,将TTY设备权限改为root所有.

  # pam_selinux.so open should be the last session rule

  session required pam_selinux.so multiple open

  login要做两件事,查询用户,然后为用户提供所需服务,例如提供一个shell程序.

  通常,login会提示用户输入密码.然后对密码进行校验,这项任务就是Linux-PAM完成的.

  上 例中三个required连续使用, 即便第一个模块失败了,也要完成三个模块的校验.这是一种安全上的考虑 ---这种设计永远不要让用户知道他或她们为什么会被拒绝,否则会让其更容易突破认证.可以将“required”改成“requisite”来修改这种 认证方式.如果有任何“requisite”模块以失败返

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号