在这个系统下配置的ftp服务器叫做vsftpd。# Q& _) b$ i( L7 W+ g( O8 ?8 `& ]( D
% s% \0 x" Y/ \步骤一:查看是否安装了它
: q3 q# G+ {3 h7 @
% ]3 L [# J- l6 o0 w! o% Lvsftpd -v
8 H) i5 W! H0 Y \
7 i% Z6 e! W* c2 n8 T& |如果安装了这个命令会显示它的版本号
$ D6 | R5 q7 x' w$ x' n- j0 i+ [# I7 }9 `) ^* A% A
如果没有安装则要:sudo apt-get install vsftpd0 \; F% V+ y3 z2 z$ G% J
, c/ o, t3 g( z$ ]5 g1 d& x \, _
步骤二:查看是否运行) e& C: B0 ]* T/ r( `
' m$ J4 {! H& d" zsystemctl status vsftpd ,如果这个服务运行了会在结果中看到active
/ y r/ ^0 D9 ]: j& ?4 Y1 W _+ _7 D
如果没有运行则参照下面的命令
" T; O2 r- q W# A2 ?% s: n/ z* v- {
systemctl [start | stop | restart | reload | status] 服务名
3 W: {' Z! \# |! t% s
, H3 m) ?% x: A查看它的端口号:需要安装netstat这个命令的软件,它的软件名是net-tools,安装后可以用netstat -nltp|grep vsftpd 来查看& K; z$ O' Q: @8 T
: d& n7 ]& y9 Y/ h步骤三:进行配置,配置文件为/etc/vsftpd.conf6 K( v$ D1 r' k+ ?9 M9 t
) _- c/ U R2 f2 H- c可以用vi打开进行编辑
, h( N) q9 K+ T! I4 U
4 B7 u2 X: @6 d( S, } Z# N- F4 x k. M4 k; ^" ?1 U
# 允许匿名访问) @, @1 k4 R$ T4 m+ `! ^8 B! H5 r
2 E0 R( E% ?7 u
anonymous_enable=YES8 A0 C0 P" g6 ]+ a0 o
, A! u0 \4 c% F2 G9 F# M. w
# 不允许本地用户,如root用户登陆。默认允许
& r1 H2 f* L* Z- \0 R0 Y* t9 ~( k: [, c& I/ C3 N
local_enable=NO* }) I" V) T0 M2 H* s! c
& R5 P( w9 g' Q# \! K
#设置本地用户登录所在的目录。默认配置文件中没有该配置项,本地用户登录FTP服务器后所在的目录为所登录用户的主目录,如:对于root用户,则为/root目录
2 x9 ^6 S4 o+ Z; {
2 _% a% d8 N2 h3 A# M9 m# local_root=/home/ftpuser
- Y- G# R ?) j5 E
$ D* p; S7 T. N3 i* s/ c2 b# 本地用户上传文件权限
; p3 f2 ^9 c4 n: E' l+ i
/ A8 [2 l6 u# k/ Z$ [& r7 K/ glocal_umask=022; E2 c a8 j% K$ _! l- ?
" \( x) O( x& g3 ~6 p5 a( c @. N l
# 匿名用户上传文件权限" L$ n! I3 v0 n0 g
9 Y/ L- L; V7 `8 S# ^# M
anon_umask=022, \7 I3 E( O' K1 f9 _! e
; n/ U# R8 M7 ?# 允许写入操作,否则不能上传文件5 ?5 @$ \! f+ D( C3 G
: l% G; R: h+ X
write_enable=YES- M, j! u3 S# f
+ ^0 s9 v Y' D# 允许匿名用户上传文件,需要配合write_enable=yes
7 N+ q5 K9 h+ o% E4 `7 t H+ [6 S% W9 F7 u% Z; ]8 r0 ^9 e( V1 R/ M, U2 L
anon_upload_enable=YES
6 I) u( R- R1 a1 F4 c
/ f7 B0 ^$ \3 \$ B7 U$ O5 Q# 控制匿名用户对文件和文件夹的删除和重命名(自己添加,没有该配置)
; G' Q( [6 M+ a( t3 q$ |2 s7 D. q% v) @ w8 Y
anon_other_write_enable=YES- o9 \$ R3 d Q
/ h9 X" T% d$ G
# 允许匿名用户创建目录
, r9 K: l* Q& ?# ^
0 C5 A! {8 a' W S; ]! Wanon_mkdir_write_enable=YES
! t/ P' q+ M4 D7 P, g: O
' A: S3 M; J0 r# ftp工具连接成功提示
2 e5 t$ I- y& }4 ^. R8 D# j7 v; E
/ T" t; [7 Q; d/ P) L4 \ftpd_banner=Welcome to blah FTP service.* K j" u0 d8 ^) T: l+ A: ]
9 `- H, q0 R% f! J' G# 所有用户均不能切换到上级目录
- k! E# J( q5 o3 H; V: A! ^7 z' [8 i
chroot_local_user=YES: h8 e# {. p% h" t' L/ F
. I2 J; U# g% w. N* W: T# 是否启动限制用户的名单。YES为启用,NO禁用。默认禁用
* \# W8 {7 T j T& k, Z4 X& H% N" \
+ }; j& T- l g/ U1 _. u J' Wchroot_list_enable=NO
( q0 T! [! s! ]" x
8 r" n( h% I1 P2 u: Q" E t# /etc/vsftpd/user_list文件不生效: V# ?( w* k- K1 T W0 q0 D
5 n( f% w+ I/ h( L- s. R! u& B1 Wuserlist_enable=NO3 y3 X# m$ n: U5 B9 e) G
0 w# U3 i& P5 [! |) g; S) p) g4 j( k
#坑,添加以下配置。不添加此项,文件无法上传。报错:550 Permission denied9 u3 @" E* B4 f, `7 b: O
/ {/ ?& _& g/ Q+ a7 x2 J3 j& Lallow_writeable_chroot=YES) ^4 o# G6 [1 O" d5 ^
~" O6 v$ m# D. g/ j- X3 c#匿名用户的根目录。这个非常重要
, E/ m4 L* C3 i: M% J" i( Q/ r
8 W# Y$ c" @* ~( h8 d! x& ~anon_root=/usr/local/ftpdir6 r* q1 r0 B! P9 @
' G# T& m* z1 G; q( k i/ Y9 m#匿名用户不要密码就靠这个, Y3 X; }' t$ k1 V
h' H) s# [# \, A% e! ?no_anon_password=YES- S1 g& C2 g; K1 _! S. ~! p
/ D+ S; }8 A; l# ]
# 匿名登录后的使用者
7 I* Q$ ?5 I; k4 H8 i- ]
3 w2 M. C/ c. q$ [. @7 G; Vftp_username=ftpuser
. F0 s8 y- i2 P& ^ |