欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ubuntu1804搭建FTP服務(wù)器的詳細(xì)教程

 更新時(shí)間:2022年12月09日 14:35:39   作者:背對(duì)背依靠  
這篇文章主要介紹了ubuntu1804搭建FTP服務(wù)器的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

搭建FTP服務(wù)器

FTP的工作原理:

FTP:File Transfer Protocol ,文件傳輸協(xié)議。屬于NAS存儲(chǔ)的一種協(xié)議,基于CS結(jié)構(gòu)。

ftp采用的是雙端口模式,分為命令端口和數(shù)據(jù)端口,命令端口對(duì)應(yīng)命令通道,數(shù)據(jù)端口對(duì)應(yīng)數(shù)據(jù)通道。

命令端口:FTP服務(wù)器的命令端口默認(rèn)是tcp/21

數(shù)據(jù)端口:隨機(jī)

兩種工作模式:主動(dòng)模式和被動(dòng)模式

主動(dòng)模式:FTP服務(wù)器主動(dòng)連接客戶端,這個(gè)時(shí)候FTP服務(wù)器的數(shù)據(jù)端口使用的是20端口。

被動(dòng)模式:客戶端主動(dòng)連接FTP服務(wù)器,這時(shí)候FTP服務(wù)器的數(shù)據(jù)端口是隨機(jī)的。

FTP的工作過(guò)程:

1.服務(wù)端開啟對(duì)21端口的監(jiān)聽(tīng)。
2.客戶端發(fā)起對(duì)服務(wù)端的連接請(qǐng)求,通過(guò)服務(wù)器的21端口連接到服務(wù)器。此時(shí)建立起了命令通道,命令通道用于傳輸和通信相關(guān)的一些指令。
3.建立數(shù)據(jù)通道
  如果是主動(dòng)模式:服務(wù)端會(huì)使用20端口主動(dòng)連客戶端的一個(gè)隨機(jī)端口。
  如果是被動(dòng)模式:客戶端使用一個(gè)隨機(jī)端口連接服務(wù)端的一個(gè)隨機(jī)端口
4.使用數(shù)據(jù)通道進(jìn)行數(shù)據(jù)的傳輸。

探測(cè)端口是否打開的方法:

telnet工具:

例如:查看22端口是否開啟

#格式:telnet host port #如果能響應(yīng)則端口就是打開的

#如果telnet能響應(yīng)則端口就是打開的
[root@CentOS8 ~]# telnet 10.0.0.12 22
Trying 10.0.0.12...
Connected to 10.0.0.12.
Escape character is '^]'.
SSH-2.0-OpenSSH_8.0

nmap工具:

[root@HAproxy ~]# nmap 10.0.0.66 -p 21
Starting Nmap 7.70 ( https://nmap.org ) at 2022-12-08 13:37 CST
Nmap scan report for 10.0.0.66
Host is up (0.00033s latency).

PORT   STATE SERVICE
21/tcp open  ftp
MAC Address: 00:0C:29:29:03:AF (VMware)

Nmap done: 1 IP address (1 host up) scanned in 0.53 seconds

實(shí)現(xiàn)FTP的相關(guān)軟件:

windows中的相關(guān)軟件:Filezilla、IIS

Filezilla官網(wǎng): https://filezilla-project.org/index.php

linux中的相關(guān)軟件:

服務(wù)端:vsftpd、Wu-ftpd等

vsftpd官網(wǎng): https://security.appspot.com/vsftpd.html

客戶端:ftp、wget、curl等

VSFTP

性能好、下載速度快、單機(jī)可支持15k并發(fā)量

VSFTP的安裝和配置:

ubuntu安裝vsftpd:

[root@HAproxy vsftpd]# apt install vsftpd -y

# 說(shuō)明:vsftpd搭建的ftp服務(wù)器默認(rèn)只允許匿名用戶連接 匿名用戶包括:ftp、anonmous。

# ubuntu1804 默認(rèn)不允許匿名

訪問(wèn)ftp服務(wù)器的三種方式:

1. 匿名賬號(hào)訪問(wèn):ftp或anonymous 
2. FTP服務(wù)器的本地賬號(hào)訪問(wèn):例如linux里面的root等用戶賬號(hào)
3. 虛擬賬號(hào)訪問(wèn):
    虛擬賬號(hào):操作系統(tǒng)中不存在的賬號(hào),專用于對(duì)應(yīng)服務(wù)的賬號(hào)。
    例如登錄mysql使用的賬號(hào)也是虛擬賬號(hào)

VSFTPD的相關(guān)配置

FTP服務(wù)器的基礎(chǔ)配置:

配置文件格式:option=value   # 注意:= 前后不要有空格

端口修改:

局域網(wǎng)內(nèi)使用,端口一般不用修改

FTP服務(wù)器默認(rèn)端口修改:

# 默認(rèn)客戶端發(fā)起對(duì)服務(wù)端的連接請(qǐng)求,通過(guò)服務(wù)器的21端口連接到服務(wù)器
listen_port=2121   # 指定ftp服務(wù)器的端口是2121

FTP服務(wù)器主動(dòng)模式數(shù)據(jù)通道端口修改:

# 更改數(shù)據(jù)通道主動(dòng)模式服務(wù)端的端口:一般不用修改
connect_from_port_20=YES
ftp_data_port=20 (默認(rèn))  # 指定主動(dòng)模式的端口

FTP服務(wù)器被動(dòng)模式的端口范圍:

# 設(shè)置服務(wù)端被動(dòng)模式的端口范圍:  被動(dòng)模式:客戶端主動(dòng)連服務(wù)端 服務(wù)器端的數(shù)據(jù)通道端口隨機(jī)
# 服務(wù)端被動(dòng)模式的端口范圍一般不用修改
pasv_min_port=6000   # 0為隨機(jī)分配,端口范圍會(huì)影響客戶端的并發(fā)數(shù)
pasv_max_port=6010   # 表示被動(dòng)模式端口范圍是6000-6010 一共11個(gè)端口可用

注意:

# 使用linux的客戶端工具連接ftp服務(wù)端時(shí):客戶端默認(rèn)使用被動(dòng)模式  例如:ftp

# 使用windows的客戶端工具連接ftp服務(wù)端時(shí):客戶端默認(rèn)使用主動(dòng)模式 例如:Filezilla

FTP服務(wù)器的時(shí)間設(shè)置:

# 設(shè)置ftp服務(wù)器的時(shí)間為本地時(shí)間:(一般不用修改。有些客戶端能自動(dòng)校準(zhǔn)時(shí)間)

use_localtime=YES   # 使用當(dāng)?shù)貢r(shí)間(默認(rèn)為NO,使用GMT)

FTP服務(wù)器匿名用戶的相關(guān)設(shè)置

FTP服務(wù)器默認(rèn)只允許匿名用戶登錄,匿名用戶包括ftp或anonymous。

匿名用戶:在客戶機(jī)上不存在的用戶叫做匿名用戶,匿名用戶是單獨(dú)為特定服務(wù)效力的用戶。例如FTP服務(wù)器的ftp用戶,mysql的root用戶等都是匿名用戶。

# 設(shè)置允許匿名用戶登錄 centos7默認(rèn)就允許匿名用戶登錄
anonymous_enable=YES     # 支持匿名用戶,默認(rèn)不允許匿名

# 設(shè)置允許匿名用戶使用空密碼登錄。
no_anon_password=YES     # 匿名用戶略過(guò)口令檢查 , 默認(rèn)NO,表示不輸入匿名用戶的密碼進(jìn)行登錄

匿名用戶權(quán)限設(shè)置

# 設(shè)置匿名用戶能上傳文件到FTP服務(wù)器
anon_upload_enable=YES     # 允許匿名上傳,注意:文件系統(tǒng)權(quán)限

# 設(shè)置匿名用戶能在FTP服務(wù)器上創(chuàng)建目錄文件
anon_mkdir_write_enable=YES  #允許匿名創(chuàng)建文件夾

說(shuō)明:

# 跨網(wǎng)絡(luò)傳輸數(shù)據(jù)需要注意的問(wèn)題:
# (1)服務(wù)自身:服務(wù)本身是否允許
# (2)文件系統(tǒng)的權(quán)限:是否具備文件系統(tǒng)的寫權(quán)限

例如:雖然開啟了允許匿名用戶上傳文件,但是文件對(duì)這個(gè)用戶沒(méi)有寫權(quán)限,照樣上傳不上去

說(shuō)明:設(shè)置文件權(quán)限的時(shí)候,不能給用戶的根目錄寫權(quán)限,只能給子目錄寫權(quán)限,否則連接的時(shí)候報(bào)如下錯(cuò)誤

500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Login failed.
421 Service not available, remote server has closed connection

匿名用戶上傳的文件屬性設(shè)置

# 設(shè)置匿名用戶的上傳文件的默認(rèn)的所有者和權(quán)限
chown_uploads=YES          # 默認(rèn)NO YES表示允許修改上傳文件的權(quán)限和所有者

chown_username=wang        # 指定匿名用戶上傳文件的文件所有者(如果不指定,文件的屬主就是這個(gè)匿名用戶)

chown_upload_mode=0644     # 指定上傳文件的文件權(quán)限

例如:不設(shè)置匿名用戶上傳的文件屬性

#文件的屬主就是這個(gè)匿名用戶
root@ubuntu1804:/srv/ftp/tmp# ll
-rw------- 1 ftp  ftp    1659 Dec  7 21:37  anaconda-ks.cfg 
-rw------- 1 ftp  ftp  258449 Dec  7 21:20 ''$'\265\347\327''?'$'\317''?.pdf'
-rw------- 1 ftp  ftp   77703 Dec  7 21:20  ZKZ_4224961_20201023210611127.pdf
-rw------- 1 ftp  ftp  247706 Dec  7 21:30 xxxxxx.pdf'

下載

默認(rèn)下載FTP服務(wù)器上的文件,只有所有人都具有讀權(quán)限的文件才能下載。

# 方法一:
anon_world_readable_only=NO # 只能下載全部讀的文件, 默認(rèn)YES,表示只有所有人都具有讀權(quán)限的文件才能下載

# 方法二:設(shè)置上傳文件的默認(rèn)權(quán)限
anon_umask=0333               # 指定匿名上傳文件的umask,默認(rèn)077,注意:0333中的0不能省略   (777-333=444)

刪除和修改

# 默認(rèn)情況是傳上去了就不能刪除了
anon_other_write_enable=YES   # 可刪除和修改上傳的文件,默認(rèn)NO ,改為yes

使用FTP服務(wù)器的系統(tǒng)用戶登錄FTP服務(wù)器相關(guān)設(shè)置

使用FTP服務(wù)器上面的系統(tǒng)用戶進(jìn)行登錄。

# 設(shè)置允許系統(tǒng)用戶登錄ftp服務(wù)器并上傳文件:
local_enable=YES   # 是否允許本地用戶登錄,YES表示允許

write_enable=YES   # 是否允許本地用戶上傳文件,YES表示允許

local_umask=022    # 指定系統(tǒng)用戶上傳文件的默認(rèn)權(quán)限對(duì)應(yīng)umask

系統(tǒng)用戶的相關(guān)權(quán)限設(shè)置

local_enable=YES   # 是否允許本地用戶登錄,YES表示允許

write_enable=YES   # 是否允許本地用戶上傳文件,YES表示允許

local_umask=022    # 指定系統(tǒng)用戶上傳文件的默認(rèn)權(quán)限對(duì)應(yīng)umask

FTP服務(wù)器的虛擬用戶設(shè)置

使用系統(tǒng)用戶登錄FTP服務(wù)器的時(shí)候,統(tǒng)一將所有系統(tǒng)用戶都映射成某一個(gè)guest用戶。

可以映射為任何一個(gè)用戶,但這個(gè)用戶必須要在FTP服務(wù)器上面存在才行。不一定是ftp這個(gè)用戶,可以映射成任何一個(gè)系統(tǒng)賬號(hào)。

guest_enable=YES     # 所有系統(tǒng)用戶都映射成某一個(gè)guest用戶

guest_username=ftp   # 配合上面選項(xiàng)才生效,指定guest用戶 

local_root=/ftproot  # 指定guest賬號(hào)登錄進(jìn)來(lái)映射的目錄 所有的操作系統(tǒng)用戶登錄進(jìn)來(lái)都是這個(gè)目錄(如果不指定就在guest_username這個(gè)用戶的家目錄里面)

#設(shè)置每個(gè)用戶都擁有獨(dú)立的配置
user_config_dir=/etc/vsftpd/conf.d/  # 每個(gè)用戶獨(dú)立的配置文件目錄  這里可以針對(duì)不同的用戶放不同的配置

禁錮設(shè)置

禁錮所有系統(tǒng)用戶在家目錄中,不能cd到其它目錄。因?yàn)槭褂孟到y(tǒng)用戶登錄以后,默認(rèn)能隨便切換到其它目錄里面去。

#不允許用戶隨便切換目錄,只能在家目錄中
chroot_local_user=YES #禁錮系統(tǒng)用戶,默認(rèn)NO,即不禁錮
# 此時(shí)ftp會(huì)把對(duì)應(yīng)用戶的家目錄作為根目錄,如果這個(gè)家目錄存在寫權(quán)限則登錄的時(shí)候會(huì)提示錯(cuò)誤相關(guān)錯(cuò)誤信息。

其它設(shè)置

設(shè)置ftp服務(wù)器的日志:

# vsftpd默認(rèn)使用的就是wu-ftp的日志格式,vsftpd日志:默認(rèn)不啟用。可以手動(dòng)啟用
# wu-ftp 日志:默認(rèn)啟用
xferlog_enable=YES             # 啟用記錄上傳下載日志,此為默認(rèn)值
xferlog_std_format=YES         # 使用wu-ftp日志格式,此為默認(rèn)值
xferlog_file=/var/log/xferlog  #可自動(dòng)生成, 此為默認(rèn)值
# vsftpd日志:默認(rèn)不啟用
dual_log_enable=YES                   # 使用vsftpd日志格式,默認(rèn)不啟用
vsftpd_log_file=/var/log/vsftpd.log   # 可自動(dòng)生成, 此為默認(rèn)值

