在这个系统下配置的ftp服务器叫做vsftpd。4 S3 O- p/ x+ a4 B; y# o
; R$ n- P3 ^# Q8 a7 n步骤一:查看是否安装了它0 R) N# W) z1 K% P/ f3 M
E5 w3 d6 B! X, K. u3 g6 D* Rvsftpd -v4 f" a. c4 s0 B% M( }2 c" A
5 Z+ w) j- n, R& f# u
如果安装了这个命令会显示它的版本号, g- V% s2 h' ^& `6 _/ H
( U2 w4 k$ r9 n' o0 T: H
如果没有安装则要:sudo apt-get install vsftpd% s% Y7 `# J. i) H6 E% X I
! F# t: K* ~7 o' R7 K# m
步骤二:查看是否运行
0 A5 D# N- {8 Q5 c" b, n, _; i( p# l# Q. T! g: o
systemctl status vsftpd ,如果这个服务运行了会在结果中看到active* v$ p$ N7 l: f! m1 b8 ~) P
2 @" M* x+ x w6 A* ~3 N如果没有运行则参照下面的命令
* p) o. ^3 ~$ f' m# N. a( a3 Z( c, k: M4 `9 V
systemctl [start | stop | restart | reload | status] 服务名# E6 G! u0 b8 H9 u
8 R8 l, J) `0 Y+ ~查看它的端口号:需要安装netstat这个命令的软件,它的软件名是net-tools,安装后可以用netstat -nltp|grep vsftpd 来查看. x- [* [0 J# @; v# J
$ U6 f/ d9 m% n9 F; T4 a步骤三:进行配置,配置文件为/etc/vsftpd.conf# c& a6 _. ?! z! Z+ L. C% ~! \1 z
8 w, B. Y* C- @5 J4 A8 F6 L" B+ ~可以用vi打开进行编辑
& h; o& t* l3 O/ j6 f+ o% P
% k7 p, m7 D5 L9 S3 q
! A0 {! n6 ]4 v0 I' P# 允许匿名访问
6 y' u% ` L- C7 R+ ]0 R0 K9 A" @9 d+ o. I
anonymous_enable=YES, S, N9 H; m8 U( N/ M6 ~
8 \. O# L, B+ Q" _8 k* {0 i, k; k# 不允许本地用户,如root用户登陆。默认允许
4 H; i6 G# R1 I) W. G* n3 C0 n
# z: S3 ]8 {/ J; {' Y5 C0 E( rlocal_enable=NO4 J: L* K6 g& r+ }
) d$ `( A' @6 i! ^# a- O8 E#设置本地用户登录所在的目录。默认配置文件中没有该配置项,本地用户登录FTP服务器后所在的目录为所登录用户的主目录,如:对于root用户,则为/root目录/ p7 B: b( M/ m B5 I: c- \
0 H5 b6 h W, e4 |, d# local_root=/home/ftpuser1 k- V$ r( v0 a# }/ \
& Y) u0 u6 R# J2 Z5 h8 j
# 本地用户上传文件权限
5 _7 g5 T* j2 `8 ?; t
: Z. ]" P/ |! c4 U5 U1 Z e! T) ilocal_umask=0227 J* A' K, |& |& H3 c0 c
* N. U: s$ V; F: ` p Q
# 匿名用户上传文件权限
% B/ f. `5 d! c( m& q. K9 Z" o* {: \: H# X
anon_umask=0223 V t- ?7 Z1 G2 s* G
9 ~' d/ C9 ~0 ~) \, W; |# 允许写入操作,否则不能上传文件7 ^% j1 I" ?3 V' N, E" c
) ~) q h& h, Y6 }; R3 A+ Gwrite_enable=YES( i7 Z. {8 G: H1 L, ?
- ]& K- Q6 o4 z/ b9 N6 [3 G
# 允许匿名用户上传文件,需要配合write_enable=yes" V8 u. Z; A' H2 V; @- x3 V: p
2 `) y3 h/ Z4 Q9 x$ E( ~9 Q$ W1 Oanon_upload_enable=YES$ M, i$ U! P. E6 O: v w
& o2 F& {" ]. p+ {8 }! }1 F# 控制匿名用户对文件和文件夹的删除和重命名(自己添加,没有该配置)0 d) q, l. e* C( M+ `5 `
5 C$ {, o9 \& L! N3 Sanon_other_write_enable=YES- e- L% k) K4 F
; V& m" Y* M0 V& ]& ?/ S9 N# 允许匿名用户创建目录3 O# ]* g2 v+ N. i" `) c, M
0 p. E8 d, J% w1 h6 ~; g
anon_mkdir_write_enable=YES4 D& m) @! \( @: B T- O
* x# W ^" e) K) b" y1 _2 \# ftp工具连接成功提示6 E8 [4 L/ a; S: F& n
' {' X, E6 v& }' B% _ftpd_banner=Welcome to blah FTP service.
' U) o/ G! { l; h1 Y+ A" O" Q( ^0 ^, ~$ ?8 G( k0 T4 T' k
# 所有用户均不能切换到上级目录
" G9 C& ]5 O! e% B- }. N# G6 v3 [
. Q w# q {! L0 ^, C; ?chroot_local_user=YES
; y2 c5 |3 C: ?6 N% w! b3 n* e2 Y
4 S1 F8 n& q3 m* m& x6 ?$ i0 C# 是否启动限制用户的名单。YES为启用,NO禁用。默认禁用+ y; }$ C' l* |$ F7 K$ T
+ E! b& \0 T7 Y7 Y
chroot_list_enable=NO
6 `1 g( J5 ~4 S
, W8 k& Y- M2 U# /etc/vsftpd/user_list文件不生效
/ ^* ^8 S. N/ {* g9 I J% y3 l
6 x. C( c4 q/ w$ V% D5 yuserlist_enable=NO# G& |0 q( M) W6 ~% G$ b6 T! b/ H
7 ^/ u5 }' s; k8 [& o5 N) n, r
#坑,添加以下配置。不添加此项,文件无法上传。报错:550 Permission denied
- Q, X4 c. z, O$ F2 `0 C* B# C) W/ E7 Q. i$ U$ M
allow_writeable_chroot=YES9 ?- ]/ S l* c! \, n. r4 Q3 q0 i$ R
/ q1 t/ m/ w8 m: {2 f" @#匿名用户的根目录。这个非常重要
0 v/ g* s# `3 D. L* T# |( B5 h- [3 P/ F. o& L+ p
anon_root=/usr/local/ftpdir/ d% [6 @$ Y/ P' I$ Q: f
& J: u# q3 K' H1 p7 r#匿名用户不要密码就靠这个
1 f* P5 n7 R; @$ o6 v
1 [7 b1 R# y8 h+ Rno_anon_password=YES
' s2 b- e& L/ }
4 {* U5 Y$ U5 @3 j/ w, C# 匿名登录后的使用者
* Q; U1 \$ _' M- H% P* \6 L
6 e l( X0 k4 @& c vftp_username=ftpuser $ y0 G! O7 q5 M" O' @" |6 o0 H* \
|