vsftpd命令,vsftpd全称

http://www.itjxue.com  2023-01-18 00:02  来源:未知  点击次数: 

linux vsftpd怎么使用

第一步:下载vsftpd的RPM包

你可以从下面两个地方获得最新的vsftpd的RPM包 Redhat's rpm collection 或者 rpmfind.net.为了你的方便, 你也可以使用wget从本站下载vsftpd的rpm包到你的本地电脑.

复制代码代码如下:

wget

一但有了vsftpd的RPM包,你就可以安装它

rpm -Uvh vsftpd-1.1.3-8.i386.rpm

就这样. Vsftpd现在正式安装.

第二步:启动并在"standalone"模式下进行测试

复制代码代码如下:

vi /etc/vsftpd/vsftpd.conf

添加下面一行, 或者查看文件确定存在下面一行:

复制代码代码如下:

listen=YES

保存并退出.

现在来启动vsftpd...

复制代码代码如下:

/usr/sbin/vsftpd

现在来用ftp命令至你的服务器. 你可以看到如下面这下样的成功登陆后的会话信息:

复制代码代码如下:

[root@somehost]ftp localhost

Connected to localhost.localdomain.

220 (vsFTPd 1.2.1)

Name (localhost:admin): bobsmith (很明显,你必须使用在你的服务器上的有效用户)

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp ls

150 Here comes the directory listing.

-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz

drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm

226 Directory send OK.

ftp quit

221 Goodbye.

[root@somehost]

如果你准备就绪的话,就可以看到类似于上面的返回信息 ! 如果你想让你的FTP服务器运行在 inetd或xinetd上, 那么你就需要继续进行下面的测试. 我个人推荐将FTP服务器运行在 inetd或xinetd上.

第三步:为inetd/xinetd操作进行配置

要在inetd或xinetd配置vsftpd,要进行下面的操作:

首先,来编辑/etc/vsftpd.conf,并告诉它vsftpd没有运行在"standalone"模式:

复制代码代码如下:

vi /etc/vsftpd/vsftpd.conf

确认下行的存在并将其设置为 "NO":

复制代码代码如下:

listen=NO

如果你在运行inetd,进行下面的操作:

复制代码代码如下:

vi /etc/inetd.conf

如果文件有包含任何“ftp"行的存在, 请注释或删除掉它们,并添加入下面一行:

复制代码代码如下:

ftp stream tcp nowait root /usr/local/sbin/vsftpd vsftpd

保存并退出.

现在重启inetd:

复制代码代码如下:

/etc/rc.d/init.d/inetd restart

如果你的xinetd正在运行,进行下面的操作:

Redhat用户:

复制代码代码如下:

vi /etc/xinetd.d/vsftpd

# default: off

# description: The vsftpd FTP server serves FTP connections. It uses \

# normal, unencrypted usernames and passwords for authentication.

service ftp

{

disable = no

socket_type = stream

wait = no

user = root

server = /usr/sbin/vsftpd

nice = 10

}

保存并退出.

现在停止并重启xinetd...

复制代码代码如下:

/etc/rc.d/init.d/xinetd restart

现在来测试inetd/xinetd ftp服务器:

复制代码代码如下:

[root@somehost]ftp localhost

Connected to localhost.localdomain.

220 (vsFTPd 1.2.1)

Name (localhost:admin): bobsmith (很明显,你必须使用在你的服务器上的有效用户)

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp ls

150 Here comes the directory listing.

-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz

drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm

226 Directory send OK.

ftp quit

221 Goodbye.

[root@somehost]

如果你准备就绪的话,就可以看到类似于上面的返回信息 ! 恭喜,你的FTP服务器已经正常运行! 在接下来的步骤, 我们将调整vsftpd的配置让其拥有最好的性能.

第四步:vsftpd主配置文件

vsftpd主要配置应该是在:/etc/vsftpd.conf. 这个文件将决定如何对你的vsftpd FTP服务器进行操作. 你必须在vsftpd.conf中查找是否包含下面的配置选项。我虽然不能讲诉所有的选面,但是列表中列出来了vsftpd配置的重要部分 :

anonymous_enable=NO/YES

这个开关用于开启FTP的匿名访问. 如果将该选项打开,那么请按照第三步的方法进行匿名匿名服务的配置. 如果你不清楚什么是匿名FTP服务,最好把该选项选项设置为“ON”

local_enable=NO/YES

启用或禁用这个选项,可以使本地系统用户FTP至你的服务器. 典型的FTP服务器会将其设置为"YES". 我认为只有一种可以选"NO",

