在这个系统下配置的ftp服务器叫做vsftpd。; j+ ?7 r% }4 T2 m# n1 L
; i) h6 P! d% ], ]# [9 S/ V
步骤一:查看是否安装了它
) L2 p9 Y' T( X$ m/ a! Q4 f4 l, H& N! b! B
vsftpd -v
' s* C6 \# a0 T4 P0 O! p' ?& y7 m& N0 y3 V
如果安装了这个命令会显示它的版本号
1 p. {6 G& w# L; ` T% R
+ w a+ O2 Q9 i( ]& T7 X如果没有安装则要:sudo apt-get install vsftpd
. b# P3 e1 A$ C* [% u# k4 d' E; E) M- d9 H: i% \& U! O8 w6 b. f2 y
步骤二:查看是否运行
: g; V6 X5 s M7 v( _% b V/ V2 Q7 U
systemctl status vsftpd ,如果这个服务运行了会在结果中看到active
{& q9 m: l: |, ^' W* c
: }0 X M) |! h7 I+ P( _. X如果没有运行则参照下面的命令' Y, I8 i1 `* Z! D. W5 s; s
+ `1 C! }+ e, t6 g8 Osystemctl [start | stop | restart | reload | status] 服务名$ }, ^6 ~5 v$ S8 S. ?
s1 X+ P1 Q+ r' X. k3 M查看它的端口号:需要安装netstat这个命令的软件,它的软件名是net-tools,安装后可以用netstat -nltp|grep vsftpd 来查看+ s5 }8 ~5 F/ b8 w$ q$ a
& W$ G$ }" W$ m6 d9 b' I" ~; o
步骤三:进行配置,配置文件为/etc/vsftpd.conf
1 H- @: x; A; r \ K. a8 B! K7 w+ V( Y, r
可以用vi打开进行编辑
1 E+ C5 U- W. R" c C" D# v
- s4 L8 h3 \3 w. @
, M7 f f+ ~7 j6 u* D* ^1 _% u# 允许匿名访问1 @0 M* g% N: d2 B
* C+ i! t& g% O2 [3 \% G* canonymous_enable=YES
1 T9 @1 v# K/ l y" c) O* ~2 }3 ]0 L S# E
# 不允许本地用户,如root用户登陆。默认允许' C# w* h& z Y- Y/ }
$ G0 h0 Z; K! S5 Zlocal_enable=NO
% c- `3 I7 e; p& |0 ^- O7 Y
7 i& g) D5 n' t2 F7 R8 p8 l#设置本地用户登录所在的目录。默认配置文件中没有该配置项,本地用户登录FTP服务器后所在的目录为所登录用户的主目录,如:对于root用户,则为/root目录
/ d h* Z7 H9 _ }! l4 s
. h# {* L! O8 S4 B$ [+ M" Y# local_root=/home/ftpuser
% g( `2 J1 V7 r: I( K" X1 R5 q: s% }$ _! U+ E) f; z4 @
# 本地用户上传文件权限& f. E0 l0 U/ j8 F) a3 w6 v T
( n5 p0 R& H3 g C. |- alocal_umask=0226 Z* l6 p" Z+ l$ Q7 z7 @
6 }1 i/ s4 e f) O# 匿名用户上传文件权限4 f) e: r; u% G! u {
; V+ d& I) u8 E* W; J
anon_umask=022+ Q3 k2 n6 V& H5 `" a2 h" r
- O. W. U4 x( @! z) E" J
# 允许写入操作,否则不能上传文件3 T0 c C) x5 _% J& a
8 i& ]0 ~1 j: s! Q" i' ^ n) `8 n( D
write_enable=YES, v, r4 n8 i8 e/ @
( q5 Z2 m$ z, Q6 ?! s, |2 T# 允许匿名用户上传文件,需要配合write_enable=yes
! S7 M X {0 q" e' D9 J Y! k/ [3 b8 N
anon_upload_enable=YES' N S9 N( Y; _2 j. x/ ^% e( R! q
9 b# a, d0 o" x/ E2 A# 控制匿名用户对文件和文件夹的删除和重命名(自己添加,没有该配置)5 b; a+ z+ ^4 k( l
9 }6 E4 j7 ~7 L0 x
anon_other_write_enable=YES7 u ^& Z& h: q* Y+ a; S
, I: v4 q4 H: s6 t3 N
# 允许匿名用户创建目录
}9 Q, D% @! Y* p7 @' U
5 ~+ {' z1 G4 W" s. t/ [anon_mkdir_write_enable=YES
4 S% X% H7 N& H+ t
- v# m3 l# w. q* l! a# ftp工具连接成功提示' { y4 ]* J4 y; a' }+ D
3 I6 y+ ]! p! K: Z+ C' P2 m7 s$ rftpd_banner=Welcome to blah FTP service.
# _5 M6 q$ L* L6 K B7 j
) h7 Q2 J0 j9 T# 所有用户均不能切换到上级目录
# N! `& I+ r- q9 Z/ l- Z+ V, { @6 @5 ?; ~+ T: F; J8 i
chroot_local_user=YES
9 p4 N8 c% e. t/ w! `; j. C7 O4 b0 o' U2 `7 s
# 是否启动限制用户的名单。YES为启用,NO禁用。默认禁用0 `3 m' G/ S; `8 S
! d, q0 ^$ J4 J1 S0 z
chroot_list_enable=NO) w& I, r& ^, |
) ?) |7 i5 d N& y" _, D: u# /etc/vsftpd/user_list文件不生效6 s* f3 W1 P8 z a9 S9 O) ]* h
+ D% v/ ~$ K5 [/ i6 U. ^4 l5 n
userlist_enable=NO4 Y, _& C$ |9 p8 A6 }3 _
$ P* Q) I) S( S' b7 }6 i! e
#坑,添加以下配置。不添加此项,文件无法上传。报错:550 Permission denied9 X% l4 l% i) M$ _2 A
. O# x6 Q$ F/ U) h M9 i) w! Yallow_writeable_chroot=YES+ |, @" j4 L- `8 z+ M5 m
, Z' i2 o C" Y! T! r- m* B
#匿名用户的根目录。这个非常重要
$ K4 s: Z {# u# z- B4 g
' N/ a8 D9 O, g! ganon_root=/usr/local/ftpdir% o- E, V! m' Q+ B& E( X
3 `9 r6 z/ t, \8 T
#匿名用户不要密码就靠这个
7 J/ \+ a" n. i. D( w7 ?, j9 ^8 j6 g" T/ u3 E
no_anon_password=YES
+ [& ]* J/ P- L! X( D; e% Z$ ^: @7 e0 d0 }+ _
# 匿名登录后的使用者/ W1 f& l) d) L* T$ u2 c# _/ W
3 w( U7 V: [8 O/ ]5 ~: @
ftp_username=ftpuser 2 r6 F2 ?2 ~2 l, ?' f
|