設(shè)置用戶使用客戶端連接ftp服務(wù)器后的提示信息:

# 方法一:
ftpd_banner="welcome to mage ftp server"
# 方法二:將提示信息存放到一個(gè)文件中
banner_file=/etc/vsftpd/ftpbanner.txt

范例:ubuntu1804 配置匿名用戶訪問(wèn)FTP服務(wù)器

#1. 創(chuàng)建對(duì)應(yīng)的目錄
root@ubuntu1804:~# mkdir /data
root@ubuntu1804:~# mkdir /data/data
root@ubuntu1804:~# chmod 777 /data/data  #簡(jiǎn)單粗暴的方法
# root@ubuntu1804:~# setfacl -m u:ftp:rwx /data/data  # 給ftp用戶權(quán)限

#2. 修改配置文件
root@ubuntu1804:~# vim /etc/vsftpd.conf
anonymous_enable=YES
no_anon_password=YES

anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
anon_world_readable_only=NO
write_enable=yes
# allow_writeable_chroot=YES  #對(duì)根目錄的寫權(quán)限,匿名用戶不生效
chroot_local_user=YES
anon_root=/data  #指定匿名用戶登錄進(jìn)來(lái)后的根目錄,如果不加就在該用戶的家目錄

#3. 重啟服務(wù)
root@ubuntu1804:~# systemctl status vsftpd.service

