AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题

问题[vsftpd](ubuntu)

Martin Hope
Milind
Asked: 2020-10-29 00:45:00 +0800 CST

vsftpd 与 ubuntu 20.04 ftp 家庭问题

  • 1

我已经在我的 ubuntu 20.04 服务器上安装了 vsftpd。我的服务器上有两个网站

  • example.com(路径 - /var/www/example.com/public_html)
  • demo.example.com(路径 - /var/www/demo.example.com/public_html)

我已经使用以下命令创建了用户websiteUser

sudo adduser websiteUser

然后我给出了以下命令

sudo usermod -d /var/www/demo.example.com websiteUser
sudo usermod -d /var/www/example.com websiteUser
sudo chown websiteUser:websiteUser /var/www/demo.example.com/public_html
sudo chown websiteUser:websiteUser /var/www/example.com/public_html

现在的问题是,当我从 demo.example.com 或 example.com 从 fileZilla 登录时,它总是转到 /var/www/example.com/public_html

如果登录到 demo.example.com 然后它会转到 demo.example.com 文件和 example.com 然后它会转到 example.com 文件会如何发生

server permissions ftp apache2 vsftpd
  • 1 个回答
  • 248 Views
Martin Hope
adazem009
Asked: 2020-10-26 00:47:49 +0800 CST

vsftpd - 无法在启用自定义 shell 的情况下登录

  • 1

我在我的 Ubuntu 20.04 服务器上设置了 vsftpd。一切正常,我什至能够配置 TLS。现在,我不希望用户使用 SSH。我也因此禁用了 SFTP。我不想为这些用户禁用 SSH,因为我希望他们将其用于更改密码等一些基本工具。因此,我使用这些工具创建了一个自定义 shell。但是,当我为用户启用此 shell 时,他们无法登录 FTP。它只是显示“登录不正确”。

为什么 vsftpd 会这样做?

command-line ssh ftp login vsftpd
  • 1 个回答
  • 336 Views
Martin Hope
Marzii
Asked: 2019-10-16 10:18:15 +0800 CST

启用 TLS 后无法从 vsftpd 检索目录列表

  • 1

我在 Ubuntu 16.04 服务器上设置了 vsftpd。我添加了一个用户,并通过用户列表给他 FTP 访问权限,并将他 chroot 到他的主目录。它工作得很好。为了使文件传输更安全,我想添加一个 TLS 连接。

我使用 OpenSSL 创建了一个新证书:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

并改编了我的vsftpd.conf:

ssl_enable=YES
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH

重新启动 vsftpd 并尝试通过 FileZilla 或 WinSCP 连接后,我收到了接受证书的提示。但是这两个程序实际上并没有将我连接到服务器。他们“停止”在“检索目录列表”。这是我尝试使用 FileZilla 登录时发生的情况:

Status: Resolving address of **
Status: Connecting to [**]:21...
Status: Connection established, waiting for welcome message...
Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established.
Status: Server does not support non-ASCII characters.
Status: Logged in
Status: Retrieving directory listing...
Command:    PWD
Response:   257 "/" is the current directory
Command:    TYPE I
Response:   200 Switching to Binary mode.
Command:    EPSV
Response:   229 Entering Extended Passive Mode (|||13468|)
Command:    LIST
Error:  Connection timed out after 20 seconds of inactivity
Error:  Failed to retrieve directory listing
Status: Disconnected from server
server ftp vsftpd openssl tls
  • 1 个回答
  • 2504 Views
Martin Hope
Jags
Asked: 2019-08-28 11:05:09 +0800 CST

如何为仅 LAN 访问配置 VSFTPD,并限制对单个目录的访问

  • 0

我已经阅读了很多设置指南,但不知道如何配置 VSFTPD 以实现仅限 LAN 的访问,以及如何限制对单个目录的访问(例如:~/Downloads)。

如果可能的话,我什至不想将它的存在暴露在互联网上。任何帮助是极大的赞赏。

PC:Ubuntu Mate 19.04 64 位。

vsftpd
  • 1 个回答
  • 2489 Views
Martin Hope
ObiWan
Asked: 2019-07-16 22:58:05 +0800 CST

如何赋予 FTP 用户和家庭用户相同的权限?

  • 2

OS: Ubuntu 16.04.6

我已经使用vsftpd. 我最初按照以下链接的说明进行操作。

如何在 Ubuntu 16.04 上为用户目录设置 vsftpd

但是上面的教程以及大多数其他资源都教了如何为 home 下的目录创建服务器。但我想为我的两个外部驱动器制作它;/media/Drive-1&/media/Drive-2

我这样做是通过使用,

sudo mount --bind /media/Drive-1/ /home/home_user/ftp_user

现在的问题是,

  • 每当我使用 (say) 创建目录、复制文件等gftp时,我home_user都无法更改/删除它。

  • 同样,如果我使用创建目录或文件home_user,ftp_user则无法更改/删除它。

