配色: 字号:
Debian应用-第四部分 认证
2021-08-08 | 阅:  转:  |  分享 
  
第四部分认证4.1一般的Unix认证一般的Unix认证由PAM(即可插入的验证模块)下的pam_unix模块提供。它的3
个重要文件如下,其内的条目使用“:”分隔,其如下表:文件权限用户组说明/etc/passwd-rw-r--r--rootro
ot(明文的)用户账号信息/etc/shadow-rw-r-----rootshadow安全加密的用户账号信息/etc/group
-rw-r--r--rootroot组信息(1)“/etc/passwd”包含下列内容在passwd文件中,用“:”分隔
的每项含义如下:登录名密码形式说明数字形式的用户ID数字形式的组ID用户名或注释字段用户家目录可选的用户命令解释器关于密码的表
示方式如下:内容说明(空)无需密码的账号x加密后的密码保存在“/etc/shadow”无法登陆的账号!无法登陆的账号(2)“/
etc/shadow”包含下列内容在shadow文件中,用“:”分隔的每项含义如下:登录名;加密后的密码(开头的“$1
$”表示使用MD5加密。“”表示无法登陆。);最后一次修改密码的时间,其表示从1970年1月1日起的天数;允
许用户再次修改密码的天数间隔;用户必须修改密码的天数间隔;密码失效前的天数,在此期间用户会被警告;密码失效后的天数,在次期间密码依
旧会被接受;账号失效的时间,其表示从1970年1月1日起的天数;(3)“/etc/group”包含下列内容在gro
up文件中,用“:”分隔的每项含义如下:组名称;加密后的密码(不会被真正使用);数字形式的组ID;使用“,”分隔的用户
名列表;(4)管理账号和密码命令功能getentpasswd浏览“”的账号信息
getentshadow浏览用户""隐藏的账户信息getentgroup<
group_name>浏览“”的组信息passwd管理账号密码passwd-e为激活的账号设置一次性
的密码chage管理密码有效期信息4.2whois命令的应用(1)安装whois软件(2)whois解析whois指令会去查找并
显示指定帐号的用户相关信息。-a搜寻所有数据库-c找到最小的包含一个mnt-irt属性的匹配-d同时返回DNS
反向查询的代理对象(需支持RPSL协议)-F快速输出原始数据-H隐藏法律声明内容-iATTR进行一次反向查询-l将
精确度降低一级的查询(需支持RPSL协议)-L找到所有低精确度匹配-m找到第一级较高精确度匹配-M找到所有较高精确度
匹配-r查询联系信息时关闭递归查询-R显示本地域名对象副本-x精确匹配-h[主机]连接到指定HOST服务器-
p[端口]连接到指定PORT端口-t[类型]查询指定类型对象头信息-T[类型]查找指定类型的对象-v[类型]
查询指定类型对象冗余信息-q[版本|类型]查询特定的服务器信息(需支持RPSL协议)(3)案例1:显示指定用户信息(4)案
例2:查询域名描述信息(5)案例3:查询域名信息省略法律声明(6)案例4:指定端口查询4.3openssl命令的应用Linux
服务器会使用OpenSSL协议,但是OpenSSL有些低版本会存在漏洞,比如著名的"受戒礼"或"贵兵犬"漏洞,这里利用P
ythonparamiko库编写了一个Windows下的GUI小程序,可以实现批量检测Linux服务器上的Ope
nSSL是否具有这两个漏洞。(1)下载openssl软件(2)解压文件(3)安装文件提示:没有发现make命令;其解决的办法是重
新安装make命令;在接着执行make安装命令在接着执行makeinstall安装命令提示:gcc:notfound(没有
发现gcc命令),解决办法如下:更行apt软件包安装必要软件包,例如gcc、g++、make等命令;检测gcc是否安装成功;在接着
执行makeinstall安装命令检验openssl是否安装成功(4)openssl应用实例实例1:为当前目录下的test.tx
t文件进行md5加密【前提是test.txt】文件已经创建;解析:openssldgst是单向加密命令;MD5为一种加密算法;注
意:单向加密只针对文件进行加密,不能对文件夹加密;实例2:对输入/输出的内容进行加密,并加密的内容写入到指定的文件中单向加密除了
openssldgst工具还有:md5sum,sha1sum,sha224sum,sha256sum,sha384sum,
sha512sum解析:单向加密又称为不可逆加密算法,在加密过程中不使用密钥,明文由系统加密处理成密文,密文无法解密。一般适合于
验证,在验证过程中,重新输入明文,并经过同样的加密算法处理,得到相同的密文并被系统重新认证。广泛使用于口令加密。实例3:使用md
5加密算法对输入的内容生产加密实例4:使用md5加密算法对文件生产加密实例5:使用md5加密算法对文件内容采用随机数的方式进行加密
更加具体的内容,请看原文“https://www.cnblogs.com/yangxiaolan/p/6256838.html”更
加具体的内容,请查看链接“http://www.360doc.com/content/21/0808/10/55610025_99
0099146.shtml”4.4PAM和NSS应用(1)概述现代的类Unix系统(例如Debian系统)提供PAM(
插入式验证模块)和NSS(名称服务切换)机制给本地系统管理员,使他们能够配置自己的系统。PAM给应用软件提供了一个灵活的认
证机制,因此涉及到了密码数据的交换。NSS提供了一个灵活的名称服务机制,它经常被C标准库使用,使例如ls(1)和id(
1)这样的程序获得用户和组名称。PAM和NSS系统必须保持配置一致。PAM使用配置/etc/pam.d/下的文件,来管理对
程序的认证方式.应用程序调用相应的配置文件,从而调用本地的认证模块.模块放置在/lib/security下,以加载动态库的形式进
,像我们使用su命令时,系统会提示你输入root用户的密码.这就是su命令通过调用PAM模块实现的。实例1:显示pam.d文件夹中
包含的文件实例2:查看文件的格式由上面的pam模块文件内容看,可以将pam配置文件分为四列,第一列代表模块类型、第二列代表控制标记
、第三列代表模块路径、第四列代表模块参数;解析1:第一列:PAM的模块类型有四种模块类型,分别代表四种不同的任务,它们是:认证管理
(auth),账号管理(account),会话管理(session)和密码(password)管理,一个类型可能有多行,它们按顺序
依次由PAM模块调用。解析2:第二列:PAM的控制标记,PAM使用控制标记来处理和判断各个模块的返回值.(在此只说明简单的认证标记
)。required:表示该行以及所涉及模块的成功是用户通过鉴别的必要条件。requisite:与required相仿,只有带此标
记的模块返回成功后,用户才能通过鉴别。sufficient:表示该行以及所涉及模块验证成功是用户通过鉴别的充分条件。optiona
l:他表示即便该行所涉及的模块验证失败用户仍能通过认证。include:表示在验证过程中调用其他的PAM配置文件。解析3:模块路径
.即要调用模块的位置.如果是64位系统,一般保存在/lib64/security,如:pam_unix.so,同一个模块,可以
出现在不同的类型中。解析4:模块参数,即传递给模块的参数.参数可以有多个,之间用空格分隔开。实例3:剔除文件中的“#”号,只显示相
关未隐藏的内容(2)PAM和NSS访问的配置文件/etc/pam.d/为“name>”程序设置PAM配置;参加pam(7)和pam.d(5)/etc/nsswitch.conf为每个服务条目设
置NSS配置。参见nsswitch.conf(5)/etc/nologin通过pam_nologin(8)模块限制用户
登陆/etc/securetty通过pam_securetty(8)模块限制root访问tty/etc/securit
y/access.conf通过pam_access(8)模块设置访问限制/etc/security/group.conf通
过pam_group(8)模块设置基于组的限制/etc/security/pam_env.conf通过pam_env(8)
模块设置环境变量/etc/environment通过带有“readenv=1”参数的pam_env(8)模块设置额外的环境
变量/etc/default/locale通过带有“readenv=1envfile=/etc/default/locale”
参数的pam_env(8)模块设置语言环境值(在Debian系统中)/etc/security/limits.conf通
过pam_linits(8)模块设置资源限制(ulimit、core等等)/etc/security/time.conf通过
pam_time(8)模块设置时间限制/etc/systemd/logind.conf设置systemd的登录管理器配置
(参见logind.conf(5)和systemd-logind.service(8))(3)安全认证许多流行的传输层服务都
使用纯文本来传输包括密码验证信息在内的各类消息。使用纯文本在公网上传输密码是很糟糕的做法,因为这样传输的密码很容易在网上被他人截获
。为了确保整个沟通过程,包括密码信息在内都使用加密传输来确保安全,您可以在“传输层安全(TransportLayerSecurity,TLS)”协议或者其前身,“安全套接字层(SecureSocketsLayer,SSL)”协议之上运行这些服务。不安全的服务名端口安全的服务名端口www(http)80https443smtp(邮件)25ssmtp(smtps)465ftp-data20ftps-data989ftp21ftps990telnet23telnets992imap2143imaps993pop3110pop3s995ldap389ldaps636
献花(0)
+1
(本文系Teacher_Lin...原创)