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

记一次ftp服务器搭建

需求团队日渐壮大,需要FTP服务器满足数据交换需求。准备查阅资料,主流使用vsftpd提供ftp服务。考虑日后扩容,选择LVM对物理磁盘进行管理。步骤建立储存池假设两款新硬盘为de

需求

团队日渐壮大,需要FTP服务器满足数据交换需求。


准备

查阅资料,主流使用vsftpd提供ftp服务。

考虑日后扩容,选择LVM对物理磁盘进行管理。


步骤


建立储存池

假设两款新硬盘为/dev/sdb/dev/sdc首先建立group

$ sudo apt install lvm2
$ sudo vgcreate lvm /dev/sdb /dev/sdc
Physical volume "/dev/sdb" successfully created.
Physical volume "/dev/sdc" successfully created.
Volume group "lvm" successfully created

使用全部空间建立volume默认采用Linear模式,其他模式详见LVM Logical Volumes Red Hat Enterprise Linux 5

注意:有关Striped模式个人理解类似于raid 0提高i/o同时增加风险,后期扩容修改stripe number非常复杂,不建议采用

$ sudo lvcreate -l 100%FREE -n ftp lvm
Logical volume "ftp" created.
$ sudo lvscan
ACTIVE '/dev/ftp/ftp_logic' [<6.99 TiB] inherit

格式化磁盘,直接使用全盘不分区

$ sudo mkfs.ext4 /dev/lvm/ftp

挂载分区

$ sudo mount /dev/lvm/ftp /mnt/ftp

添加用户

添加一个只用于ftp的用户test限制登陆且$HOME指向储存池

sudo useradd test -d /mnt/ftp/test -s /usr/sbin/nologin
sudo passwd test

安装服务

sudo apt install vsftpd

配置参数

sudo vi /etc/vsftpd.conf
local_enable=YES
write_enable=YES
allow_writeable_chroot=YES
chroot_local_user=YES
pam_service_name=ftp

简单解释这些参数:



  • local_enable: 允许本地用户登陆

  • write_enable: 这个好理解,不开只能读

  • allow_writeable_chroot: 不开chroot登陆会报权限错误

  • chroot_local_user: 限制登陆用户只能看见自己的$HOME

  • pam_service_name: 默认vsftpd会检查用户是否持有合法shell导致nologin用户收到530 Login incorrect

重启服务生效

sudo systemctl restart vsftpd

参考

partitioning - Manual install with LVM spanning multiple unpartitioned spaces - Ask Ubuntu

3.3. LVM Logical Volumes Red Hat Enterprise Linux 5 | Red Hat Customer Portal

server - vsftpd: 530 Login incorrect - Ask Ubuntu

Manpage of VSFTPD.CONF


原文链接:https://www.cnblogs.com/azureology/p/15968231.html



推荐阅读
  • 在CentOS 7上部署WebRTC网关Janus
    在CentOS 7上部署WebRTC网关Janus ... [详细]
  • 【Linux332】LVS的DR配置详解(ipvsadm+arptables)
    文章目录1.DR简 ... [详细]
  • 本文详细介绍了在CentOS 6.5 64位系统上使用阿里云ECS服务器搭建LAMP环境的具体步骤。首先,通过PuTTY工具实现远程连接至服务器。接着,检查当前系统的磁盘空间使用情况,确保有足够的空间进行后续操作,可使用 `df` 命令进行查看。此外,文章还涵盖了安装和配置Apache、MySQL和PHP的相关步骤,以及常见问题的解决方法,帮助用户顺利完成LAMP环境的搭建。 ... [详细]
  • LVS-DR数据包流向分析介绍
    下文给大家带来LVS-DR数据包流向分析介绍,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍, ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • FreeBSD环境下PHP GD库安装问题的详细解决方案
    在 FreeBSD 环境下,安装 PHP GD 库时可能会遇到一些常见的问题。本文详细介绍了从配置到编译的完整步骤,包括解决依赖关系、配置选项以及常见错误的处理方法。通过这些详细的指导,开发者可以顺利地在 FreeBSD 上完成 PHP GD 库的安装,确保其正常运行。此外,本文还提供了一些优化建议,帮助提高安装过程的效率和稳定性。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 如何在Mac上构建高效的本地服务器环境
    在Mac上构建高效的本地服务器环境,首先需要了解基本步骤:1. 配置目录基础;2. 启动Apache服务;3. 添加自定义文档至本地服务器;4. 查看自定义效果。此外,还可以通过手机或其他电脑访问本机服务器,以确保跨设备的兼容性和调试效果。Mac系统自带的Apache服务为本地开发提供了便捷的工具,本文将详细介绍每个步骤的具体操作方法。 ... [详细]
  • java大数据量调优(超赞值得收藏)
    从总体上来看,对于大型网站,比如门户网站,在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节: ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • 1.dd命令dd命令的全称为diskdump,对系统所有用户开放。该命令用于复制磁盘的数据块,且可在复制文件的同时指定转换的文件格式。命令选项参数说明ifFILE:输入文件名称,默 ... [详细]
author-avatar
syingjin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有