博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在openSUSE 13.1中配置FTP服务器
阅读量:6095 次
发布时间:2019-06-20

本文共 2929 字,大约阅读时间需要 9 分钟。

vsftpd ( 非常安全的文件传输协议守护进程) 是Unix/Linux系统中的一个安全快速的FTP服务器。 在这篇指导教程中,让我们看看在openSUSE 13.1中怎样使用vsftpd来配置一个基本的FTP服务器。

安装 vsftpd

作为root用户登录然后输入以下命令。

# zypper in vsftpd

启动 vsftpd 服务然后通过设置使它在每次系统重启时自动启动。

# systemctl enable vsftpd.service# systemctl start vsftpd.service

配置 vsftpd

为ftp用户新建一个文件夹。

# mkdir /srv/ftp

创建一个名为 ftp-users 的组。

# groupadd ftp-users

让我们来创建一个叫unixmen的示例用户 并设置其主目录为 /srv/ftp 组为 ftp-users 。

# useradd -g ftp-users -d /srv/ftp/ unixmen

为新用户设置密码。

# passwd unixmen

使ftp主目录 /srv/ftp/ 可以被ftp用户所访问。

# chmod 750 /srv/ftp/# chown unixmen:ftp-users /srv/ftp/

编辑 vsftpd.conf 文件

# nano /etc/vsftpd.conf

设置如下的更改。

[...]#Uncomment and  Set YES to enable write.write_enable=YES[...]# Uncomment and Set banner name for your websiteftpd_banner=Welcome to Unixmen FTP service.[...]# Uncommentls_recurse_enable=YES[...]# Uncomment and set YES to allow local users to log in.local_enable=YES[...]# To disable anonymous access, set NO.anonymous_enable=NO[...]# Uncomment to enable ascii download and upload.ascii_upload_enable=YESascii_download_enable=YES[...]## Add at the end of this  file ##use_localtime=YES

保存并退出文件。

测试本地FTP服务器

首先 让我们按如下步骤尝试登录FTP服务器

# ftp localhostTrying ::1:21 ...Connected to localhost.220 (vsFTPd 3.0.2)Name (localhost:root): unixmen331 Please specify the password.Password: 230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp>

正如你在上面所输出的那样, 我们能够用unixmen用户登录到ftp服务器。

测试远程FTP服务器

默认 openSUSE 内置的防火墙不允许远程系统登录FTP。所以让我们允许vsftpd服务通过suse的防火墙。然后我们需要打开: Yast -> 安全性与用户 -> 防火墙.

在防火墙界面,进入 允许服务. 在区域选择下拉框中,选择 外部区域 在服务允许下拉框中,选择 vsftpd 服务器 然后点击添加。

单击下一步并关闭Yast控制中心

现在尝试从远程系统连接FTP。

我试着从我的ubuntu桌面系统登录FTP服务器。

sk@sk:~$ ftp 192.168.1.53Connected to 192.168.1.53.220 (vsFTPd 3.0.2)Name (192.168.1.53:sk): unixmen331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp>

正如你在上面输出中所看到的,我能够连接到ftp服务器。如果不允许vsftpd服务通过防火墙,你将会得到一个连接超时的报错。

从浏览器连接

打开你的浏览器并导航到ftp://ip-address/。输入ftp用户名和密码。

使用FileZilla连接到FTP服务器

对于新手来说,在命令行模式下工作可能会很烦恼。所以让我们来安装一个叫的图形化的FTP客户端。它可以让我们登陆FTP变得更加简单:

几乎所有的发行版在它们的官方软件仓库中都有filezilla客户端。 为了在基于Linux的系统上安装filezilla 需要键入以下的命令:

在基于Ubuntu的系统中:

$ sudo apt-get install filezilla

在Fedora/Redhat系统中:

$ sudo yum install filezilla

在openSUSE中:

# zypper in filezilla

安装完fielzilla后打开它。输入ftp服务器的IP地址、用户名和密码,然后点击快速连接。

为了增加安全性,你可以通过将用户添加到 /etc/vsftpd.chroot_list文件中来限制特定用户对FTP服务器的访问。

编辑 vsftpd.conf 文件,

nano /etc/vsftpd.conf

设置如下的更改.

[...]# Uncomment and set YESchroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd.chroot_list[...]

创建 文件 /etc/vsftpd.chroot_list,

nano /etc/vsftpd.chroot_list

添加你希望能够访问FTP服务器的用户。我添加了用户unixmen

unixmen

重启ftp服务.

# systemctl restart vsftpd.service

现在你能够使用chroot_list文件中列出的用户来连接到FTP服务器。

如果chroot_list以外的用户想访问FTP服务器,他们将得到如下错误提示。

500 OOPS: could not read chroot() list file:/etc/vsftpd.chroot_listftp: Login failed

就是现在这样,你的FTP服务器已经可以使用了,好好享受吧!


原文发布时间为:2014-01-02

本文来自云栖社区合作伙伴“Linux中国”

转载地址:http://ruzza.baihongyu.com/

你可能感兴趣的文章
基于ssh反向代理实现的远程协助
查看>>
微信小程序,前端大梦想(四)
查看>>
shell文本过滤编程(十一):paste命令
查看>>
C++语言基础(13)-抽象类和纯虚函数
查看>>
js实现日期的相加减
查看>>
c# xml 节点拼接啥的·
查看>>
[转贴][微架构设计]微博计数器的设计(下)
查看>>
一起来编程吧,CodeLove初版发布
查看>>
我理解的OAuth 1.0a 的验证过程
查看>>
oracle 分区表exchange原理
查看>>
json_decode详解
查看>>
phpstorm+Xdebug断点调试PHP
查看>>
Haproxy+Keepalived高可用环境部署梳理(主主和主从模式)
查看>>
adsas数据库去O记
查看>>
推荐一个好的Redis GUI 客户端工具
查看>>
涉及事件开发应用委托
查看>>
就在明天!海口人周六夜市逛起来,下一条4999元大奖锦鲤就是你
查看>>
警告|这8大安全威胁可能会导致你的公司破产
查看>>
身怀年俗技艺的你 快来支付宝“到位”把年味散出去
查看>>
宝宝树11年创业纪录片曝光 王怀南:他们不知道我的厉害
查看>>