热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS5.10系统中编译安装ProFTPd服务器

#下载[root@localhostDesktop]#tarjxvfproftpd-1.3.3.tar.bz2[root@localhostDesktop]#cdproftpd-1.3.3[root@localhostproftpd-1.3.3]#./configure[root@localhostproftpd-1.

#下载

[root@localhost Desktop]# tar jxvf proftpd-1.3.3.tar.bz2

[root@localhost Desktop]# cd proftpd-1.3.3

[root@localhost proftpd-1.3.3]# ./configure

[root@localhost proftpd-1.3.3]# make

[root@localhost proftpd-1.3.3]# make install

安装顺利完成~~

1、设置用户及其目录

[root@localhost proftpd-1.3.3]# groupadd ftpuser

//增加一个组ftpuser

[root@localhost proftpd-1.3.3]# useradd -d /software -g ftpuser ?s /sbin/nologin software

 [root@localhost proftpd-1.3.3]# passwd software

Password:software

增加一个用户software,属于ftpuser,文件夹为/software

[root@localhost proftpd-1.3.3]# useradd -d /www -g ftpuser -s /sbin/nologin www

[root@localhost proftpd-1.3.3]# passwd www

Password:webuser

增加一个用户www,属于ftpuser,文件夹为/www

[root@localhost /]# ls -l

总计 162

drwxr-xr-x   2 root     root     4096 06-15 01:27 bin

drwxr-xr-x   4 root     root     1024 06-15 15:41 boot

drwxr-xr-x  12 root     root     4020 06-15 15:54 dev

drwxr-xr-x 101 root     root    12288 06-15 16:14 etc

drwxr-xr-x   3 root     root     4096 06-15 06:42 home

drwxr-xr-x  13 root     root    12288 06-15 01:26 lib

drwx------   2 root     root    16384 06-15 06:18 lost+found

drwxr-xr-x   3 root     root     4096 06-15 15:55 media

drwxr-xr-x   2 root     root        0 06-15 15:54 misc

drwxr-xr-x   3 root     root     4096 2010-06-15 mnt

drwxr-xr-x   2 root     root        0 06-15 15:54 net

drwxr-xr-x   2 root     root     4096 06-15 02:49 opt

dr-xr-xr-x 155 root     root        0 06-15 15:52 proc

drwxr-x---  18 root     root     4096 06-15 16:19 root

drwxr-xr-x   2 root     root    12288 06-15 01:27 sbin

drwxr-xr-x   4 root     root        0 06-15 15:52 selinux

drwx------   3 software ftpuser  4096 06-15 16:12 software

drwxr-xr-x   2 root     root     4096 01-27 05:43 srv

drwxr-xr-x  11 root     root        0 06-15 15:52 sys

drwxrwxrwt  18 root     root     4096 06-15 16:19 tmp

drwxr-xr-x  14 root     root     4096 06-15 06:21 usr

drwxr-xr-x  22 root     root     4096 06-15 06:28 var

drwx------   3 www      ftpuser  4096 06-15 16:14 www

这两个文件夹已经有了,并且已经属于相应的组了,接下来就要为其设置属性

[root@localhost /]# chmod -R 755 /software

ftp软件目录权限为755,ftpuser对其有读、写、执行权力,其他用户只有读和执行权力

[root@localhost /]# chmod -R 777 /www

网站目录一般设为777,

一时找不到配置了,找一下

[root@localhost /]# updatedb

[root@localhost /]# locate proftpd.conf

/usr/local/etc/proftpd.conf

[root@localhost proftpd-1.3.3]# cd /usr/local/etc/

[root@localhost etc]# ls

proftpd.conf

[root@localhost etc]# cp proftpd.conf proftpd.conf.save

[root@localhost etc]# vi proftpd.conf

开始编辑配置文件

# This is a basic ProFTPD configuration file (rename it to

# 'proftpd.conf' for actual use.  It establishes a single server

# and a single anonymous login.  It assumes that you have a user/group

# "nobody" and "ftp" for normal operation and anon.

ServerName                                            test

#这里可以改服务器名字

ServerType                                             standalone

DefaultServer                                          on

# Port 21 is the standard FTP port.

Port                                                       21

# Don't use IPv6 support by default.

UseIPv6                                                  off

# Umask 022 is a good standard umask to prevent new dirs and files

# from being group and world writable.

Umask                                                   022

# To prevent DoS attacks, set the maximum number of child processes

# to 30.  If you need to allow more than 30 concurrent connections

# at once, simply increase this value.  Note that this ONLY works

# in standalone mode, in inetd mode you should use an inetd server

# that allows you to limit maximum number of processes per service

# (such as xinetd).

MaxInstances                                          30

# Set the user and group under which the server will run.

User                                                      nobody

Group                                                    nobody

#此处一定要改为Group nobody ,否则无法启动

# To cause every FTP user to be "jailed" (chrooted) into their home

# directory, uncomment this line.

DefaultRoot ~ ftpuser

#限制ftpuser在其目录里,要去掉前面的#

DelayEngine off

IdentLookups off

#在使用者登入时反查对方的DNS记录。

UseReverseDNS off

#在使用者登入时反查对方的DNS记录。

