今天看到51cto正在搞linux shell 指令碼大賽,特地將自己的**作發出來,希望能夠得到分享。
這裡說一下這個指令碼的功能,這個指令碼主要用來實現vsftpd伺服器的基礎管理,主要用於方便運維管理。**不是很美,還請各位多多指教。
這個**主要基於本地使用者管理、有需求基於ldap認證管理的朋友,可以聯絡我,ldap認證的功能上將更強大了些。
管理介面:
**部份:
read -p "請選擇您要做的操作:" caozuo
case $caozuo in
0) read -p "請輸入您要修改密碼的使用者名稱: " selectuser
while [ ! "$selectuser" ] || [ ! `more /etc/vsftpd/chroot_list | grep -w $selectuser` ]
do
read -p "對不起,您輸入的使用者名稱$selectuser不存在,請重新輸入要查詢的使用者名稱,退出請按q鍵: " selectuser
if [ "$selectuser" ] && [ "$selectuser" == "q" ];then
exit
fi
done
passwd $selectuser
echo "記錄: 管理員$adminroot於$timedate1修改使用者$selectuser密碼" >> /opt/vsftp/adminlog/"$adminroot""$timedate2"
read -p "您已經成功修改使用者$selectuser的密碼,按回車鍵繼續操作" var
;;
1) read -p "請輸入您要查詢的使用者名稱: " selectuser
while [ ! "$selectuser" ] || [ ! `more /etc/vsftpd/chroot_list | grep -w $selectuser` ]
do
echo "記錄: 管理員$adminroot於$timedate1查詢使用者$selectuser" >> /opt/vsftp/adminlog/"$adminroot""$timedate2"
read -p "對不起,查詢的使用者名稱$selectuser不存在,請重新輸入要查詢的使用者名稱,退出請按q鍵: " selectuser
if [ "$selectuser" ] && [ "$selectuser" == "q" ];then
exit
fi
done
echo "記錄: 管理員$adminroot於$timedate1查詢使用者$selectuser" >> /opt/vsftp/adminlog/"$adminroot""$timedate2"
read -p "您查詢的使用者$selectuser為ftp使用者,按回車鍵繼續" var
;;
2) read -p "請輸入您需要新增的使用者名稱: " adduser
while [ ! "$adduser" ] || ( [ "$adduser" ] && [ `more /etc/vsftpd/chroot_list | grep -w $adduser` ] )
do
read -p "對不起,您的操作有誤,使用者名稱不能為空,或您新增的使用者已經存在,請重新輸入要查詢的使用者名稱,退出請按q鍵: " adduser
if [ "$adduser" ] && [ "$adduser" == "q" ];then
exit
fi
done
useradd $adduser -d /opt/vsftp/$adduser -s /sbin/nologin
chmod -r 777 /opt/vsftp/$adduser
echo $adduser@123 | passwd --stdin $adduser
echo "$adduser" >> /etc/vsftpd/chroot_list
setquota -u $adduser 512000 614400 0 0 /opt
cp /etc/vsftpd/vconf/moban /etc/vsftpd/vconf/$adduser
echo "記錄: 管理員$adminroot於$timedate1新增使用者$adduser" >> /opt/vsftp/adminlog/"$adminroot""$timedate2"
read -p "您新增使用者$adduser成功,按回車鍵繼續" var
;;
3) read -p "請輸入您需要刪除的使用者名稱: " deluser
while [ ! "$deluser" ] || [ ! `more /etc/vsftpd/chroot_list | grep -w $deluser` ]
do
read -p "對不起,您輸入的使用者名稱$deluser不存在,請重新輸入要刪除的使用者名稱,退出請按q鍵: " deluser
if [ "$deluser" ] && [ "$deluser" == "q" ];then
exit
fi
done
userdel $deluser
rm -rf /opt/vsftp/$deluser/.gnome2
rm -rf /opt/vsftp/$deluser/.bashrc
rm -rf /opt/vsftp/$deluser/.bash_profile
rm -rf /opt/vsftp/$deluser/.bash_logout
rm -rf /etc/vsftpd/vconf/$deluser
說明:
由於**篇幅太大,這裡貼出前10項功能**,希望能夠給有需求的朋友能起到乙個拋磚引玉的作用。
Linux運維學習之一 ftp伺服器搭建
rsvnc協議 遠端同步協議 ftp協議 檔案傳輸協議 基於tcp的套接子的監聽於21.此協議在使用過程中建立兩個通道,乙個為命令通道,乙個偽資料通道。命令通道從建立一直道結束,資料通道會在傳輸前建立,傳輸完畢後斷開,下次在建立與斷開。客戶端 在命令通道的埠上 1找到乙個空閒的埠,鏈結伺服器端的隨機...
Linux運維 有關伺服器
一 什麼是伺服器?提供計算服務的裝置,和電腦幾乎相同。由於伺服器需要響應服務請求,並進行處理,因此一般來說伺服器應具備承擔服務並且保障服務的能力。根據伺服器的網路規模 伺服器檔次,可以將伺服器分為三種級別 入門級伺服器 部門級伺服器和企業級伺服器 級別從低到高 在網路環境下,根據伺服器提供的服務型別...
伺服器運維
運維 網際網路運維,通常屬於技術部門,與研發 測試 系統管理同為網際網路產品技術支撐的4大部門,這個劃分在國內和國外以及大小公司間都會多少有一些不同。產品的整個生命週期裡運維的職責重要而廣泛,但運維工程師們的職責不僅限於這部分工作,還需要總結工作中遇到的問題,抽取出相關的技術方向 研發相關的工具和平...