现在有些目录归“home_user”所有,有些是“ftp_user”。有没有办法授予所有目录相同的访问权限,所以我通过或手动创建/发送的任何内容gftp都ssh可以通过home_user和ftp_user.

PS:驱动器是EXT4文件系统。

server permissions ftp vsftpd 16.04
  • 1 个回答
  • 6473 Views
Martin Hope
justadev
Asked: 2019-05-01 03:20:09 +0800 CST

无法使用 vsftpd 登录虚拟用户

  • 1

我知道以前有人问过它(例如这里),但我完全被卡住了,不知道如何让它工作。

我正在尝试设置几个 ftp 用户,每个用户都有自己的子文件夹(因此用户只能看到他的根文件夹,而没有其他内容)。

当前的问题是在filezilla上我得到

Command:    open "user1@123.123.123.123" 22
Command:    Trust new Hostkey: Once
Command:    Pass: ******
Error:  Authentication failed.
Error:  Critical error: Could not connect to server

/etc/vsftpd.conf

listen=YES
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
connect_from_port_20=YES
nopriv_user=vsftpd
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
local_root=/home/ftpmain/ftp/$USER
hide_ids=YES
guest_username=vsftpd
secure_chroot_dir=/var/run/vsftpd/empty
ssl_enable=YES
allow_anon_ssl=NO
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
pasv_address=123.123.123.123
pasv_enable=Yes
pasv_min_port=40000
pasv_max_port=50000
chroot_local_user=YES
chroot_list_enable=NO

/etc/pam.d/vsftpd

auth required pam_pwdfile.so pwdfile /etc/vsftpd/ftpd.passwd
account required pam_permit.so

user1 文件夹如下所示(在 chmod+chown 之后):

/home/ftpmain/ftp/user1$ ll
total 12
dr-xr-xr-x 3 root   root    4096 Mar 18 19:17 ./
dr-xr-xr-x 4 nobody nogroup 4096 Mar 18 19:09 ../
drwxr-xr-x 2 vsftpd nogroup 4096 Mar 18 19:17 folder1/

网络统计

$ netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -

关于我缺少什么以及如何使其发挥作用的任何想法?有没有办法调试它?一些日志文件,我可以检查为什么登录失败?

任何帮助将不胜感激,如果您需要更多信息,请告诉我

PS:在 ubuntu 18.04 上运行

更新

我在 /var/log/auth 文件中发现了这个错误:

