• 352阅读
  • 1回复

linux尝试登录失败后锁定用户账户的两种方法

楼层直达
这篇文章主要给大家分享了linux尝试登录失败后锁定用户账户的两种方法,分别是利用pam_tally2模块和pam_faillock 模块实现,文中通过详细的示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。 Yf[Qtmh]I  
]Ta N{"  
本文主要给大家介绍了关于linux尝试登录失败后锁定用户账户的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍吧。 <G*nDFWf  
pam_tally2模块(方法一)  ;vb8G$  
用于对系统进行失败的ssh登录尝试后锁定用户帐户。此模块保留已尝试访问的计数和过多的失败尝试。 $k$4% 7  
配置 ''|#cEc)  
使用/etc/pam.d/system-auth或etc/pam.d/password-auth配置文件来配置的登录尝试的访问 _$>pw<  
? `N5|Ho*C  
1 i9=&;_z  
2 X*L;.@xA  
auth required pam_tally2.so deny=3 unlock_time=600 n k2om$nN  
account required pam_tally2.so TYA~#3G)  
注意: Dn>%%K@0  
auth要放到第二行,不然会导致用户超过3次后也可登录。 WlYs~(= 9  
如果对root也适用在auth后添加even_deny_root. Q%-di=  
? aC< KN:TN6  
1 Rml2"9"`  
auth required pam_tally2.so deny=3 even_deny_root unlock_time=600 |_ G )qp;  
pam_tally2命令 8 B**8yg.  
查看用户登录失败的信息 L_w+y  
? Dk5Zh+^  
1 #b7$TV  
2 =f(cH152T  
3 U8(Nk\"X\  
pam_tally2 -u test >s`J5I!  
Login  Failures Latest failure From P+)DsZ0ig  
test  1 06/20/17 14:18:19 192.168.56.1  ykrr2x  
解锁用户 4ikdM/  
? J6<rX[ yZe  
1 ~n/ $  
pam_tally2 -u test -r 9!><<7TS  
pam_faillock 模块(方法二) 3z ]+uv+2J  
在红帽企业版 Linux 6 中, pam_faillock PAM 模块允许系统管理员锁定在指定次数内登录尝试失败的用户账户。限制用户登录尝试的次数主要是作为一个安全措施,旨在防止可能针对获取用户的账户密码的暴力破解 4tx|=;@0  
通过 pam_faillock 模块,将登录尝试失败的数据储存在 /var/run/faillock 目录下每位用户的独立文件中 +78CvjG  
配置 I=;+n-  
添加以下命令行到 /etc/pam.d/system-auth 文件和/etc/pam.d/password-auth 文件中的对应区段: }^(}HBT  
? |+$%kJR=  
1 Gy[O)PEEh  
2 :{q"G#  
3 2r%lA\,h$  
4 GQ_p-/p R  
auth  required  pam_faillock.so preauth silent audit deny=3 unlock_time=600 0<TD/1wN  
auth  sufficient pam_unix.so nullok try_first_pass ?:Y#Tbi3  
auth  [default=die] pam_faillock.so authfail audit deny=3 M_LXg%  
account  required  pam_faillock.so %Qmk2  
注意: Ez{MU@Fk  
auth required pam_faillock.so preauth silent audit deny=3 必须在最前面。 LB/C-n.`  
适用于root在pam_faillock 条目里添加 even_deny_root 选项 dSCzx .c  
faillock命令 MV=9!{`  
查看每个用户的尝试失败次数 ?m c%.Bt  
? OMk5{-8B  
1 >\w&6 i~  
2 7a=S  
3 `Bn=?9  
4 )wVIb)`R>Y  
5 d`d0 N5\  
6 8^B;1`#  
$ faillock an2AX% u  
test: h3gWOU  
When    Type Source           Valid _8G>&K3T<  
2017-06-20 14:29:05 RHOST 192.168.56.1           V vB! |\eJ  
2017-06-20 14:29:14 RHOST 192.168.56.1           V ~L7:2weV[  
2017-06-20 14:29:17 RHOST 192.168.56.1           V  ,YhwpkL  
解锁一个用户的账户 I^Z8PEc+  
? 2l5KJlfj>k  
1 7< 9L?F2  
faillock --user <username> --reset [Vf}NF  
总结 zhB">j8j  
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
 
只看该作者 安逸沙发  发表于: 2017-09-10
linux中如何添加用户并赋予root权限详解
这篇文章主要先是给大家介绍了linux中如何添加用户并赋予root权限,而后有详细的介绍了Linux系统用户组的管理,文中通过示例代码介绍的很详细,相信对大家的理解和学习具有一定的参考借鉴价值,有需要的朋友们下面来一起学习学习吧。 |?`5~f  
@ D+ftb/  
一、linux添加用户并赋予root权限 mP(3[a_Q  
1、添加用户,首先用adduser命令添加一个普通用户,命令如下: dhl[=Y ` Q  
? %\As  
1 i=8iK#2 h  
2 fV(3RG  
3 iHK~?qd}  
4 [|u^:&az  
5 y}Ky<%A!P  
6 0&.CAHb}  
7 `+J Fvn!  
8 K~x,so  
#adduser eric #Ondhy%h[  
=BsV`p7rU  
//添加一个名为eric的用户 }2A6W%^>]  
#passwd eric//修改密码 ^ k^y|\UtZ  
Changing password for user eric. da{]B5p\  
New UNIX password:   //在这里输入新密码 0P^h6Vat  
Retype new UNIX password: //再次输入新密码 8#I>`z^F  
passwd: all authentication tokens updated successfully. eE;tiX/  
2、赋予root权限 snV*gSUH  
方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉 j)1yv.  
? 6Z/`p~e  
1 jXcJ/g(X3  
2 ]n ?x tI  
## Allows people in group wheel to run all commands OfsP5*d  
%wheel  ALL=(ALL)  ALL xVvUx,t  
然后修改用户,使其属于root组(wheel),命令如下: mgxIxusR  
? gjF5~ `  
1 ~Eut_d  
#usermod -g root eric W<Uu.Y{sG  
修改完毕,现在可以用eric帐号登录,然后用命令 su – ,即可获得root权限进行操作。 k<1yv$/mW  
方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示: BT_]=\zi  
? ]5W$EvZ9)  
1 .@dC]$2=  
2 wI#8|,]"z  
3 )!y>2$20 r  
## Allow root to run any commands anywhere ;D5>iek5  
root  ALL=(ALL)   ALL T.q2tC[bR  
eric  ALL=(ALL)   ALL Nk~}aj  
修改完毕,现在可以用eric帐号登录,然后用命令 sudo – ,即可获得root权限进行操作。 vr!J3H f  
方法三:强烈推荐使用此方法,修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 Y~~Dg?e  
如下所示: S"Al [{  
?  *7Dba5B  
1 2 a<\4w'  
eric:x:0:33:eric:/data/webroot:/bin/bash VJ*1g+c  
二、Linux系统用户组的管理 \BOoY#!a  
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。 {%jAp11y+O  
不同Linux 系统对用户组的规定有所不同, wcHk]mLM  
如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。 ;5a$ OM  
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。 [%IOB/{N  
1、增加一个新的用户组使用groupadd命令。 /iW+<@Mas  
语法: l![M,8  
     groupadd 选项 用户组  <,.$U\W  
选项: b#2)"V(  
     -g GID   指定新用户组的组标识号(GID)。 Iil2R}1  
     -o       一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。 Wzq W1<*`  
例1: _h%Jf{nu  
? +/OSg.  
1 B`pBIUu  
$ groupadd group1 B5\l&4X  
释义: .=y=Fv6X  
  此命令向系统中增加了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。 _K5<)( )  
例2: iUKjCq02  
? 2g(_Kdj*{  
1 }_Bo:*9B-o  
$ groupadd -g 101 group2 M-WSdG[AJ  
释义: SH*'<  
  此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。 7:`XE&Z  
2、如果要删除一个已有的用户组,使用groupdel命令. 7uBx  
语法: {uDW<u_!  
    groupdel 用户组 wGHft`Z  
例1: "$BkO[IS  
? N=mvr&arP  
1 q 4BXrEOw  
$ groupdel group1 2[ sY?C  
释义: Quth5  
  此命令从系统中删除组group1。 lL}6IZ5sb  
3.修改用户组的属性使用groupmod命令。 Q`CuZkP(  
语法: K^{j$  
    groupmod 选项 用户组 5nPvEN/  
选项: 1N/4W6  
    -g GID           为用户组指定新的组标识号。 Owp]>e  
    -o               与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。 L1IF$eC  
    -n  新用户组     将用户组的名字改为新名字 6/!:vsa"3  
例1: DksYKv  
? R ENCk (  
1 oKGH|iVEe  
$ groupmod -g 102 group2 lyL6w1  
释义: V .Kjcy  
此命令将组group2的组标识号修改为102。 &0 QUObK  
例2: F"Dr(V  
? /X8a3Eqp9  
1 [_N1 .}e  
$ groupmod –g 10000 -n group3 group2 RqROl!6  
释义: 9WHE4'Sa  
此命令将组group2的标识号改为10000,组名修改为group3。 n'rq  
4.如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。 ;&lXgC^*  
用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。 `!8\ |/  
例如: $`xpn#l z  
? \ ZnA%hC  
1 i7RK*{  
$ newgrp root IO7z}![V;  
释义: qJ" (:~  
这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。 y9}qB:[bR  
类似于用户账号的管理,用户组的管理也可以通过集成的系统管理工具来完成。 tFcQ.1  
总结 |@d(2f8  
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
快速回复

限100 字节
安逸网提示:如果您在写长篇帖子又不马上发表,建议存为草稿
 
认证码:
上一个 下一个