关掉这三项可以加快速度

# Normally, we want files to be overwriteable.

AllowOverwrite                         on

AllowRetrieveRestart on # 下载时,允许断点续传  

AllowStoreRestart on # 上传时,允许断点续传 

# Bar use of SITE CHMOD by default

  DenyAll

组织任何人设置权限

# A basic anonymous configuration, no upload directories.  If you do not

# want anonymous users, simply delete this entire section.

  User                                                    ftp

  Group                                                 ftp

  # We want clients to be able to login with "anonymous" as well as "ftp"

  UserAlias                                             anonymous ftp 匿名用户即为ftp用户

  # Limit the maximum number of anonymous logins

  MaxClients                                           10

  # We want 'welcome.msg' displayed at login, and '.message' displayed

  # in each newly chdired directory.

  DisplayLogin                                        welcome.msg

  DisplayChdir                                         .message

  # Limit WRITE everywhere in the anonymous chroot

 

    DenyAll

 

 

DenyALL  

AllowGroup ftpuser 

 

#设置只有ftpusers组的用户可以ftp登录  

 

 

AllowUser web  

 

 

# 设置帐号websoul拥有/www目录的所有权限  

 

 

AllowUser software 

 

 

#  设置帐号softsoul拥有/software目录的所有权限  

# ServerIdent off # 屏蔽服务器版本信息  

MaxLoginAttempts 6 # 最大连接次数  

WtmpLog on # 是否要把ftp记录在日志中,如果不想可以设置成off屏蔽掉log日志。  

TimeoutIdle 600 # 客户端idel时间设置,默认就是600秒    

AllowForeignAddress on   #支持FXP

[root@localhost /]# ln ?s /usr/local/etc/proftpd.conf /etc/proftpd.conf

为方便下次寻找,设置下连接

每次修改配置文件后要重启服务才能生效,所以将其加入服务

以下代码将proftpd加入服务中

[root@localhost proftpd-1.3.3]## cp ./contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd

#直接运行权限不够,增加可运行属性

[root@localhost proftpd-1.3.3]# chmod +x /etc/rc.d/init.d/proftpd

[root@localhost proftpd-1.3.3]# /etc/rc.d/init.d/proftpd start

#会有ok提示

[root@localhost proftpd-1.3.3]# /etc/rc.d/init.d/proftpd stop

以下两条命令也是同样的效果

[root@localhost proftpd-1.3.3]# service proftpd start

[root@localhost proftpd-1.3.3]# service proftpd stop

#用ps-ax|grep proftpd查找,无proftpd进程。

[root@localhost proftpd-1.3.3]# vi /etc/rc.local

加入/usr/local/sbin/proftpd

为了以后方便访问,要将CentOS设成固定IP

IP:192.168.65.132 根据自己vmware里的设置更改,我是用的NAT方式

Mask:255.255.255.0

Gateway:192.168.65.2

DNS与主机相同就行,也可自行更改

[root@localhost proftpd-1.3.3]# service network restart

试了一下,可以上网


在CentOS中127.0.0.1或者192.168.65.132都可以

打开防火墙

在xp中,使用192.168.5.132访问,下载上传文件也没有问题

如果外网需要访问,在vmware中增加端口映射,

访问是设置IP为主机IP,端口为自己设定的端口,我这边是2121,测试也成功


推荐阅读
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 离线安装Grafana Cloudera Manager插件并监控CDH集群
    本文详细介绍如何离线安装Cloudera Manager (CM) 插件,并通过Grafana监控CDH集群的健康状况和资源使用情况。该插件利用CM提供的API接口进行数据获取和展示。 ... [详细]
  • 深入解析ESFramework中的AgileTcp组件
    本文详细介绍了ESFramework框架中AgileTcp组件的设计与实现。AgileTcp是ESFramework提供的ITcp接口的高效实现,旨在优化TCP通信的性能和结构清晰度。 ... [详细]
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • 本文详细介绍了 Linux 系统中用户、组和文件权限的设置方法,包括基本权限(读、写、执行)、特殊权限(SUID、SGID、Sticky Bit)以及相关配置文件的使用。 ... [详细]
  • 本文深入探讨了 PHP 实现计划任务的方法,包括其原理、具体实现方式以及在不同操作系统中的应用。通过详细示例和代码片段,帮助开发者理解和掌握如何高效地设置和管理定时任务。 ... [详细]
  • 本文介绍如何配置SecureCRT以正确显示Linux终端的颜色,并解决中文显示问题。通过简单的步骤设置,可以显著提升使用体验。 ... [详细]
  • 本文详细探讨了Java命令行参数的概念、使用方法及在实际编程中的应用,包括如何通过命令行传递参数给Java程序,以及如何在Java程序中解析这些参数。 ... [详细]
  • 深入理解动态链接库及其应用
    本文将探讨动态链接库的基本概念,包括Windows下的动态链接库(DLL)和Linux下的共享库(Shared Library),并详细介绍如何在Linux环境中创建和使用这些库。 ... [详细]
  • 请看|间隔时间_Postgresql 主从复制 ... [详细]
author-avatar
利盈香玟倩文怡
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有