本腳本實例的要求如下:
1、公司有公共共享目錄public,所有員工均可讀寫,但不允許刪除其他員工的文件;不能匿名登錄
2、每部門均有共享目錄,部門經理可讀寫,部門員工可讀;
? 非本部門員工不能訪問(caiwu、renshi、yewu、kaifa、kefu部,每部門均有多名員工)
3、所有員工均有個人目錄,其他人均不能訪問
4、為滿足不同員工的訪問習慣,以上訪問要求通過FTP與SAMBA能同樣訪問
5、要求用腳本實現
? ?A、安裝配置自動完成
? ?B、添加用戶時自動完成訪問設置
【目錄規劃】:
/data/public
caiwu(存放用戶宿主目錄)
renshi)
yewu
kaifa
kefu
caiwu-pub(部門公共目錄)
rensh-pub
yewu-pub
kaifa-pub
kefu-pub
目錄權限:750 屬主:部門經理;屬組:部門組
【用戶宿主目錄示例】:
/data/caiwu/cw1
cw2
cw3
【添加用戶命令示例】:
useradd -g caiwu -d /data/caiwu/cw1 cw1
【ftp用戶訪問根目錄】:
local_root=/data
【ftp關閉匿名訪問】:
anonymous_enable=YES(改成NO)
【samba配置文件添加共享示例】:
[public]
path=/data/public
public=yes
writable=yes
[caiwu-pub]
path=/data/caiwu-pub
valid users=@caiwu
write list=cw-jl
【ftp-samba-install腳本如下】:
#!/bin/bash
yum -y install vsftpd samba*
sed -i "s/anonymous_enable=YES/anonymous_enable=NO/" /etc/vsftpd/vsftpd.conf
echo "local_root=/data" >> /etc/vsftpd/vsftpd.conf
mkdir -p /data/public
mkdir -p /data/caiwu
mkdir -p /data/renshi
mkdir -p /data/yewu
mkdir -p /data/kaifa
mkdir -p /data/kefu
mkdir -p /data/caiwu-pub
mkdir -p /data/renshi-pub
mkdir -p /data/yewu-pub
mkdir -p /data/kaifa-pub
mkdir -p /data/kefu-pub
groupadd caiwu
groupadd renshi
groupadd yewu
groupadd kaifa
groupadd kefu
useradd -g caiwu -d /data/caiwu/cw-jl cw-jl
useradd -g renshi -d /data/renshi/rs-jl rs-jl
useradd -g yewu -d /data/yewu/yw-jl yw-jl
useradd -g kaifa -d /data/kaifa/kf-jl kf-jl
useradd -g kefu -d /data/kefu/kefu-jl kefu-jl
chown cw-jl:caiwu /data/caiwu-pub
chmod 750 /data/caiwu-pub
chown rs-jl:renshi /data/renshi-pub
chmod 750 /data/renshi-pub
chown yw-jl:yewu /data/yewu-pub
chmod 750 /data/yewu-pub
chown kf-jl:kaifa /data/kaifa-pub
chmod 750 /data/kaifa-pub
chown kefu-jl:kefu /data/kefu-pub
chmod 750 /data/kefu-pub
chown cw-jl:caiwu /data/caiwu
chmod 750 /data/caiwu
chown rs-jl:renshi /data/renshi
chmod 750 /data/renshi
chown yw-jl:yewu /data/yewu
chmod 750 /data/yewu
chown kf-jl:kaifa /data/kaifa
chmod 750 /data/kaifa
chown kefu-jl:kefu /data/kefu
chmod 750 /data/kefu
chmod 1777 /data/public
echo "cw-jl:123" | chpasswd &> /dev/null
echo "rs-jl:123" | chpasswd &> /dev/null
echo "yw-jl:123" | chpasswd &> /dev/null
echo "kf-jl:123" | chpasswd &> /dev/null
echo "kefu-jl:123" | chpasswd &> /dev/null
echo "
[public]
path=/data/public
public=yes
writable=yes
[caiwu-pub]
path=/data/caiwu-pub
valid users=@caiwu
write list=cw-jl
[renshi-pub]
path=/data/renshi-pub
valid users=@renshi
write list=rs-jl
[yewu-pub]
path=/data/yewu-pub
valid users=@yewu
write list=yw-jl
[kaifa-pub]
path=/data/kaifa-pub
valid users=@kaifa
write list=kf-jl
[kefu-pub]
path=/data/kefu-pub
valid users=@kefu
write list=kefu-jl
" >> /etc/samba/smb.conf
service vsftpd start
service smb start
【ftp-samba-useradd腳本如下】:
#!/bin/bash
read -p "please input username:" username
read -p "please input bumen:" bumen
useradd -g $bumen -d /data/$bumen/$username $username
passwd $username
pdbedit -a $username