rhel6改口令报错Authentication token manipulation error去特殊权限chattr(转载)

2750阅读 0评论2015-03-31 lyhabc
分类:LINUX

转载自:

特殊权限

chattr 更改特殊权限
chattr +i 2.txt  i选项防止你更改目录或文件   无法删除 无法编辑 无法重命名 2.txt

chattr -i 2.txt 

chattr +a  2.txt  只能追加  不能重命名 不能删除 2.txt

chattr -a  2.txt

lsattr 列出当前目录所有目录和文件的特殊权限

lsattr -d 12/  查看目录

lsattr 2.txt

lsattr -R /tmp 查看/tmp目录下有哪个文件有特殊权限 导致不能rm -rf /tmp 目录


RHEL6修改口令报错passwd: Authentication token manipulation error


原因:和之前的安全加固有关系,通过手工修改/etc/passwd等两个文件的属性即可成功修改密码


备注:chattr 改变文件属性。
i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件


解决问题的方法如下:先修改文件属性为可修改,再改回来,具体如下


[root@linux1 /]# passwd Oracle
Changing password for user oracle.
New password: 
Retype new password: 
passwd: Authentication token manipulation error
[root@linux1 /]# 
[root@linux1 /]# 
[root@linux1 /]# ls -l /etc/passwd
-rw-r--r-- 1 root root 1831 May 30 14:24 /etc/passwd
[root@linux1 /]# ls -l /etc/shadow 
-rw-r--r-- 1 root root 1430 May 30 15:52 /etc/shadow
[root@linux1 /]# chattr -i /etc/passwd    #去掉权限
[root@linux1 /]# chattr -i /etc/shadow
[root@linux1 /]# 
[root@linux1 /]# 
[root@linux1 /]# passwd oracle
Changing password for user oracle.
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.
[root@linux1 /]# 
[root@linux1 /]# 
[root@linux1 /]# chattr +i /etc/shadow   #加回权限
[root@linux1 /]# chattr +i /etc/passwd
[root@linux1 /]#


http://blog.163.com/junwu_lb/blog/static/1916798920120103647199/
年底需要修改一次密码,修改的时候遇到了问题,无法修改密码,经过baidu 、google,找到了可能引起的原因,成功修改密码。
以下内容来自于网络。


Authentication token manipulation error
发生该错误原因是:
1、分区没有空间导致。
2、/etc/passwd 和/etc/shadow不同步
但是这次上面两条却行不通,通过df查看根分区还有40%剩余。
 
1、尝试修改密码,出现错误
# passwd
Changing password for user root.
New UNIX password: 
BAD PASSWORD: it is WAY too short
Retype new UNIX password: 
passwd: Authentication token manipulation error
2、同步/etc/passwd 和/etc/shadow出错
 #pwconv
pwconv: can't lock passwd file
3、看权限没有异常,也没有进程锁定该文件
# ll /etc/passwd
-rwxr--r--  1 root root 2752 Dec 31 17:29 /etc/passwd
# fuser -u /etc/passwd
# lsof |grep passwd
4、cp lock文件出错,提示空间不足
# cp /tmp/.pwd.lock /etc/
cp: cannot create regular file `/etc/.pwd.lock': No space left on device
5、上面的错误惊醒了我,查看确实是inode满了,删除无用的文件
#df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda5            2562240 2562240       0  100% /
/dev/sda1              50200      47   50153    1% /boot
/dev/sda2            51300000      12 51299988    1% /data/cache1
/dev/sdb1            51300000 7080311 44219689   14% /data/cache2
/dev/sdb2            9863168      11 9863157    1% /data/proclog
none                  215907       1  215906    1% /dev/shm
/dev/sda3            3842720  305795 3536925    8% /usr
/dev/sda7            3162112    7893 3154219    1% /var
6、再次修改密码仍然出错,于是尝试修改/etc/passwd也出现错误
# chmod 777 /etc/passwd
chmod: changing permissions of `/etc/passwd': Operation not permitted
7、执行chattr 
#chattr -i  /etc/passwd
# lsattr -v /etc/passwd 
2095582053 ------------- /etc/passwd
# chattr -i  /etc/shadow
8、同步文件
pwconv
9、成功修改密码
passwd 
Changing password for user root.
New UNIX password: 
BAD PASSWORD: it is WAY too short
Retype new UNIX password: 
passwd: all authentication tokens updated successfully.










pwconv


   功能说明:开启用户的投影密码。
   语 法:pwconv
   补充说明:Linux系统里的用户和群组密码,分别存放在名称为passwd和group的文 件中,这两个文件位于/etc目录下。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在/etc目录下的 shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符,有效的强化了系统的安全性。
   pwconv:开启用户的shadow口令. 
  一般来用pwconv来同步口令,下面来说一下,它的工作流程:
   pwconv依赖于passwd中的密码区'x'来同步/etc/passwd与/etc/shadow这两个文件;以/etc/passwd为主来控制/etc/shadow中的各项:
   A:若/etc/shadow不存在,则pwconv将用/etc/passwd来建立
   B:若/etc/shadow已存在,则:
   1.若条目在passwd中已存在,而不在shadow中,则在shadow中添加相关条目
   2.若条目在shadow中已存在,而不在passwd中,则从shadow中删除相关条目



上一篇:通过lsof工具来查看哪些进程锁定了该文件
下一篇:Linux 的启动流程(转载)