搭建FTP服務

搭建FTP服務安全


第一節 安裝FTP文件傳輸服務bash


FTP服務安裝包: vsftpd-3.0.2-9.el7.x86_64.rpm服務器


[root@localhost Data]# rpm -ivh vsftpd-3.0.2-9.el7.x86_64.rpmsession

wKiom1YMrrXgRuSzAAJ24YadtSI511.jpg


第二節 啓動FTP服務ide


  • 查看vsftpd狀態    service vsftpd statusspa

  • 啓動vsftpd        service vsftpd start3d

  • 中止vsftpd        service vsftpd stoprest

  • 重啓vsftpd        service vsftpd restart日誌

wKioL1YMr5zi06nzAAJqMpV_WnA349.jpg 


第三節 匿名用戶登陸FTPorm


在安裝vsftpd服務時,系統默認建立一個匿名用戶(anonymous),其主目錄爲/var/ftp。

wKioL1YMsp7hkiutAACWdkclnmI179.jpg

訪問ftp服務器:

ftp://192.168.88.8

用戶名:anonymous

密  碼:任意字符


第四節 配置文件管理


[root@localhost ~]# rpm -ql vsftpd


/etc/pam.d/vsftpd                    密鑰庫文件

/etc/vsftpd                          存放主配置文件目錄

/etc/vsftpd/ftpusers                 存放被拒絕訪問ftp的用戶列表

/etc/vsftpd/user_list                容許訪問FTP服務用戶列表文件

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

/var/ftp                             匿名用戶主目錄

.

.

.


FTP配置文件解析


文件名
做用
ftpusers 禁止使用vsftpd的用戶列表文件
user_list

禁止或容許使用vsftpd的用戶列表文件。


一、禁止狀況:---這個文件中指定的用戶缺省狀況 或 userlist_deny=YES時,user_list裏的用戶不能訪問FTP服務器。

二、容許user_list裏的用戶訪問FTP服務的狀況:---在設置了userlist_deny=NO,僅容許user_list中指定的用戶訪問FTP服務器。

vsftpd_conf_migrate.sh vsftpd操做的一些變量和設置腳本
vsftpd.conf FTP主配置文件

anonymous_enable=YES

是否容許匿名登陸FTP服務器,默認設置爲YES容許
no_anon_password=YES 容許匿名用戶登陸FTP服務不須要密碼

anon_upload_enable=YES

是否容許匿名用戶上傳文件,須將全局的write_enable=YES。默認爲YES
anon_mkdir_write_enable=YES  是否容許匿名用戶建立目錄

local_enable=YE

容許本地用戶訪問FTP服務器

write_enable=YES

是否容許本地用戶對FTP服務器文件具備寫權限,默認設置爲YES容許
local_umask=022 本地用戶的文件掩碼爲缺省022,即本地用戶的文件權限爲755 drwxr-xr-x

dirmessage_enable=YES

此文件保存自定義的歡迎信息,由用戶本身創建

xferlog_enable=YES

是否讓系統自動維護上傳和下載的日誌文件

默認狀況該日誌文件爲/var/log/vsftpd.log,也能夠經過下面的xferlog_file選項對其進行設定

/var/log/vsftpd.log 設定系統維護記錄FTP服務器上傳和下載狀況的日誌文件
ftpd_banner=Welcome to blah FTP service. 登陸FTP服務器時顯示的歡迎信息
connect_from_port_20=YES

設定FTP服務器將啓用FTP數據端口的鏈接請求

ftp-data數據傳輸端口爲2021爲鏈接控制端口

chown_uploads=YES

設定是否容許改變上傳文件的屬主,與下面一個設定項配合使用

注意,不推薦使用root用戶上傳文件

chown_username=whoever

設置想要改變的上傳文件的屬主,若是須要,則輸入一個系統用戶名

能夠把上傳的文件都改爲root屬主。whoever:任何人

idle_session_timeout=300

設置數據傳輸中斷間隔時間,此語句表示空閒的用戶會話中斷時間爲300

即當數據傳輸結束後,用戶鏈接FTP服務器的時間不該超過300秒。能夠根據實際狀況對該值進行修改

data_connection_timeout=120

 設置數據鏈接超時時間爲120秒,可根據實際狀況對其個修改

ascii_upload_enable=YES

ascii_download_enable=YES

是否以ASCII方式傳輸數據。默認狀況下,服務器會忽略ASCII方式的請求。

啓用此選項將容許服務器以ASCII方式傳輸數據
不過,這樣可能會致使由"SIZE /big/file"方式引發的DoS***
deny_email_enable=YES
黑名單設置。若是很討厭某些email address,就可使用此設定來取消他的登陸權限
能夠將某些特殊的email address抵擋住。
banned_email_file=/etc/vsftpd/banned_emails 當上面的deny_email_enable=YES時,能夠利用這個設定項來規定哪些郵件地址不可登陸vsftpd服務器
#
此文件需用戶本身建立,一行一個email address便可

chroot_list_file=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 用戶登陸FTP服務器後是否具備訪問本身目錄之外的其餘文件的權限
#
設置爲YES時,用戶被鎖定在本身的home目錄中,vsftpd將在下面chroot_list_file選項值的位置尋找chroot_list文件
#
必須與下面的設置項配合
#chroot_list_enable=YES
#
被列入此文件的用戶,在登陸後將不能切換到本身目錄之外的其餘目錄
#
從而有利於FTP服務器的安全管理和隱私保護。此文件需本身創建
#chroot_list_file=/etc/vsftpd/chroot_list
listen=YES  是否容許監聽。
若是設置爲YES,則vsftpd將以獨立模式運行,由vsftpd本身監聽和處理IPv4端口的鏈接請求
ls_recurse_enable=YES 是否容許遞歸查詢。默認爲關閉,以防止遠程用戶形成過量的I/O
listen_ipv6=YES 設定是否支持IPV6。如要同時監聽IPv4IPv6端口,
則必須運行兩套vsftpd,採用兩套配置文件
#
同時確保其中有一個監聽選項是被註釋掉的
userlist_enable=YES

容許user_list文件中的用戶容許登陸FTP服務器


userlist_enable=YES必須和userlist_deny=NO同時配合使用,才能容許用戶登陸到FTP服務器


#
而若是默認狀況 或 同時設置了userlist_deny=YES,則user_list文件中的用戶將不容許登陸FTP服務器,甚至連輸入密碼提示信息都沒有。
local_root= 設置FTP服務主目錄








第五節 配置FTP服務器高可用


根據公司部門職能分配,建立FTP服務。

要求:

一、建立一個公共文件夾,公司全體員工均可以訪問公共文件夾。

二、根據部門安排,分別建立各個部門共享文件夾,只能同一部門的員工本身訪問本身部門的共享文件夾,其餘部門員工不能訪問。

三、禁止匿名用戶訪問。


實施步驟:

一、建立共享目錄

    建立公共共享文件夾--Public

    建立各部門共享文件夾--IT、Admin、Finance、Sale

    [root@localhost Data]# mkdir Public IT Admin Finance Sale

    wKioL1YM0_XQ_-kNAAGYN3gXpaU028.jpg

二、修改目錄權限

    [root@localhost Data]#chmod 770 Public

    [root@localhost Data]#chmod 770 Admin

    [root@localhost Data]#chmod 770 Finance

    [root@localhost Data]#chmod 770 IT

    [root@localhost Data]#chmod 770 Sale

    wKiom1YM3jDitCLAAANl9lZDVX8255.jpg


三、建立用戶及用戶組

    it--ituser

    admin--adminuser

    finance--financeuser

    sale--saleuser

    

    [root@localhost Data]#groupadd public

    [root@localhost Data]#groupadd it

    [root@localhost Data]#groupadd admin

    [root@localhost Data]#groupadd finance

    [root@localhost Data]#groupadd sale


    [root@localhost Data]#useradd -G public,it ituser

    [root@localhost Data]#useradd -G public,admin adminuser

    [root@localhost Data]#useradd -G public,finance financeuser

    [root@localhost Data]#useradd -G public,sale saleuser


    wKiom1YM1RbjmVWAAAHtpWTDi-A996.jpg

四、爲用戶建立密碼

    wKiom1YM1bCxYPXrAALQBPEEqmc721.jpg

五、設置虛擬用戶

    [root@localhost ~]# vi /etc/passwd    

    wKioL1YM1tbS7RdDAADx1kThUY0540.jpg

    進入用戶配置文件,把每一個用戶的執行文件/bin/bash/修改成/sbin/nologin修改成以下:

    wKiom1YM85HiGkNqAAEOtdTrVeE652.jpg

    

    [root@localhost ~]# vi /etc/group

    wKiom1YM2FHBqXykAAEfLHXvBnc462.jpg

    刪除建立用戶時自動建立的組名

    wKioL1YM2O_xsTeOAADIRIP94pY995.jpg

六、修改目錄全部者及組

    wKiom1YNHAfAm6_SAAISrbaXHmw054.jpg

    wKioL1YNHCHiab1lAAFk1sbVy64365.jpg

七、添加容許訪問FTP服務的用戶到user_list配置文件裏

    [root@localhost vsftpd]# vi user_list

    wKiom1YNIhLz5spOAAH2Hp6orwY299.jpg  

八、修改主配置文件

    anonymous_enable=NO         # 禁止匿名賬號登陸

    local_root=/Data            # 設置FTP主目錄 

    userlist_deny=NO            # 容許user_list裏的用戶登陸FTP服務          

    userlist_enable=YES         # 容許user_list裏的用戶登陸FTP服務

其餘設置保持默認便可。

    

九、啓動vsftpd

    wKioL1YM2viwD_RdAACCuq-L2bw795.jpg

十、訪問FTP

    wKiom1YNInnh-qnWAAJ5WEkPXm4536.jpg


    wKiom1YNIqvSIXjBAAEfPDY814M673.jpg

相關文章
相關標籤/搜索