一:安裝ftp
一、檢查是否安裝了 ftp :(下圖是已安裝的效果,沒安裝沒有展現)linux
rpm -qa|grep vsftpdshell
二、安裝指令:(找一個 -y 指令)spa
yum install -y vsftpd.net
三、安裝完成後執行步驟1 就能夠看到ftp的版本信息rest
四、安裝完成後,啓動 FTP 服務:htm
service vsftpd startblog
五、啓動後,能夠看到系統已經監聽了 21 端口:ci
netstat -nltp | grep 21get
六、禁用匿名用戶it
vi /etc/vsftpd/vsftpd.conf (anonymous_enable=NO-----yes改成no)
七、保存後重啓
service vsftpd restart
二:建立用戶權限
一、建立用戶,並指定分組和主目錄(根據本身的需求設定參數)
useradd -d /opt/reconciliation -s /sbin/nologin -g ftpGroup -G root ftpUser
解析:
useradd 添加用戶ftpUser
-d 指定用戶根目錄爲/opt/reconciliation
-s 指定shell腳本爲/sbin/nologin,表示不容許shell登陸 (vi /etc/passwd 編輯用戶shell權限的地方)
-g 建立分組ftpGroup
-G 指定root分組
PS:建立有問題能夠刪除從新建立 userdel -r ftpUser
二、設定密碼
passwd ftpUser
三、設置訪問權限
chown ftpUser /opt/reconciliation/
更改ftp配置文件
修改配置文件/etc/vsftpd/vsftpd.conf並設定或刪掉註釋:
userlist_enable=NO
anonymous_enable=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
打開vi /etc/vsftpd/user_list並增長一行:
ftpUser
新建文件vi /etc/vsftpd/chroot_list並增長一行
ftpUser
四、配置用戶ftp權限及訪問路徑限制:
此時用usertest登錄系統ftp,是否能夠訪問?若是沒法訪問,說明咱們的ftp作了限制。打開/etc/vsftpd/vsftpd.conf,查找userlist_enable、userlist_deny、userlist_file。若是 userlist_deny=NO:只容許userlist_file文件中的用戶可訪問ftp;若是 userlist_deny=YES:userlist_file文件中列舉的用戶不能經過ftp訪問系統。userlist_enable是該功能的開 關。咱們的系統配置以下:
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
因此須要把用戶加入到/etc/vsftpd/user_list文件中,每一個用戶一行。
因爲該主目錄是mpsp用戶建的,usertest是mpsp組的成員,因此usertest默認具備增刪查改權限;而usertest做爲 mpsp組成員,對/home/mpsp下的全部路徑具備訪問權限(根據各目錄的權限設置,默認是這樣),登陸ftp後會發現,usertest用戶能夠 訪問其餘目錄,而且具備mpsp組的權限,這樣作是不容許的,咱們須要將usertest用戶的訪問範圍控制在其主目錄下。方法以下:
1. cd /etc/vsftpd 進入ftp配置文件目錄
2. vi vsftpd.conf編輯此文件,找到#chroot_list_enable=YES,刪除前面的那個#號,表示開啓此限制功能
找到chroot_list_file:chroot_list_file=/etc/vsftpd/chroot_list
3. 編輯chroot_list文件,加入你要限制的用戶名,一行一個用戶。
若是更新了vsftpd.conf,必定要重啓ftp,命令以下:
[root@linux sir001 root]# /etc/init.d/vsftpd restart
關閉vsftpd:[ 肯定]
爲vsftpd 啓動vsftpd:[ 肯定]
啓動FTP服務
service vsftpd start
還有兩個參數:stop、restart
三:權限設置
-rw-r--r--. 1 root root 1944 5月 18 17:21 initial-setup-ks.cfg
一共有10位數
其中: 最前面那個 - 表明的是類型,若是是目錄,最前面這個是d
中間那三個 rw- 表明的是全部者(user)
而後那三個 rw- 表明的是組羣(group)
最後那三個 r-- 表明的是其餘人(other)
而後我再解釋一下後面那9位數:
r 表示文件能夠被讀(read)
w 表示文件能夠被寫(write)
x 表示文件能夠被執行(若是它是程序的話)
- 表示相應的權限尚未被授予 如今該說說修改文件權限了:
在終端輸入:
chmod o+w xxx.xxx
表示給其餘人授予寫xxx.xxx這個文件的權限
chmod go-rw xxx.xxx
表示刪除xxx.xxx中組羣和其餘人的讀和寫的權限 其中:
u 表明全部者(user)
g 表明全部者所在的組羣(group)
o 表明其餘人,但不是u和g (other)
a 表明所有的人,也就是包括u,g和o
r 表示文件能夠被讀(read)
w 表示文件能夠被寫(write)
x 表示文件能夠被執行(若是它是程序的話)
其中:rwx也能夠用數字來代替
r ------------4
w ------------2
x ------------1
- ------------0 行動:
+ 表示添加權限
- 表示刪除權限
= 表示使之成爲惟一的權限 當你們都明白了上面的東西以後,那麼咱們常見的如下的一些權限就很容易都明白了:
-rw------- (600) 只有全部者纔有讀和寫的權限
-rw-r--r-- (644) 只有全部者纔有讀和寫的權限,組羣和其餘人只有讀的權限
-rwx------ (700) 只有全部者纔有讀,寫,執行的權限
-rwxr-xr-x (755) 只有全部者纔有讀,寫,執行的權限,組羣和其餘人只有讀和執行的權限
-rwx--x--x (711) 只有全部者纔有讀,寫,執行的權限,組羣和其餘人只有執行的權限
-rw-rw-rw- (666) 每一個人都有讀寫的權限
-rwxrwxrwx (777) 每一個人都有讀寫和執行的權限
舉例:
chmod 777 /home/user 注:僅把/home/user目錄的權限設置爲rwxrwxrwx
若是想把單獨的文件給對應的帳號設置權限,要用對應的帳戶去登陸linux去設置這個帳號例如:我想把 /home/user這個文件給admin權限只讀權限
就要用admin帳號登陸 設置 chmod 500 /home/user(4是隻讀,最好每次把1加上 也就是5)
特殊的時候:
setfacl -m u:admin:rwx /home/mengniu_xm/mengniu_r 用的這個命令 給單獨用戶 單獨文件設置權限(mengniu_r給admin帳號rwx權限)
setfacl -R -m u:admin:rwx /home/mengniu_xm/mengniu_wr(加個-R 實際過程當中出現admin帳號不能刪除文件的狀況 加上這個就能夠了)
引用:
https://www.linuxidc.com/Linux/2017-11/148518.htm ---安裝ftp及添加用戶
https://blog.csdn.net/xufei512/article/details/52037497 ---添加用戶
https://blog.csdn.net/dczjzz/article/details/52041782 ---權限設置
https://blog.csdn.net/alvin_lam/article/details/51567979 ---setfacl 權限舉例
https://blog.csdn.net/qq_38350907/article/details/78852557---防火牆端口配置21