linux系統搭建ftp服務器及創建用戶


linux 系統下搭建ftp服務器

linux 系統下搭建ftp服務器一點都不難,初次進行配置的時候花了很多時間進行linux命令掃盲,故寫下這篇博客。

環境:
window操作系統中安裝SecureCRT 和 FlashFXP 軟件
服務器端的操作系統為centos7.3
在客戶端 使用SecureCRT 軟件 root 帳號遠程登錄服務器端

重點記錄:

    相關用戶的創建、修改
    文件的權限控制
    ftp登錄用戶白名單
    根目錄切換

ftp是什么

    FTP是 File Transfer Protocol 文件傳輸協議的英文名稱,用於在Internet上控制文件的雙向傳輸. 同時它也是一個應用程序.一般的Linux系統默認帶有ftp軟件或者是vsftpd

搭建ftp服務器目的

從window系統上傳程序文件到linux系統的服務器里
檢查安裝vsftpd軟件

要使用到的linux命令:

    “|”: 管道,把前一個命令的結果當成后一個命令的輸入

    rpm: RPM Package Manager RPM軟件包管理器 ,和 RedHat有關,

    grep: Globally search a Regular Expression and Print 全局匹配正則搜索並打印

    yum: Yellow dog Updater,Modified,大黃更新與修改,基於rpm 的軟件包管理器

查看所有的安裝的軟件包 並在結果中查找包含vsftp 的文件

rpm -qa | grep vsftpd

    1

如果沒有裝則使用yum命令安裝

yum -y install vsftpd

    1

創建用戶

使用useradd命令:
useradd username ,默認在/home文件夾下創建一個和username一樣名稱的文件作為該用戶所擁有的文件

useradd xiao   
passwd xiao   #(回車)給用戶xiao設置登錄密碼

    1
    2

創建用戶並指定用戶目錄

在/var 目錄下創建一個 www 文件夾,www文件夾中創建一個site文件夾一個da文件夾

cd /var
mkdir www
cd www
mkdir site
mkdir da

    1
    2
    3
    4
    5

創建用戶da並指定用戶目錄為/var/www/da

useradd -d /var/www/da da
passwd da

    1
    2

修改xiao用戶的用戶目錄為/var/www/site

usermod -d /var/www/site xiao

    1

備注:如果修改xiao的操作失敗提示有相關進程在使用這個用戶,則先殺死這些進程后再修改

  ps -u xiao | awk '{print $1}' | grep -vi pid | xargs kill -9

    1

查看新創建的用戶的信息

tail:默認顯示指定文件的末尾10行

tail /etc/passwd

   

 

 



這里寫圖片描述

    /etc/passwd文件存放的是用戶的信息,由6個分號組成的7個信息,解釋如下
    (1):用戶名。
    (2):密碼(已經加密)
    (3):UID(用戶標識),操作系統自己用的
    (4):GID組標識。
    (5):用戶全名或本地帳號
    (6):開始目錄
    (7):登錄使用的Shell,就是對登錄命令進行解析的工具。

配置/etc/vsftpd/vsftpd.conf文件

查看下該文件里有些啥

cat /etc/vsftpd/vsftpd.conf

    1

切換當前工作目錄到/etc/vsftpd

cd /etc/vsftpd

    1

啟用可以登錄ftp的用戶白名單配置

vi vsftpd.conf

    1

輸入:/userlist 在vsftpd.conf文件中查找userlist 相關配置 .
按下i鍵進入insert模式,
將按下圖配置 三個選項,則user_list文件為ftp用戶白名單
按下esc鍵退出輸入模式進入命令模式
輸入:wq 保存並退出
這里寫圖片描述

userlist_enable=YES     #啟動用戶列表
userlist_deny=NO        #決定是否對用戶列表的用戶拒絕訪問ftp

userlist_file=/etc/vsftpd/user_list

    1
    2
    3
    4

在user_list中寫入 da和xiao這個兩個用戶

vi user_list

    1

按下i鍵進入insert模式,
一行一個用戶名,輸入 da 和xiao
按下esc鍵退出輸入模式進入命令模式
輸入:wq 保存並退出

 

 


查看vsftpd 服務的運行狀態

systemctl status vsftpd

    1

如果最后一條狀態是stoped則啟動vsftpd

systemctl start vsftpd

    1

如果最后一條狀態是started則重啟vsftpd

systemctl restart vsftpd

    1

在window系統中使用FlashFXP 客戶端登錄

使用da 和xiao 用戶分別登錄,發現在客戶端可以瀏覽整個linux系統的文件夾
繼續配置vsftpd.conf 文件,
配置vsftpd.conf 鎖定根目錄

local_root= /var/www        #本地用戶登錄后自動轉到的ftp根目錄
chroot_local_user=YES       #將所有用戶限定在指定的主目錄內
chroot_list_enable=NO       #不啟用列外的用戶列表
chroot_list_file=/etc/vsftpd/chroot_list  #指定列外的用戶列表文件

    1
    2
    3
    4

配置完之后重啟vsftpd服務
使用FlashFXP 客戶端登錄並創建文件夾

使用da用戶名登錄,在da文件夾中創建一個新的文件夾test
這里寫圖片描述

 

 


結果失敗
配置文件夾權限

切換工作目錄到/var/www

cd /var/www

查看www文件夾中所包含的文件的信息

ll

   

 

 



這里寫圖片描述
上圖顯示的信息為,
1. da和site文件夾屬於root用戶,屬於root用戶組, 因為是root用戶創建的文件夾
2. root用戶可以對da和site文件夾進行r(讀),w(寫),x(執行)等操作
3. root用戶組內的用戶可以對da和site文件夾進行r(讀),x(執行)等操作
4. 其他用戶可以對da和site文件夾進行r(讀),x(執行)等操作.

da 和 xiao 這兩個用戶屬於其他用戶 故不能執行創建文件夾(寫)的操作

改文件的權限,將da的擁有者改為da,site的擁有者改為xiao

chown da:da da

   

 

 



這里寫圖片描述

chown xiao:xiao site

   

 

 



這里寫圖片描述

這個時候 他們可以在各自擁有的文件夾這創建文件 ,但不可以到對方的文件夾中創建文件

修改da用戶的所屬用戶組,並修改site文件夾的權限
把da用戶納入 xiao的用戶組

usermod -g xiao da

   

 

 



這里寫圖片描述
如圖所示:da用戶的用戶組id值和xiao的用戶組id值變得一樣了

修改site文件夾的權限,允許同一個用戶組的用戶擁有rwx權限

chmod 775 site

    這里寫圖片描述

這里寫圖片描述
此時da 用戶可以在site文件夾中創建新的文件夾
權限值的解讀

文件夾權限:
r==>可讀 w==>可寫 x==>可執行
r=4 w=2 x=1
777 代表 rwxr-rwx-rwx 所有用戶都可讀可寫可執行。  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM