vsftpd(vsftpd和ftp区别)

2023-11-19 0 586

目录: 1、如何删除vsftpd 2、如何做到 vsFTPd 服务器的启动和关闭 3、linux vsftpd怎么使用 4、VSFTPD详解 如何删除vsftpd ftp用户指的是ftp这个用户还是使用ftp的用户, 如果是ftp这个用户 userdel ftp 命令删除 userdel + 用户 删除用户, 这里有两个概念, ftpusers文件:该文件中包含的用户账户将被禁止登陆vsftpd服务器,不管该用户是否在user_list文件中出现。通常将root、bin、daemon等特殊用户列在该文件中,禁止用于登陆FTP服务。 user_list文件:该文件中包含的用户账户可能被禁止登陆,也可能被允许登陆,具体在主配置文件vsftpd.conf中决定。当存在“userlist_enble=YES”的配置项时,user_list文件生效, 如果配置“userlist_deny=YES”,则仅禁止列表中的用户账户登陆,如果配置“user_deny=NO”,则仅允许列表中的用户账户登陆。 了解这两个概念后,只要将ftp用户编辑到ftpsusers文件中,该用户将不能登陆ftp。 如何做到 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 服务器的启动和关闭! 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! VSFTPD详解 VSFTPD:very secure ftp daemon(非常安全的ftp守护进程)       完全免费,源代码开源 执行 yum -y install vsftpd 注:(1)是否使用sudo权限执行请根据具体环境来决定 (2) rpm -qa|grep vsftpd 可通过这个检查是否已经安装vsftpd (3)配置文件默认在:/etc/vsftpd/vsftpd.conf (1)选择在根或者用户目录下创建ftp文件夹:mkdir ftpfile 如: mkdir /ftpfile (2)添加匿名用户: useradd ftpuser -d /ftpfile -s /sbin/nologin (3)修改ftpfile权限: chown -R ftpuser.ftpuser /ftpfile (4)重设ftpuser密码: passwd ftpuser 密码:xxx (1) cd /etc/vsftpd (2) sudo vim chroot_list (3)把新增的虚拟用户添加到此配置文件中,后续要引用 (4):wq保存退出 image.png image.png (5) sudo vim /etc/selinux/config ,修改为SELINUX=disables (6) :wq 保存退出 注:如果验证的时候碰到550拒绝访问请执行 sudo setsebool -P ftp_home_dir 1 然后重启Linux服务器,执行reboot命令 (7) sudo vim /etc/vsftpd/vsftpd.conf (1) sudo vim /etc/sysconfig/iptables (2)在原来iptables添加上以下配置 (3) :wq 保存退出 (4) sudo service iptables restart 执行命令重启防火墙 (1)执行 sudo service vsftpd restart 注:第一次启动时`shutting down vsftpd是failed不用理会,因为这是重启命令,保证starting vsftpd是OK即代表vsftpd服务成功 关闭: sudo service vsftpd stop 启动: sudo service vsftpd start 重启: sudo service vsftpd restart 【vsftpd】的内容来源于互联网,若引用不当,请发邮件456@456.cn联系删除

相关文章

猜你喜欢
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    文章总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 4975 +

    运行天数

你的前景,远超我们想象