在Ubuntu上搭建一个FTP Server
- 首先是安装VsFTPD
$ sudo apt-get update
$ sudo apt-get install vsftpd
- 修改vsftpd配置文件
/etc/vsftpd.conf
write_enable=YES #用户只能读,不能写
anonymous_enable=No #禁止匿名用户
chroot_local_user=YES #禁止用户访问其他目录,用户只能访问home目录
#chroot_list_enable=YES #没有例外,都限制只能访问home目录
chroot_list_file=/etc/vsftpd.chroot_list
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist #用户列表
userlist_deny=NO #指定用户列表为白名单,只有这个列表中的用户能登陆
- 重启使配置生效
$ sudo service vsftpd restart
- 新建用户, 并设置密码
$ sudo useradd username -d /tmp/ftp -s /bin/false
$ sudo passwd username
-d /tmp/ftp 指定用户的home directory, -s 指定用户登录的shell, 设成/bin/false
或者/bin/nologin
意思是禁止这个用户登录本机, 限定只能访问ftp
- 访问
FTP可用通过客户端访问,如FileZilla,cuteFTP等; 也可以通过命令访问:ftp, pftp(指定passive mode)。
而用wget可以非交互式地,一键下载:
wget --ftp-user=username --ftp-password=password ftp://ftp_address:port/file
wget ftp:username:password//ftp_address:port/file
- 其他
FTP server的TCP端口默认为21。
互联网访问FTP要用passive mode(被动模式), 而非active mode(主动模式)。
- 参考
https://blog.wiloke.com/setup-ftp-server-ubuntu-14-04/
https://help.ubuntu.com/lts/serverguide/ftp-server.html
转载:https://blog.csdn.net/photon222/article/details/101465584
查看评论