write_enable=NO/YES

启用或禁用FTP的写入功能.你必须将其设置为"YES" .

local_umask=022 (或者根据你的需要设置)

vsftpd默认的umask为:077. 它决定目录和文件被创建时得到的初始权限

xferlog_enable=YES

这个选项是启用或禁用服务器的上传下载日志记录.

ftpd_banner=Welcome to blah FTP service

没有任何形式来界定该选项, 但它可以为你的FTP服务器定制一个更加友好的问候.

chroot_list_enable=NO/YES

chroot_list_file=/etc/vsftpd.chroot_list

这是一个对于开启了"chroot"选项相当重要的功能. 当 "chroot_list_enable" 设置为"YES"时, vsftpd会寻找在 "chroot_list_file"指定的下一行位置. 被列出在"/etc/vsftpd.chroot_list" 文件中的任何用户,会自动的"chrooted"至他们的主目录. 这将禁止用户进入除了他或她们用户主目录之外的任何位置. 非常适用于共享的FTP环境或者安全与保密性一般的层面.

userlist_enable=NO/YES

userlist_deny=NO/YES

"userlist_enable"选项是用于控制下面两个文件中其中的一个: vsftpd.ftpusers和 vsftpd.user_list.如果这个选项设置为 "YES", 这两个文件将列出用户名单将允许访问FTP服务. 不管怎样,当额外加上"userlist_deny=YES"时,这两个文件将列出用户名单将不允许访问FTP服务.这个选项是一个非常有用的彻底拒绝通过ftp获取关键系统用户的功能.比如"root"或"apche"或"www"这样的用户. 对于你的FTP服务器的安全是一个非常好的用途.

第五步: vsftpd.ftpusers, vsftpd.user_list 配置文件

这两个文件直接与/etc/vsftpd.conf配置文件中的""userlist_enable" 和"userlist_deny"选项关联.当"userlist_enable"选项设置为 "YES"时, 这两个文件列表中的用户将允许访问FTP服务器. 不管怎样, 当额外加上"userlist_deny=YES"选项时,这两个文件列表中的用户将不允许访问FTP服务器. 当"userlist_deny"选项被使用时,决定一个有户是否被FTP服务拒绝,主要取决于它存在于上述两个文件中的其中的哪一个.

如果一个用户同时存在于"vsftpd.user_list"与"userlist_deny",当用户试图连接FTP服务器时,它们在开始请求FTP连接时 得不到密码提示并会被拒绝.

如果一个用户同时存在于"vsftpd.user_list"与"userlist_deny", 用户必须登陆后更改这一密码提示.

就个人而言, 我更喜欢使用 "vsftpd.user_list"来建立用户列表(root, apache, www, nobody等等.) 如果有谁从未见到密码提示,那么他应该进行FTP的初始化连接.

第六步: vsftpd.chroot_list 配置文件

"vsfrtpd.chroot_list", 当启用"chroot_list_enable"选项时, 为FTP建立的用户列表文件,不管是谁,都必须被 "chrooted"至主FTP目录. 那些用户不能改变路径到其它用户目录.在保密性较强的公共FTP环境中,这是一个非常不错的功能.

在任何时间你都可以改变你的配置文件, 并确认后重启vsftpd!

允许FTP服务自启,执行systemctl enabled vsftpd.service,这个执行命令正确吗

正确。

vsftpd(verysecureFTPdaemon)是众多Linux发行版中默认的FTP服务器。本文以CentOS7.664位操作系统的腾讯云服务器(CVM)为例,使用vsftpd软件搭建Linux云服务器的FTP服务。

1、执行以下命令,安装vsftpd。yuminstall-yvsftpd。

2、执行以下命令,设置vsftpd开机自启动。systemctlenablevsftpd。

3、执行以下命令,启动FTP服务。systemctlstartvsftpd

4、执行以下命令,确认服务是否启动。netstat-antup|grepftp。

如何做到 vsFTPd 服务器的启动和关闭

vsFTPd 服务器的启动和关闭挺简单,请看下文介绍。

vsFTPd服务器启动和关闭是极容易的;我们可以直接把服务器运行调到后台运行;这是几乎所有服务器管理的运行方式;

1、vsFTPd服务器启动和关闭的通用方法;

运行vsftpd命令,要用到root权限,如果您当前操作用户并非是root,可以用su切换到root权限;关于root权限的切换,您有两种方式,一种是su,另一种是sudo;请参考: 《Linux 系统中的超级权限的控制》