#4. 測(cè)試
[root@HAproxy ~]# ftp 10.0.0.66  #連接到FTP服務(wù)器
Connected to 10.0.0.66 (10.0.0.66).
220 (vsFTPd 3.0.3)
Name (10.0.0.66:root): ftp
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd  
257 "/" is the current directory
ftp> ls
227 Entering Passive Mode (10,0,0,66,235,199).
150 Here comes the directory listing.
-rw-r--r--    1 0        0               0 Dec 08 10:33 12345
drwxr-xr-x    2 111      115          4096 Dec 08 10:38 data
226 Directory send OK.
ftp> cd data  #進(jìn)入數(shù)據(jù)目錄
250 Directory successfully changed.
ftp> !ls
12345  abc  anaconda-ks.cfg
ftp> put 12345  #上傳文件
local: 12345 remote: 12345
227 Entering Passive Mode (10,0,0,66,158,145).
150 Ok to send data.
226 Transfer complete.
ftp> ls
227 Entering Passive Mode (10,0,0,66,157,235).
150 Here comes the directory listing.
-rw-------    1 111      115             4 Dec 08 10:37 123
-rw-------    1 111      115             0 Dec 08 10:42 12345
226 Directory send OK.
ftp> get 123  #下載文件
local: 123 remote: 123
227 Entering Passive Mode (10,0,0,66,67,112).
150 Opening BINARY mode data connection for 123 (4 bytes).
226 Transfer complete.
4 bytes received in 2.1e-05 secs (190.48 Kbytes/sec)
ftp>

范例:設(shè)置允許FTP服務(wù)器的系統(tǒng)用戶來(lái)登錄ftp服務(wù)器

# 創(chuàng)建測(cè)試目錄
root@ubuntu1804:~# mkdir /ftproot
root@ubuntu1804:~# chmod 777 /ftproot
root@ubuntu1804:~# setfacl -m u:ftp:rwx /ftproot

#更改配置文件
local_enable=YES
write_enable=YES
local_umask=022
local_root=/ftproot
allow_writeable_chroot=YES  #允許對(duì)
chroot_local_user=YES

#測(cè)試
[root@HAproxy ~]# ftp 10.0.0.66
Connected to 10.0.0.66 (10.0.0.66).
220 (vsFTPd 3.0.3)
Name (10.0.0.66:root): tom  #如果這個(gè)用戶在FTP服務(wù)器上不存在,需要使用useradd -m xx創(chuàng)建
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (10,0,0,66,60,121).
150 Here comes the directory listing.
-rw-r--r--    1 0        0               0 Dec 08 10:56 12345
-rw-r--r--    1 1000     1000         1659 Dec 08 10:59 anaconda-ks.cfg
drwxrwxrwx    2 0        0            4096 Dec 08 10:58 data
-rw-r--r--    1 1000     1000         1198 Dec 08 10:59 notepad++.exe - ??·??.lnk
226 Directory send OK.
ftp> !ls
123  12345  abc  anaconda-ks.cfg
ftp> put 123  #上傳文件
local: 123 remote: 123
227 Entering Passive Mode (10,0,0,66,57,52).
150 Ok to send data.
226 Transfer complete.
4 bytes sent in 7.4e-05 secs (54.05 Kbytes/sec)
ftp> get anaconda-ks.cfg  #下載文件
local: anaconda-ks.cfg remote: anaconda-ks.cfg
227 Entering Passive Mode (10,0,0,66,28,156).
150 Opening BINARY mode data connection for anaconda-ks.cfg (1659 bytes).
226 Transfer complete.
1659 bytes received in 9.1e-05 secs (18230.77 Kbytes/sec)
ftp> 

范例:設(shè)置系統(tǒng)用戶登錄FTP服務(wù)器后統(tǒng)一映射為一個(gè)虛擬用戶

#1. 創(chuàng)建目錄文件
root@ubuntu1804:~# mkdir /ftproot
root@ubuntu1804:~# chmod 777 /ftproot

#2. 修改配置文件
root@ubuntu1804:~# vim /etc/vsftpd.conf
local_enable=YES
write_enable=yes

guest_enable=YES
guest_username=ftp

chroot_local_user=YES  #禁錮

local_root=/ftproot
#因?yàn)橛成錇榱颂摂M用戶 所以要配置虛擬用戶的相關(guān)權(quán)限
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
anon_world_readable_only=NO

allow_writeable_chroot=YES #允許對(duì)根目錄有寫權(quán)限

# 3.重啟服務(wù)
root@ubuntu1804:~# systemctl restart  vsftpd.service

# 4. 測(cè)試
[root@HAproxy ~]# ftp 10.0.0.66  #連接FTP服務(wù)器
Connected to 10.0.0.66 (10.0.0.66).
220 (vsFTPd 3.0.3)
Name (10.0.0.66:root): tom  #FTP服務(wù)器的系統(tǒng)用戶登錄
331 Please specify the password.
Password:   #輸入密碼
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

ftp> !ls
123  12345  abc  anaconda-ks.cfg
ftp> put abc  #上傳文件
local: abc remote: abc
227 Entering Passive Mode (10,0,0,66,143,226).
150 Ok to send data.
226 Transfer complete.
4 bytes sent in 6.6e-05 secs (60.61 Kbytes/sec)
ftp> get desktop.ini #下載文件
local: desktop.ini remote: desktop.ini
227 Entering Passive Mode (10,0,0,66,45,217).
150 Opening BINARY mode data connection for desktop.ini (474 bytes).
226 Transfer complete.
474 bytes received in 0.000216 secs (2194.44 Kbytes/sec)
ftp> !ls  #查看下載的文件
123  12345  abc  anaconda-ks.cfg  desktop.ini

范例:將系統(tǒng)用戶映射為一個(gè)指定的系統(tǒng)用戶

#1. 創(chuàng)建目錄
root@ubuntu1804:~#  mkdir /ftproot
root@ubuntu1804:~#  chmod 777 /ftproot

#2. 修改配置文件  和上面的配置文件一樣
local_enable=YES  #允許本地用戶登錄
write_enable=YES  #允許本地用戶上傳文件
local_umask=022   #允許本地用戶上傳文件的權(quán)限
local_root=/ftproot #指定用戶的目錄
 
allow_writeable_chroot=YES #允許對(duì)根目錄有寫權(quán)限

chroot_local_user=YES  #禁錮用戶

guest_enable=YES  #允許映射為指定用戶
guest_username=bob  #系統(tǒng)用戶bob

anon_other_write_enable=yes
anon_upload_enable=yes  #
anon_mkdir_write_enable=yes
anon_world_readable_only=NO

#3. 重啟服務(wù)
root@ubuntu1804:~# systemctl restart  vsftpd.service

#4. 測(cè)試
[root@HAproxy ~]# ftp 10.0.0.66
Connected to 10.0.0.66 (10.0.0.66).
220 (vsFTPd 3.0.3)
Name (10.0.0.66:root): tom
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (10,0,0,66,194,152).
150 Here comes the directory listing.
drwx------    2 1001     1001         4096 Dec 08 11:47 157
drwxrwxrwx    2 0        0            4096 Dec 08 11:33 data
226 Directory send OK.
ftp> !ls
123  12345  abc  anaconda-ks.cfg  desktop.ini
ftp> put 123  #上傳
local: 123 remote: 123
227 Entering Passive Mode (10,0,0,66,150,72).
150 Ok to send data.
226 Transfer complete.
4 bytes sent in 5.5e-05 secs (72.73 Kbytes/sec)
ftp> get 123 #下載
local: 123 remote: 123
227 Entering Passive Mode (10,0,0,66,171,38).
150 Opening BINARY mode data connection for 123 (4 bytes).
226 Transfer complete.
4 bytes received in 9.5e-05 secs (42.11 Kbytes/sec)

注意事項(xiàng)

將登錄的目錄作為了當(dāng)前用戶的根目錄,但是FTP服務(wù)器的根站點(diǎn)要求這個(gè)登錄的用戶對(duì)他沒(méi)有寫權(quán)限。

例如使用wang用戶進(jìn)行登錄,對(duì)用戶進(jìn)行了禁錮的操作,使用wang登錄的時(shí)候,就把/homt/wang作為了根,但是wang對(duì)這個(gè)目錄有寫權(quán)限,所以登錄就會(huì)報(bào)錯(cuò)。

解決方法:

# 方法一:
chomod 555 /home/wang #取消寫權(quán)限

#方法二:
allow_writeable_chroot=YES  #允許對(duì)家目錄的寫權(quán)限

黑名單、白名單

chroot_list_enable=YES   #默認(rèn)是NO  YES表示要啟用chroot_list_file  開啟名單

chroot_list_file=/etc/vsftpd/chroot_list  #里面存放用戶名 

白名單:默認(rèn)都不能訪問(wèn),只有名單里面的才能訪問(wèn)。

chroot_local_user=YES  #禁錮所有系統(tǒng)用戶在家目錄中
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list  #表示的是白名單

黑名單:默認(rèn)都能訪問(wèn),名單里面的不能訪問(wèn)

chroot_local_user=NO  #不禁錮所有系統(tǒng)用戶在家目錄中
chroot_list_enable=YES  #設(shè)置允許或者拒絕的用戶列表,YES標(biāo)識(shí)啟用這個(gè)列表
chroot_list_file=/etc/vsftpd/chroot_list  #表示的是黑名單

PAM模塊實(shí)現(xiàn)用戶訪問(wèn)控制

root身份不能連接FTP服務(wù)器的原因就是使用pam來(lái)限制的,因?yàn)閒tp是明文傳輸用戶密碼的。為了安全不允許root登錄ftp服務(wù)器。

vsftpd利用pam來(lái)控制用戶的訪問(wèn)。

# vsftpd中的默認(rèn)配置:
pam_service_name=vsftpd  #vsftpd指的就是/etc/pam.d/vsftpd這個(gè)文件

------------------------------------------------------------------------------------------------------------

root@ubuntu1804:/etc/pam.d# vim vsftpd
# Standard behaviour for ftpd(8).                               #放入這個(gè)文件的用戶是被拒絕登錄FTP服務(wù)器的
auth    required        pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed

# Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so.

# Standard pam includes
@include common-account
@include common-session
@include common-auth
auth    required        pam_shells.so

------------------------------------------------------------------------------------------------------------
root@ubuntu1804:/etc/pam.d# vim /etc/ftpusers  #這個(gè)文件里面的用戶都是禁止登陸的
# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).
  
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
nobody

并發(fā)連接數(shù)設(shè)置

# 同一時(shí)間允許多少個(gè)用戶連接
max_clients=1000  #默認(rèn)值是不受限制的

#每個(gè)IP同時(shí)發(fā)起的最大連接數(shù)
max_per_ip=0   #默認(rèn)不受限制

速率控制

# 匿名用戶的最大傳輸速率,以字節(jié)為單位,比如:1024000表示1MB/s 
anon_max_rate=0  #默認(rèn)不受限制

# 本地用戶的最大傳輸速率
local_max_rate=0  #默認(rèn)不受限制

到此這篇關(guān)于ubuntu1804搭建FTP服務(wù)器的方法的文章就介紹到這了,更多相關(guān)ubuntu1804搭建FTP服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論