Linux的FTP服務管理
阿新 • • 發佈:2018-11-22
一、FTP服務端的搭建立
1.安裝並開啟ftp服務
[[email protected] Desktop]# yum install vsftpd.x86_64
[[email protected] ~]# systemctl status vsftpd ● vsftpd.service - Vsftpd ftp daemon Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled) Active: inactive (dead) [
[email protected] ~]# systemctl restart vsftpd [[email protected] ~]# systemctl status vsftpd ● vsftpd.service - Vsftpd ftp daemon Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled) Active: active (running) since Thu 2018-11-01 00:18:22 CST; 2s ago Process: 2983 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS) Main PID: 2989 (vsftpd) CGroup: /system.slice/vsftpd.service └─2989 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf Nov 01 00:18:21 rhel7.2 systemd[1]: Starting Vsftpd ftp daemon... Nov 01 00:18:22 rhel7.2 systemd[1]: Started Vsftpd ftp daemon.2.配置火牆策略
[[email protected] Desktop]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-10-31 20:33:26 CST; 3h 33min ago Main PID: 661 (firewalld) CGroup: /system.slice/firewalld.service └─661 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid Oct 31 20:33:24 rhel7.2 systemd[1]: Starting firewalld - dynamic firewall daemon... Oct 31 20:33:26 rhel7.2 systemd[1]: Started firewalld - dynamic firewall daemon. [
[email protected] Desktop]# firewall-cmd --permanent --add-service=ftp success [[email protected] Desktop]# firewall-cmd --reload success [[email protected] Desktop]# firewall-cmd --list-all public (default, active) interfaces: eth0 sources: services: dhcpv6-client ftp ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules:[[email protected] Desktop]# getenforce Enforcing [[email protected] Desktop]# vim /etc/sysconfig/selinux [[email protected] Desktop]# reboot
服務端搭建完成
3.客戶端測試
[[email protected] ~]$ lftp 172.25.254.111 lftp 172.25.254.111:~> ls drwxr-xr-x 2 0 0 6 Aug 03 2015 pub
二、通過ftp配置檔案來管理使用者
1.匿名使用者的相關設定
anon_upload_enable=YES ##允許匿名使用者可以上傳 anon_root=/linux ##更改匿名用家目錄 anon_umask=022 ##更改匿名使用者上傳檔案預設許可權(原始預設許可權為600) anon_world_readable_only=NO##允許匿名使用者下載 anon_mkdir_write_enable=YES##允許匿名使用者建立目錄 anon_other_write_enable=YES##允許匿名使用者刪除 anon_max_rate=102400 ##限制速度
客戶端測試
服務端設定
客戶端測試
注意:已經修改了配置檔案,但是為什麼還是會報錯,是因為目錄許可權不夠,新建了一個目錄更改目錄組名,並給與組可寫許可權g+x,才能完成許可權的賦予。
服務端端修改
客戶端測試
對預設情況下不進行使用者登陸數限制和速率限制會、一般在實踐應用中,我們會對其作出修改
在配置檔案中新增
最大上傳速率 anon_max_rate=102400 最大連結數 max_clients=1 表示最多有1個可以連線
三、ftp服務白名單的建立
建立白名單的機制是將臨時黑名單關閉,及邏輯為雙重否定為肯定。
白名單建立完成,僅user_list檔案下所有使用者可以登陸
四、FTP的虛擬使用者搭建
1.建立虛擬使用者
[[email protected] ~]# cd /etc/vsftpd/ [[email protected] vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh [[email protected] vsftpd]# vim xuni [[email protected] vsftpd]# chmod 600 xuni [[email protected] vsftpd]# ll xuni -rw------- 1 root root 36 Nov 7 18:18 xuni [[email protected] vsftpd]# db_load -T -t hash -f xuni xuni.db [[email protected] vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh xuni xuni.db
2.建立認證目錄和修改加配置檔案
3.客戶端登陸測試
五、指定虛擬使用者的家目錄
1.搭建實驗環境
2.修改配置檔案
3.使用者測試
六、虛擬使用者的單個許可權設定
1.環境搭建
2.測試
3.給虛擬使用者指定登陸使用者