$ tail -f /var/log/*

Apr 30 15:05:49 ip-172-31-40-232 sshd[25641]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=111.111.111.111
Apr 30 15:05:51 ip-172-31-40-232 sshd[25641]: Failed password for invalid user user1 from 111.111.111.111 port 53251 ssh2
Apr 30 15:05:51 ip-172-31-40-232 sshd[25641]: error: Received disconnect from 111.111.111.111 port 53251:13: Unable to authenticate [preauth]
Apr 30 15:05:51 ip-172-31-40-232 sshd[25641]: Disconnected from invalid user user1 111.111.111.111 port 53251 [preauth]

我发现 vsftpd 根本没有运行!我以前没有看到它的原因是因为我有 SFTP 工作(使用端口 22)。vsftpd 状态为“失败”。

$ sudo /etc/init.d/vsftpd status
● vsftpd.service - vsftpd FTP server
   Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2019-04-30 15:45:56 UTC; 2s ago
  Process: 25980 ExecStart=/usr/sbin/vsftpd /etc/vsftpd.conf (code=exited, status=2)
  Process: 25972 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (code=exited, status=0/SUCCESS)
 Main PID: 25980 (code=exited, status=2)

我从命令行手动运行 vsftpd 并发现存在证书错误

$ sudo /usr/sbin/vsftpd /etc/vsftpd.conf
500 OOPS: SSL: cannot load RSA certificate
vsftpd
  • 1 个回答
  • 2329 Views
Martin Hope
jost21
Asked: 2019-02-26 22:42:52 +0800 CST

如何使用 vsftpd 设置可以访问 Web 根目录的 FTP 用户?

  • 0

如何使用 vsftpd 设置可以访问 Web 根目录的 FTP 用户?

我目前正在建立一个网站,并且正在尝试了解有关 Web 服务器的更多信息。我以前使用过共享主机提供商,但这次我想用 VPS 从头开始​​设置服务器。我已经安装了 LAMP 堆栈并安装了 Wordpress。到目前为止一切正常,除了自动更新 Wordpress,因为它要求 FTP 访问。

因此我vsftpd按照本教程安装。这也相应地起作用。

问题是在教程中 FTP 用户有它的专用文件目录 ( /home/ftp_user/ftp/files),但我需要让用户访问 web 根目录 ( /var/www/html/site) 以便 Wordpress 执行更新。

我试着local_root指出/var/www/html

我尝试设置这样的符号链接

ln -s /var/www/html /home/ftp_user/ftp/files

但两种方式都行不通。当我尝试连接时,它说

vsftpd: refusing to run with writable root inside chroot()

实现这一目标的正确方法是什么?还是根本不使用该/var/www/html位置会更好?

server ftp apache2 vsftpd
  • 2 个回答
  • 7018 Views
Martin Hope
jupiterbjy
Asked: 2018-11-07 23:31:16 +0800 CST

SFTP 工作时 FTP 连接失败

  • 0

编辑:想通了,我需要注释掉 SSL 的东西以使其成为 FTP。

问题:

我正在使用 vsftpd 运行带有 SSL 的 sFTP。

由于我无法在浏览器上访问 sFTP(没有扩展名),现在我想让 FTP 再次工作。

清除并重新安装 vsftpd 后,我发现 FTP 以默认设置运行(可以连接但不显示目录),而 sFTP 仍在使用以前的设置运行。所以我决定让 FTP 和 sFTP 同时运行。

然后我改变了 vsftpd.conf 如下:

listen=YES
listen_ipv6=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=NO
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd_FTP
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
utf8_filesystem=YES
local_root=/home/upload/ftp/
force_local_data_ssl=NO
force_local_logins_ssl=NO

但是在更改 vsftpd.conf 后,FTP 现在又因“连接被拒绝”而死机,而 sFTP 仍然正常工作。

sFTP 之前使用的设置如下:

listen=YES
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=NO
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
utf8_filesystem=YES
user_sub_token=$USER
local_root=/home/upload/ftp/ETC
allow_anon_ssl=YES
force_local_data_ssl=NO
force_local_logins_ssl=NO
listen_port=21
listen_port=22

问题:

  1. [已解决]我的配置文件的哪一部分导致“连接被拒绝”?

  2. 清除后 sFTP 如何仍在运行,它在哪里设置文件?

  3. [已解决]为什么 'local_root=/home/upload/ftp/' 选项什么都不做?

ftp sftp vsftpd
  • 1 个回答
  • 907 Views
Martin Hope
Ryan Walkowski
Asked: 2018-10-27 13:57:47 +0800 CST

vsftp 不显示 .local 文件夹

  • 0

我托管了一个 Ubuntu 服务器,用于为几个朋友托管几个游戏服务器。它是一个 Intranet 服务器,因此安全性不是问题。

我的问题如下。在我home/user/的文件夹中,我有一个.local文件夹,其中包含游戏服务器 saves/mods 文件夹的一部分。我希望有朋友能够 ftp 进入服务器并能够添加/复制项目。我已经启用了对主/用户文件夹的 ftp 访问,当您登录时,它列出了所有文件夹和文件,除了任何一个. extension i.e .local我有点茫然,我不确定是什么导致了这个问题,无论是 vsftp, Ubuntu 或 ftp 客户端。

我已经通过终端包含了文件夹ls -la中的内容以及通过智能 ftp 客户端登录时获得的内容。

为了澄清,我在问如何让 ftp 客户端查看ls -la显示的所有文件夹和文件。由于我需要访问的文件位于上述文件夹之一中

任何帮助表示赞赏

终端

FTP

server ftp vsftpd
  • 1 个回答
  • 764 Views
Martin Hope
Erlend D.
Asked: 2018-10-13 03:25:22 +0800 CST

通过 vsFTPd 获取文件的校验和

  • 3

我正在制作一个用于从本地服务器自动下载文件备份的脚本。有很多文件,所以为了避免下载未更改的文件,我想在下载任何东西之前将远程文件哈希与本地文件哈希进行比较。但是,我无法在我的 vsFTPd 服务器上使用 HASH 命令。

我认为这意味着 HASH 命令以某种方式被禁用或禁止,但数小时的谷歌搜索尚未告诉我如何启用它,或者 vsFTPd 是否支持 HASH 命令。

有人知道这是否可能吗?或者,如果 vsFTPd 不支持 HASH 命令,我可以使用另一个 Ubuntu 的 FTP 服务器吗?

这是一个例子:

erlend@server:~$ ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 3.0.3)
Name (localhost:erlend): erlend
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 EPRT command successful. Consider using EPSV.
150 Here comes the directory listing.
-rw-r--r--    1 1002     1002       102653 Oct 05 08:19 myfile.zip
226 Directory send OK.

但是当我尝试获取文件哈希时,我得到:

ftp> HASH  myfile.zip
?Invalid command

如评论中所建议的,尝试不带参数(和小写!):

ftp> hash
Hash mark printing off.
ftp> hash
Hash mark printing on (1024 bytes/hash mark).
ftp> hash 1
Hash mark printing on (1 bytes/hash mark).
ftp> hash 2
Hash mark printing on (2 bytes/hash mark).
ftp> hash
Hash mark printing off.
ftp> hash myfile.zip
Hash mark printing off.
server ftp vsftpd
  • 2 个回答
  • 1062 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve