基于 proftpd 配置加密 FTP

外包达人
• 阅读 6472

该文档主要是记录 proftpd 配置 SSL/TSL 的安装部署配置文档

环境

服务器环境

  • CentOS 5.8

客户端端软件环境

  • lftp-4.6.1
  • openssl-1.0.2

服务器端软件环境

  • proftpd:【我这边是使用的最新版】
  • openssl

服务器端软件安装

安装 proftpd

  1. 下载最新版的 proftpd

    wget https://github.com/proftpd/proftpd/archive/master.zip

  2. 安装

    unzip master
    cd proftpd-master
    ./configure --with-modules=mod_tls --prefix=/apps/svr/proftpd
    make && sudo make install
    

客户端软件安装

更新 gnutls 版本

sudo yum -y install gnutls*

安装最新版本的 openssl-1.0.2

  1. 下载 openssl-1.0.2

    wget http://www.openssl.org/source/openssl-1.0.2.tar.gz

  2. 解压编译安装

    tar -zxvf openssl-1.0.2.tar.gz
    cd openssl-1.0.2
    ./config
    make && sudo make install
    

安装 lftp-4.6.1

  1. 下载 lftp

    wget http://lftp.yar.ru/ftp/lftp-4.6.1.tar.gz
    
  2. 解压编译安装

    ./configure --without-gnutls  --with-openssl=/usr/local/ssl
    make && sudo make install
    

配置,使用 Proftpd

生成证书

mkdir -p /home/test/proftpd/etc/ftpcert
openssl genrsa 1024 > /home/test/proftpd/etc/ftpcert/host.key
openssl req -new -x509 -nodes -sha1 -days 365 -key host.key > /home/test/proftpd/etc/ftpcert/host.cert2

### 配置 proftpd

配置文件如下,/home/test/proftpd/etc/proftpd.conf

ServerName                      "ProFTPD Default Installation"
ServerType                      standalone
DefaultServer                   on
Port                            21 
UseIPv6                         off
Umask                           022
#日志格式
LogFormat                       default "%h %l %u %t \"%r\" %s %b"
LogFormat                       auth    "%v [%P] %h %t \"%r\" %s"
LogFormat                       write   "%h %l %u %t \"%r\" %s %b"
DefaultTransferMode             binary
ServerIdent                     off
MaxInstances                    50
User                            nobody
Group                           nobody
DefaultRoot ~
RootLogin                       off
RequireValidShell               off
AllowOverwrite                  on
#加快 ftp 的连接效率,去掉 DNS反向查询
UseReverseDNS                   off
IdentLookups                    off
TransferLog                     /tmp/logs/ftpd/xferlog
ExtendedLog                     /tmp/logs/ftpd/access.log WRITE,READ write
ExtendedLog                     /tmp/logs/ftpd/auth.log AUTH auth
ExtendedLog                     /tmp/logs/ftpd/paranoid.log ALL default
<Limit SITE_CHMOD>
  DenyAll
</Limit>
###匿名用户,全局
<Anonymous ~ftp>
  User                          ftp
  Group                         ftp
  UserAlias                     anonymous ftp
  MaxClients                    10
  DisplayLogin                  welcome.msg
  DisplayChdir                  .message

  <Limit WRITE>
    DenyAll
  </Limit>
</Anonymous>
#### 配置 TLS 部分
<IfModule mod_tls.c>
  TLSEngine on
  TLSLog /tmp/logs/ftpd/proftpd-tls.log
  TLSProtocol SSLv3 TLSv1
  TLSRequired on
  TLSRSACertificateFile /home/test/proftpd/etc/ftpcert/host.cert
  TLSRSACertificateKeyFile /home/test/proftpd/etc/ftpcert/host.key
  TLSVerifyClient off
  TLSRenegotiate required off
</IfModule>
####对ftp的登录用户做限制
<Limit LOGIN>
  AllowUser test
  DenyAll
</Limit>
#### 对 FTP 的访问 IP 做限制
<Limit LOGIN>
  Allow from 192.168.xx.xx
  DenyAll
</Limit>
<Directory />
  <Limit ALL>
    AllowUser test
    DenyAll
  </Limit>
</Directory>

proftp 的启动命令是:

  • 后台启动命令

    sudo /apps/svr/proftpd/sbin/proftpd -c /apps/svr/proftpd/etc/proftpd.conf
    
  • 调试命令

    sudo /apps/svr/proftpd/sbin/proftpd -c /apps/svr/proftpd/etc/proftpd.conf -d 10 -n 
    

    注:上面的 -n 选项是表示不后台启动,-d 选项是 debug 级别,从 0-10 级别,10 是最高级别

测试

Linux 客户端软件 lftp 测试

 lftp -u test 192.168.xx.xx
Password: (这里输入 test 的密码)
lftp apps@192.168.44.105:~> ls                     
-rw-rw-r--   1 apps     apps        70305 Jun 17  2014 MySQL-python-1.2.3.tar.gz
drwxr-xr-x  19 root     root         4096 Jul 25  2013 Python-2.7
-rw-rw-r--   1 apps     apps       256862 Jun 17  2014 setuptools-0.6c11.tar.gz
drwxr-xr-x  15 root     root         4096 Jun 20  2014 software
drwxr-xr-x   8 root     root         4096 Jul 23  2014 tornado-2.0

windows 客户端软件 FileZilla 测试

  1. windows 下面安装 FileZilla
  2. 然后配置 FileZilla 使用 SSL 加密的方式连接服务器,如下图样配置
    基于 proftpd 配置加密 FTP
    配置完成后,点击连接按钮,会弹出一个证书,点击信任即可。
点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Aidan075 Aidan075
4年前
如何用python进行数据分析——00环境配置
↑一个宝藏公众号,长的好看的人都关注了 简单介绍一下Python吧Python是一种面向对象程序设计语言,由荷兰人吉多·范罗苏姆于1989年底发明。目前是最常用也是最热门的一门编程语言之一,应用非常广泛。(不是这个面对对象)为什么选择python呢?有人说python是万能的,除了生孩子不会,什么都会。有人说python是未来
Aidan075 Aidan075
4年前
如何用python进行数据分析——00环境配置
↑一个宝藏公众号,长的好看的人都关注了 简单介绍一下Python吧Python是一种面向对象程序设计语言,由荷兰人吉多·范罗苏姆于19
Wesley13 Wesley13
4年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
4年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
4年前
ELK学习笔记之配置logstash消费kafka多个topic并分别生成索引
0x00 filebeat配置多个topicfilebeat.prospectors:input_type:logencoding:GB2312fields_under_root:truefields:添加字段
Wesley13 Wesley13
4年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Java服务总在半夜挂,背后的真相竟然是... | 京东云技术团队
最近有用户反馈测试环境Java服务总在凌晨00:00左右挂掉,用户反馈Java服务没有定时任务,也没有流量突增的情况,Jvm配置也合理,莫名其妙就挂了
Python进阶者 Python进阶者
2年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
外包达人
外包达人
Lv1
渐老念乡国,先归独羡君。
文章
3
粉丝
0
获赞
0