关于vsftpd服务器搭建的若干问题总结

每次搭建都出问题,改一下也出问题,我都要炸了,这里把觉得写个长期更新的大总结。

1,我现在的配置(这个配置是可以登陆进去看的,但是不能上传)

root@debian:~# cat /etc/vsftpd.conf
#begin my configurations
listen=YES
listen_address=192.168.1.108
connect_from_port_20=YES
anonymous_enable=NO
use_localtime=YES
local_enable=YES
local_root=/home/guoyanzhang/share/myftp
xferlog_enable=YES
local_umask=022
utf8_filesystem=YES
tcp_wrappers=YES
#end my configurations


2,配置的权限(非常重要)

root@debian:~# ls -ltr /etc/vsftpd.conf
-rw-r--r-- 1 root root 282 Aug  5 16:56 /etc/vsftpd.conf

没有的话,这个要改成root/root:

root@debian:~# chown root.root /home/guoyanzhang/share/myftp

3,启动,记得是root权限

root@debian:~# sudo service vsftpd restart
root@debian:~# sudo service vsftpd status
● vsftpd.service - vsftpd FTP server
   Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-08-05 17:09:56 HDT; 3s ago
  Process: 4680 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (code=exited, status=0/SUCCESS)
 Main PID: 4681 (vsftpd)
    Tasks: 1 (limit: 4915)
   Memory: 616.0K
   CGroup: /system.slice/vsftpd.service
           └─4681 /usr/sbin/vsftpd /etc/vsftpd.conf

Aug 05 17:09:56 debian systemd[1]: Starting vsftpd FTP server...
Aug 05 17:09:56 debian systemd[1]: Started vsftpd FTP server.

4,遇到问题1:登陆的时候提示的

500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Login failed.
421 Service not available, remote server has closed connection

解决方法:删除这个配置,因为我最前面给出了的配置是已经删除的,删除之后,保存重启就好。

chroot_local_user=YES

5,目前是可以登陆的

root@debian:~# !ftp
ftp 192.168.1.108
Connected to 192.168.1.108.
220 (vsFTPd 3.0.3)
Name (192.168.1.108:guoyanzhang): guoyanzhang
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> put svn.sh
local: svn.sh remote: svn.sh
200 PORT command successful. Consider using PASV.
550 Permission denied.

6,上一步看到了,可以登陆,但是不能上传,出现问题:

200 PORT command successful. Consider using PASV.
550 Permission denied.

解决:就是加了可写权限

chmod -R 777 /home/guoyanzhang/share/myftp/
root@debian:~# cat  /etc/vsftpd.conf
增加
write_enable=YES

7,重启之后,上传成功:

root@debian:~# !ft
ftp 192.168.1.108
Connected to 192.168.1.108.
220 (vsFTPd 3.0.3)
Name (192.168.1.108:guoyanzhang): guoyanzhang
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> put svn.sh
local: svn.sh remote: svn.sh
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
77 bytes sent in 0.01 secs (6.0519 kB/s)

8,此时,也可以局域网其它地方下载

ftp> get svn.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    77  100    77    0     0  15400      0 --:--:-- --:--:-- --:--:-- 15400
ftp> bye

9,又遇到新问题,之前是在本地可以上传,但是局域网内,其它地方不能上传,问题如下:

[admin@huawei internal_storage]$ !ftp
ftp 192.168.1.108
Enter user name:guoyanzhang
Enter user passwd:
ftp> put /mnt/internal_storage/failed.txt
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
ftp: Failed FTP upload: 553

该问题,我觉得是我使用的ftp客户端设备的问题,我这边用cmd可以上传文件。

10,查看详细配置说明。

 man vsftpd vsftpd.conf

2023-09-15更新

11,报错:

C:\Users\guoya>ftp 192.168.5.2 连接到 192.168.5.2。 500 OOPS: vsftpd: not found: directory given in 'secure_chroot_dir':/usr/share/empty 500 OOPS: 远程主机关闭连接。

解决办法:新建一个/usr/share/empty文件件

12,报错:

C:\Users\guoya>ftp 192.168.5.2 连接到 192.168.5.2。 500 OOPS: cannot locate user entry:nobody 远程主机关闭连接。

解决办法:增加nobody用户。执行命令:adduser nobody

13,报错:

C:\Users\guoya>ftp 192.168.5.2 连接到 192.168.5.2。 500 OOPS: vsftpd: cannot locate user specified in 'ftp_username':ftp 远程主机关闭连接。

解决办法:修改配置anonymous_enable=YES为NO,屏蔽它是不行的。

14,报错:

C:\Users\guoya>ftp 192.168.5.2
连接到 192.168.5.2。
500 OOPS: vsftpd: both local and anonymous access disabled!

解决办法:在vsftpd.conf里面增加local_enable=YES。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值