FTP伺服器管理 Linux運維之道之指令碼案例

2021-09-04 01:56:31 字數 3076 閱讀 2044

今天看到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大部門,這個劃分在國內和國外以及大小公司間都會多少有一些不同。產品的整個生命週期裡運維的職責重要而廣泛,但運維工程師們的職責不僅限於這部分工作,還需要總結工作中遇到的問題,抽取出相關的技術方向 研發相關的工具和平...