vsFTPd服务器的运行;

[root@localhost ~]# /usr/sbin/vsftpd

[root@localhost ~]# /usr/local/sbin/vsftpd

vsFTPd服务器是否运行起来;

我们可以通过pgrep vsftpd 来查看vsftpd是否运行起来;

[root@localhost ~]# pgrep vsftpd

4248

上面显示vsFTPd服务器运行起来了,您可以通过ftp命令、lftp工具或gftp或其它的FTP客户端来测试连接;

vsFTPd 服务器关闭:

我们用pkill vsftpd 来杀死vsftpd进程,这样就把vsFTPd关闭,用psgrep vsftpd 来查看进程,如果没有进程,证明vsFTPd已经关掉;当然也要用到root权限。

[root@localhost ~]# pkill vsftpd

[root@localhost ~]# pgrep vsftpd

2、在Fedora/Redhat/CentOS中vsFTPd 服务器的启动和关闭:

在Fedora/Redhat/CentOS中,也可以用下面的方法来启动vsFTPd;当然也要用到root权限;

[root@localhost beinan]# /etc/init.d/vsftpd start

为 vsftpd 启动 vsftpd: [ 确定 ]

重新启动vsFTPd用下面的命令;

[root@localhost beinan]# /etc/init.d/vsftpd restart

关闭 vsftpd: [ 确定 ]

为 vsftpd 启动 vsftpd: [ 确定 ]

关掉vsFTPd服务器,应该用下面的命令;

[root@localhost beinan]# /etc/init.d/vsftpd stop

关闭 vsftpd: [ 确定 ]

通过文章的介绍,我们可以清楚的知道和实现 vsFTPd 服务器的启动和关闭!

如何在mac上配置vsftpd

安装brew,用mac自带的mac下载,去 复制命令

安装vsftpd: brew install vsftpd

brew安装完vsftpd后会给出以下提示:

To use chroot, vsftpd requires root privileges, so you will need to run

sudo vsftpd.

You should be certain that you trust any software you grant root privileges.

The vsftpd.conf file must be owned by root or vsftpd will refuse to start:

sudo chown root /usr/local/etc/vsftpd.conf

To have launchd start vsftpd now and restart at startup:

sudo brew services start vsftpd

Or, if you don’t want/need a background service you can just run:

sudo vsftpd

运行命令:sudo chown root /usr/local/etc/vsftpd.conf

修改配置文件vsftpd.conf:

local_enable=YES

write_enable=YES

新建一个用户:ftp1,并设置密码。mac中不能使用命令useradd,所以要到系统偏好设置-用户与群主 中新增用户。

启动vaftpd:sudo brew services start vsftpd

在/etc/shells中新增/bin/false和/sbin/nologin,这样可以允许ftp登录,禁止ssh登录,如果没有这个需要可以不用设置。

用ftp1登录,可能会报以下错误

重启mac按住 Command+R,进入恢复模式,打开Terminal。

csrutil disable

重启即可。如果要恢复默认,那么

csrutil enable

缺少某一个log文件,新建一个文件即可

缺少/usr/share/empty,新建这个文件夹会遇到一个问题,就是系统不允许在/usr下面新建文件夹,要想解决这个问题比较麻烦一点。需要关闭 Rootless:

10.重启vsftpd:sudo brew services restart vsftpd, 重新登录ftp1,报错:

331 Please specify the password. 530 Login incorrect.

解决方法:

cd /etc/pam.d, 找到ftp server的名字,我找到的是ftpd。

在vsftpd.conf加上pam_service_name=ftpd

重启vsftpd

上述步骤完成之后就可以使用127.0.0.1访问该ftp服务器了。

linux下搭建ftp服务器

linux下搭建ftp服务器

下面我就为大家整理了一些Linux认证复习备考资料。希望大家可以从中学习答题方法,让自己的得到进步!最近为了方便目标板与PC机上LINUX之间的通讯,就在LINUX搭建了FTP,工作不难,写个总结。主要经过以下几个步骤:

1.检查是否安装了vsftpd服务器

可以用rpm -q vsftpd命令来查看,若显示"vsftpd-1.1.3-8",则说明系统已经安装vsftpd服务器,若没有则可以在图形环境下单击"主菜单→系统设置→添加删除应用程序"菜单项,在出现的"软件包管理"对话框里确保选中"FTP服务器"选项,然后单击"更新"按钮,按照屏幕提示插入第3张安装光盘即可开始安装。

2.启动/重新启动/停止vsftpd服务

