在Fedora系统上配置Proftpd服务器的教程 2017-03-31 来源:网络 字号:大 中 小 我要评论 收藏本文
在Linux系统中,FTP服务器软件有很多,都已经成熟,像vsftpd, wu-ftp, Pure-FTPd等。但这些软件安装配置起来都比较麻烦,搭建个人的FTP服务器,如果不选用发行版自带的FTP软件的话,还是Proftpd比较简单。 Proftpd是一款开放源码的FTP服务器软件,它是原来世界范围使用最广泛的wu-ftpd的改进版,它修正了wu-ftpd的许多缺陷,在许多方面进行了重大的改进,其中一个重要变化就是它学习了Apache 的配置方式,使proftpd的配置和管理更加简单易懂。 ProFTPD设计目标是实现一个安全且易于设定的FTP Server。 有两种运行方式,独立服务器与超级服务器的子服务器。无论从安全性和稳定性,还是可配置性来说都是非常好的选择。 面是一些 ProFTPD 服务器的主要功能: 每个目录都可以包含 ".ftpaccess" 文件用于访问控制,类似 Apache 的 ".htaccess" 1. 安装 ProFTPD 复制代码 代码如下:$ sudo dnf -y install proftpd proftpd-utils 2. 配置 ProFTPD 现在,我们将修改软件的一些配置。要配置它,我们需要用文本编辑器编辑 /etc/proftpd.conf 文件。/etc/proftpd.conf 文件是 ProFTPD 软件的主要配置文件,所以,这个文件的任何改动都会影响到 FTP 服务器。在这里,是我们在初始步骤里做出的改动。 复制代码 代码如下:$ sudo vi /etc/proftpd.conf 之后,在用文本编辑器打开这个文件后,我们会想改下 ServerName 以及 ServerAdmin,分别填入自己的域名和 email 地址。下面是我们改的。 复制代码 代码如下:ServerName "ftp.linoxide.com" ServerAdmin arun@linoxide.com 在这之后,我们将把下面的设定加到配置文件里,这样可以让服务器将访问和授权记录到相应的日志文件里。 复制代码 代码如下:ExtendedLog /var/log/proftpd/access.log WRITE,READ default ExtendedLog /var/log/proftpd/auth.log AUTH auth ![]() 3. 添加 FTP 用户 在设定好了基本的配置文件后,我们很自然地希望添加一个以特定目录为根目录的 FTP 用户。目前登录的用户自动就可以使用 FTP 服务,可以用来登录到 FTP 服务器。但是,在这篇教程里,我们将创建一个以 ftp 服务器上指定目录为主目录的新用户。 下面,我们将建立一个名字是 ftpgroup 的新用户组。 复制代码 代码如下:$ sudo groupadd ftpgroup 然后,我们将以目录 /ftp-dir/ 作为主目录增加一个新用户 arunftp 并加入这个组中。 复制代码 代码如下:$ sudo useradd -G ftpgroup arunftp -s /sbin/nologin -d /ftp-dir/ 在创建好用户并加入用户组后,我们将为用户 arunftp 设置一个密码。 复制代码 代码如下:$ sudo passwd arunftp Changing password for user arunftp. New password: Retype new password: passwd: all authentication tokens updated successfully. 现在,我们将通过下面命令为这个 ftp 用户设定主目录的读写权限(LCTT 译注:这是SELinux 相关设置,如果未启用 SELinux,可以不用)。 复制代码 代码如下:$ sudo setsebool -P allow_ftpd_full_access=1 $ sudo setsebool -P ftp_home_dir=1 然后,我们会设定不允许其他用户移动或重命名这个目录以及里面的内容。 复制代码 代码如下:$ sudo chmod -R 1777 /ftp-dir/ 4. 打开 TLS 支持 目前 FTP 所用的加密手段并不安全,任何人都可以通过监听网卡来读取 FTP 传输的数据。所以,我们将为自己的服务器打开 TLS 加密支持。这样的话,需要编辑 /etc/proftpd.conf 配置文件。在这之前,我们先备份一下当前的配置文件,可以保证在改出问题后还可以恢复。 复制代码 代码如下:$ sudo cp /etc/proftpd.conf /etc/proftpd.conf.bak 然后,我们可以用自己喜欢的文本编辑器修改配置文件。 复制代码 代码如下:$ sudo vi /etc/proftpd.conf 然后,把下面几行附加到我们在第 2 步中所增加内容的后面。 TLSEngine on 然后,我们需要生成 SSL 凭证 proftpd.pem 并放到 /etc/pki/tls/certs/ 目录里。这样的话,首先需要在 Fedora 22 上安装 openssl。 复制代码 代码如下:$ sudo dnf install openssl 然后,可以通过执行下面的命令生成 SSL 凭证。 复制代码 代码如下:$ sudo openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem 系统会询问一些将写入凭证里的基本信息。在填完资料后,就会生成一个 2048 位的 RSA 私钥。 Generating a 2048 bit RSA private key 复制代码 代码如下:$ sudo chmod 600 /etc/pki/tls/certs/proftpd.pem 5. 允许 FTP 通过 Firewall 现在,需要允许 ftp 端口,一般默认被防火墙阻止了。就是说,需要允许 ftp 端口能通过防火墙访问。 如果 打开了 TLS/SSL 加密,执行下面的命令。 复制代码 代码如下:$ sudo firewall-cmd --add-port=1024-65534/tcp $ sudo firewall-cmd --add-port=1024-65534/tcp --permanent 如果 没有打开 TLS/SSL 加密,执行下面的命令。 复制代码 代码如下:$ sudo firewall-cmd --permanent --zone=public --add-service=ftp success 然后,重新加载防火墙设定。 复制代码 代码如下:$ sudo firewall-cmd --reload success 6. 启动并激活 ProFTPD 全部设定好后,最后就是启动 ProFTPD 并试一下。可以运行下面的命令来启动 proftpd ftp 守护程序。 复制代码 代码如下:$ sudo systemctl start proftpd.service 然后,我们可以设定开机启动。 复制代码 代码如下:$ sudo systemctl enable proftpd.service Created symlink from /etc/systemd/system/multi-user.target.wants/proftpd.service to /usr/lib/systemd/system/proftpd.service. 7. 登录到 FTP 服务器 现在,如果都是按照本教程设置好的,我们一定可以连接到 ftp 服务器并使用以上设置的信息登录上去。在这里,我们将配置一下 FTP 客户端 filezilla,使用 服务器的 IP 或名称 *作为主机名,协议选择 *FTP,用户名填入 arunftp,密码是在上面第 3 步中设定的密码。如果你按照第 4 步中的方式打开了 TLS 支持,还需要在加密类型中选择 要求显式的基于 TLS 的 FTP,如果没有打开,也不想使用 TLS 加密,那么加密类型选择 简单 FTP。 ![]() 要做上述设定,需要打开菜单里的文件,点击站点管理器,然后点击新建站点,再按上面的方式设置。 ![]() 随后系统会要求允许 SSL 凭证,点确定。之后,就可以从我们的 FTP 服务器上传下载文件和文件夹了。 总结 |
上一篇:fedora
下一篇:Fedora内核构成成分是什么?
看完本文,您的心情是?
评论排行
- ·如何清除DNS缓存 使用命令清理dns缓存方法(2)
- ·Win8.1升级Win10遇到错误代码0xc190010...(1)
- ·Windows RT 8.1 Update 3九月发布 ...(0)
- ·如何将ubuntu安装到U盘实现即插即用(0)
- ·微软否认Xbox One有远程关闭开关(0)
- ·Surface Book详细拆解:千万不要自己动手修(0)
- ·WIN10免费升级正版手册(5分钟读懂WIN10...(0)
- ·你的今日头条账号为什么会被封?(0)
- ·win7电脑怎么翻墙看国外的网站?(0)
- ·shell脚本运行5秒后自动退出的代码(0)
- ·jsp 不支持EL表达式,解决办法(0)
- ·table合并单元格与img图片铺满整个td的html(0)
- ·Mac OS X 系统备份指南(0)
- ·Shell脚本注释写法(0)
- ·windows8激活码、序列号、激活密钥、激...(0)
- ·从一个不错的留言本弄的mysql数据库操作类(0)
- ·PHP漏洞全解(详细介绍)(0)
- ·phpBB BBcode处理的漏洞(0)
- ·安装Win10技术预览版有风险吗?win10预...(0)
- ·基于mysql的论坛(6)(0)
猜你喜欢
- ·FC8下备份linux系统
- ·关掉Fedora 8不需要的服务
- ·Fedora下IPv6的相关设置操作详解
- ·FC7中用yum自动搜索安装软件
- ·修复grub/lilo引导菜单
- ·Fedora 13 正式版安装教程[图文]
- ·Fedora系统怎么设置全局快捷键?
- ·fedora8在右键增加打开终端
- ·重装Windows系统,修复Fedora Linux启动
- ·让Fedora6 支持超过4G的内存
- ·Fedora 8下安装mplayer和evaqq视频下载
- ·Fedora 9.0 Apache+PHP+MYSQL 环境安装
- ·fedora7下共享上网
- ·在Fedora系统上设置和取消IPv6地址使用的...
- ·Fedora 4升级到Fedora 9
- ·Fedora11使用Root账号登录的方法
热门推荐
- ·Fedora下解决apache配置出错
- ·通过硬盘安装Fedora
- ·Fedora下配置ipv6的Apache服务器的方法
- ·让Fedora6 支持超过4G的内存
- ·fedora 9.0 添加新到yum源和fastestmirror插件
- ·Fedora Linux系统配置Samba服务器
- ·fedora9.0 DVD正式版下载地址
- ·Fedora系统的管理员root密码怎么重置?
- ·Fedora系统下检测声卡的命令
- ·fedora 安装注意事项
- ·在Fedora系统下创建livecd的简单方法
- ·fedora21系统怎么把英语改变中文?
- ·Fedora下IPv6的相关设置操作详解
- ·防止SSH暴力破解密码的方法(DenyHosts)
- ·硬盘安装Fedora-9-i386-DVD方法
本月排行
最近更新
- ·Ubuntu和Fedora上通过图形化界面或源码安装软件包的方法
- ·Fedora怎么把home下文件夹名改成英文?
- ·Fedora上安装Xmame模拟器运行拳皇97的示例
- ·fedora21系统怎么把英语改变中文?
- ·在Fedora系统上设置和取消IPv6地址使用的方法详解
- ·Fedora内核构成成分是什么?
- ·在Fedora系统上配置Proftpd服务器的教程
- ·fedora
- ·Fedora Linux系统配置Samba服务器
- ·Fedora系统内核的安装和删除旧内核的教程
- ·Fedora系统的管理员root密码怎么重置?
- ·fedora21怎么安装佳能打印机驱动?
- ·Fedora Core 4.0 安装图解
- ·在Fedora系统下创建livecd的简单方法
- ·Fedora 9.0 详细安装图解
- ·Fedora系统的一些基本配置分享
- ·安装Fedora作为工作环境后的一些配置建议
- ·Fedora下IPv6的相关设置操作详解
- ·Fedora系统怎么设置全局快捷键?
- ·Fedora 10 安装教程全程图解推荐