在这个系统下配置的ftp服务器叫做vsftpd。
" r0 C6 C+ N' e1 r7 y6 M$ K
8 T- \+ ~( ]" c$ A步骤一:查看是否安装了它2 c5 f3 X5 x% E# U! ]) p
6 ~- L7 D' j& Q [" p* n6 r6 Pvsftpd -v4 ?% p3 Z/ ]8 v; Q8 _8 M
" L8 R* `! s! E8 d% L如果安装了这个命令会显示它的版本号8 [& v- K/ c0 Z v( n8 c- ~, U
" e/ B, q f F+ `3 {
如果没有安装则要:sudo apt-get install vsftpd% b6 o( d! [1 q3 v
1 s h, K! H8 |! l# Q* M6 V: P
步骤二:查看是否运行
5 e7 C, d, N; x4 h8 _" }2 D# k( P( z, i' l
systemctl status vsftpd ,如果这个服务运行了会在结果中看到active$ }: z* H/ e, W! U, \
5 D! w1 s3 B. x! J. L4 b: k- b5 _; C如果没有运行则参照下面的命令
$ K3 H7 S1 R/ W: E [3 ]% g( E L1 i3 \6 c
systemctl [start | stop | restart | reload | status] 服务名
8 M% o' z- J7 d: z ]
7 h# T }6 g7 X. }查看它的端口号:需要安装netstat这个命令的软件,它的软件名是net-tools,安装后可以用netstat -nltp|grep vsftpd 来查看
( M; W7 {* V0 T" A; C! v; Q! V" B' B
步骤三:进行配置,配置文件为/etc/vsftpd.conf" _2 _3 E6 i( h; v2 `- m
) t- |7 M+ s; S$ x# r
可以用vi打开进行编辑
" t! z* x1 `/ k2 y) \' l
! N, k/ N$ U" V- Q) I* d1 q* b. H
6 r9 C, E+ A$ q( ]2 R4 U& r# 允许匿名访问
+ W' F* E/ |/ p+ Q' E
- v) Z/ \1 a- Q) oanonymous_enable=YES
; m+ v9 L' ~! [; D6 c4 y) M" \( H) m
# 不允许本地用户,如root用户登陆。默认允许# Q9 L b/ B6 m1 S/ ^5 a n
# f. K1 k$ a& a& n2 t( ]local_enable=NO) y- c$ K4 z: {. @; f) t+ y
! F1 X l& i; Q#设置本地用户登录所在的目录。默认配置文件中没有该配置项,本地用户登录FTP服务器后所在的目录为所登录用户的主目录,如:对于root用户,则为/root目录
; P; s$ ]) v4 Q0 Z
3 b- u- X% |5 d z8 O$ R/ z# local_root=/home/ftpuser" Z- l: R* ?* I) O3 T
$ J9 d# Y4 U5 ?5 {/ X4 W# 本地用户上传文件权限
. }9 }; ?# q; A; @) B5 x3 @5 V: F/ j+ I- H; B( q4 A0 o5 K
local_umask=022" C. J. X% m x* s
2 n# J3 B8 m6 q) Q* b3 x7 o
# 匿名用户上传文件权限
N# O/ X$ d- G6 \/ I8 O: z
8 a+ d4 H4 r+ C. Wanon_umask=022
! u2 T2 @. D) u+ m- L. P5 _$ t" |3 c3 a4 d" \" j
# 允许写入操作,否则不能上传文件
b/ J7 d" l7 D; t" \3 q0 U# X* w3 ?5 @$ K
write_enable=YES
2 P! @1 F6 L7 T1 [: L7 L
H4 @) J# j/ g) H1 f% @# 允许匿名用户上传文件,需要配合write_enable=yes* p/ V6 }# y" k2 x( d- J, o
6 P! U/ ~ Y7 `; D* Qanon_upload_enable=YES
' d4 Z* L9 x: j" ]( _3 b
' ^' Z1 S& W6 ?# 控制匿名用户对文件和文件夹的删除和重命名(自己添加,没有该配置)) Y; r' J3 E# }" m0 Z3 B
: l! A, T! K( |9 {* J) o
anon_other_write_enable=YES
( u3 ?- y/ O! t2 O" a; Z2 E q
; s9 i1 j$ w S* s: u# 允许匿名用户创建目录
1 L0 C7 ^; K2 ]+ |7 z) V
1 y1 C' M9 s4 \/ tanon_mkdir_write_enable=YES
8 D% _: }' x/ |: G% w( N; j, S# e9 v0 c& V2 j: I( A- C
# ftp工具连接成功提示: e9 t, C( U" v
! J5 [. h( C& {6 v' a! ]9 ~ftpd_banner=Welcome to blah FTP service.
, M1 @9 _+ u) K6 D. W% n2 Z, x5 R$ Z0 g
# 所有用户均不能切换到上级目录6 A+ k: G: S1 Q' h, D
2 Q! q! ~& Q2 rchroot_local_user=YES- \- v% `; j: V2 }4 g" o
; m/ G+ J5 |) F& O# 是否启动限制用户的名单。YES为启用,NO禁用。默认禁用
! c. l" ~$ ~2 s9 I4 i1 }, M
! o8 i7 x7 f1 {' `) mchroot_list_enable=NO
0 v" ?( q: k6 @: V8 H1 W0 F9 B" r
- G% M2 }: J P! F# /etc/vsftpd/user_list文件不生效6 e- C4 t; Y% \- q9 P
+ ^2 N4 B1 a8 s# S& J
userlist_enable=NO$ k1 O: k0 o- D1 i. }$ `0 k
L% p* l! [" K2 |3 T, B+ e0 W6 s#坑,添加以下配置。不添加此项,文件无法上传。报错:550 Permission denied! ]- N( N( F, d( u. U
( T2 t. v& N0 `+ S5 N
allow_writeable_chroot=YES
( V# C# D$ G* p. a; y5 h' `* |* w {1 ~- W- k. h) @
#匿名用户的根目录。这个非常重要
9 L' l. {3 \/ p0 ^$ W2 m+ {
* p8 K( Q- V3 p8 `) \& @; canon_root=/usr/local/ftpdir" j' `4 |" m" f8 M1 ?3 D
. m0 i: U/ d" S4 ~2 d; O# ?#匿名用户不要密码就靠这个+ \) k( O6 f0 n8 \- a( ]% ]
- T( p' C7 F: o- [8 ^: x" nno_anon_password=YES
. H# ]6 _: j% P A8 d6 K$ b6 f H( F" F. \, U/ J
# 匿名登录后的使用者1 {9 y) |# j2 A( b
' f8 e6 s* |! x) q! n% `0 Qftp_username=ftpuser
* [$ t4 ], ?) _ |