从Red Hat Linux 9.0开始,vsftpd默认只采用standalone方式启动vsftpd服务,方法是在终端命令窗口运行以下命令:

[root@ahpeng root] /etc/rc.d/init.d/vsftpd start

重新启动vsftpd服务:

[root@ahpeng root] /etc/rc.d/init.d/ vsftpd restart

关闭vsftpd服务:

[root@ahpeng root] /etc/rc.d/init.d/ vsftpd stop

3.vsftpd的配置

在Red Hat Linux 9.0里的vsftpd共有3个配置文件,它们分别是:

vsftpd.ftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。

vsftpd.user_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问

FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问。

vsftpd.conf:位于/etc/vsftpd目录下。它是一个文本文件,我们可以用Kate、Vi等文本编辑工具对它进行修改,以此来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。

(1)用户登录控制

anonymous_enable=YES,允许匿名用户登录。

no_anon_password=YES,匿名用户登录时不需要输入密码。

local_enable=YES,允许本地用户登录。

deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。

banned_email_file=/etc/vsftpd.banned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpd.banned_emails)。

(2)用户权限控制

write_enable=YES,开启全局上传权限。

local_umask=022,本地用户的上传文件的umask设为022(系统默认是077,一般都可以改为022)。

anon_upload_enable=YES,允许匿名用户具有上传权限,很明显,必须启用write_enable=YES,才

可以使用此项。同时我们还必须建立一个允许ftp用户可以读写的目录(前面说过,ftp是匿名用户的映射用户账号)。

anon_mkdir_write_enable=YES,允许匿名用户有创建目录的权利。

chown_uploads=YES,启用此项,匿名上传文件的属主用户将改为别的用户账户,注意,这里建议不要指定root账号为匿名上传文件的属主用户!

chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。

chroot_list_enable=YES,可以用一个列表限定哪些本地用户只能在自己目录下活动,如果chroot_local_user=YES,那么这个列表里指定的用户是不受限制的。

chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpd.chroot_list)。

nopriv_user=ftpsecure,指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的独立用户。这是vsftpd系统推荐选项。

async_abor_enable=YES,强烈建议不要启用该选项,否则将可能导致出错!

ascii_upload_enable=YES;ascii_download_enable=YES,默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的'请求,启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。

(注意:启用ascii_download_enable选项会让恶意远程用户们在ASCⅡ模式下用"SIZE/big/file"这样的指令大量消耗FTP服务器的I/O资源。)

这些ASCⅡ模式的设置选项分成上传和下载两个,这样我们就可以允许ASCⅡ模式的上传(可以防止上传脚本等恶意文件而导致崩溃),而不会遭受拒绝服务攻击的危险。

(3)用户连接和超时选项

idle_session_timeout=600,可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。

data_connection_timeout=120,设定默认的数据连接超时时间。

(4)服务器日志和欢迎信息

dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容

ftpd_banner=Welcome to blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。

xferlog_enable=YES,启用记录上传/下载活动日志功能。

xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log.

知道了上面各个选项的含义,你可以根据自己的需要进行配置,达部分的选项一般用不着改动,配置完了以后,确认vsftpd服务已经启动后,我们可以在Windows主机的S命令窗口里输入"ftp Addres"(用实际的FTP服务器IP地址或者域名代替Addres),注意用户名、密码都是ftp(ftp是匿名用户的映射用户账号)。

如果登陆不上,可以试验在LINUX下本地登陆看看,还有可以在LINUX登陆WINDOWS下的FTP,试验能否登陆成功,如果可以,那很有可能登陆不上LINUX下的FTP的原因是LINUX的防火墙的原因,可以用rpm -q vsftpd命令来查看,如果防火墙开启,可以用命令把其关闭,也可以在图形界面下"主菜单"中的"system settings"中选择"seurity level",安装系统的时候如果没有改动,默认是的seurity level是"Medium",你可以不改动该设置,选中下面"allow incomning"中的"FTP",当然你也可以设置seurity level为"NO firewall",这样再在Windows下登陆LINUX的FTP,应该可以登陆了。

登陆后具体ftp下的操作就参考有关ftp的命令了,登陆后的路径为/var/ftp/pub,把你所需要操作的文件可以放在该目录下,我这里用付ftp主要是在下载linux编译后的文件到板子上,上传文件到LINUX上一般不用通过ftp,注意你在ftp下对文件进行一些操作的时候很可能被fail掉,注意根据情况设置文件的操作权限。

;

(责任编辑:IT教学网)

更多

推荐导航代码文章