SUID,SGID,Sticky,FACL应用实例

回复 收藏
本帖最后由 潘有成 于 2014-11-23 16:35 编辑

1、某公司信息部

    1)信息部组ITDep包含以下用户:
                        it                    #信息部老大
                        it1                  #信息部成员
                        it2                  #信息部成员
    2)/data/ITDep/有以下文件夹:
                        it                      #用户it文件夹
                        it1                    #用户it1文件夹,仅允许用户it查看,但不能修改,删除
                        it2                    #用户it2文件夹,仅允许用户it查看,但不能修改,删除
                        itpub               #信息部共用文件夹,组ITDep内的用户都可以查看,但只能修改、删除属于自己创建的文件
                        note.txt           #信息部通告文件,不能删除,重命名,修改数据、增加数据


#如果题目有问题、不完整,请补充,谢谢!
2014-11-23 14:42 举报
已邀请:
0

王肖强

赞同来自:

本帖最后由 王肖强 于 2014-11-24 11:45 编辑

   groupadd ITDep
   useradd -g ITDep it ; passwd it
   useradd -g ITDep it1 ; passwd it1
   useradd -g ITDep it2 ; passwd it2
------------------------------------------------------------------------------------------------------
   mkdir /data/ITDep/it ; chown -R it:it it ; chmod 700 it
   mkdir /data/ITDep/it1 ; chown -R it1:it1 it1 ; chmod 700 it1 ; chattr +i it1
   mkdir /data/ITDep/it2 ; chown -R it2:it2 it2 ; chmod 700 it2 ; chattr +i it2
   mkdir /data/ITDep/itpub ; chown -R :ITDep itpub ; chmod g+s,o+t itpub
   touch /data/ITDep/itpub/note.txt ; chattr +i note.txt
==============================================
## 写个大概意思吧 , FACL 只接触过一次 , 不熟就没用 。

0

潘有成

赞同来自:

实现:

#!/bin/bash
groupadd ITDep
useradd -g ITDep it
echo "123456" | passwd --stdin it &>/dev/null
useradd -g ITDep it1
echo "123456" | passwd --stdin it1 &>/dev/null
useradd -g ITDep it2
echo "123456" | passwd --stdin it2 &>/dev/null

mkdir -p /data/ITDep/{it,it1,it2,itpub}

    chown it.ITDep /data/ITDep/it
    chown it1.ITDep /data/ITDep/it1
    chown it2.ITDep /data/ITDep/it2
    chown :ITDep /data/ITDep/itpub

    chmod -R 700 /data/ITDep/it
    chmod -R 700 /data/ITDep/it1
    setfacl -m u:it:r-x /data/ITDep/it1                            #目录要加x,否则进不去
    chmod -R 700 /data/ITDep/it2
    setfacl -m u:it:r-x /data/ITDep/it2                            #目录要加x,否则进不去

    chmod -R 1770 /data/ITDep/itpub         
        
    touch /data/ITDep/note.txt
    chown it.ITDep /data/ITDep/note.txt
    chmod 711 /data/ITDep/note.txt
    chattr +i /data/ITDep/note.txt

#---------------------------------------------------------------------------------#

销毁,反向操作

#!/bin/bash
userdel -r it
userdel -r it1
userdel -r it2
groupdel ITDep


chattr -i /data/ITDep/note.txt
chmod -R 0770 /data/ITDep/itpub
rm -rf /data/IT*
#---------------------------------------------------------------------------------#
0

649969462

赞同来自:


useradd it
useradd it1
useradd it2

mkdir -p /data/itdep/it
mkdir -p /data/itdep/it1
mkdir -p /data/itdep/it2
mkdir -p /data/itdep/itpub
touch /data/itdep/note.txt

cd /data/itdep
chown it.it it
chmod 700 it
chmod g+s it

chown it1.it it1
chmod 740 it1
chmod g+s it1

chown it2.it it2
chmod 740 it2
chmod g+s it2

usermod -G itdep it
usermod -G itdep it1
usermod -G itdep it2
chown it.itdep -R itpub
chmod 777 itpub
chmod g+s itpub
chmod o+t itpub

chown it.itdep note.txt
chmod 744 note.txt


请大家多多指教,指出错误,一起进步
0

t236xuchunfang

赞同来自:

groupadd ITDep
mkdir /data/ITDep
useradd it
useradd it1
useradd it2
cd /data/ITDep
mkdir it
mkdir it1
mkdir it2
mkdir itpub
touch note.txt
chown it.itdep note.txt
chmod 744 note.txt
chown it.ITDep -R itpub
chmod g+s itpub/
chmod o+t itpub/
chmod 777 itpub
chown it.it it
chown it1.it1 it1
chown it2.it2 it2
setfacl -m u:it:r-x it1/
setfacl -m u:it:r-x it2/
0

2422606568

赞同来自:


厉害。还是有些地方不明白。  你都 加了这个 chattr +i /data/ITDep/note.txt。 那这句chmod 711 /data/ITDep/note.txt  好像没有用的样子

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: