热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

64位CentOS系统编译安装vsftpd并配置虚拟用户和本地用户

一、文章要点:1.64位系统下使用了PAM数据方式的虚拟用户配置2.修改关键脚本,是编译成功通过。必要步骤,详细安装配置说明过程。3.完全配置实例,Centos5.6编译安装vsftpd-2.3.4(配置本地用户登录、虚拟用户登录)1、下载wgethttp://xiazai.xiazaiba.c
一、文章要点:
1.64位系统下使用了PAM数据方式的虚拟用户配置
2.修改关键脚本,是编译成功通过。必要步骤,详细安装配置说明过程。
3.完全配置实例,Centos5.6编译安装vsftpd-2.3.4(配置本地用户登录、虚拟用户登录)

1、下载
wget http://xiazai.xiazaiba.com/Soft/V/vsftpd-2.3.4.tar.gz
tar xzvf vsftpd-2.3.4.tar.gz
cd vsftpd-2.3.4
关键步骤:由于64位系统的SO文件路径有变化,必须更改vsf_findlibs.sh脚本的将lib换成lib64
可以手工修改,也可以执行批量修改。
sed -i 's/lib//lib64//g' vsf_findlibs.sh    这里不执行,在64位系统是无法make成功的
mkdir /var/ftp/
useradd -d /var/ftp ftp
chown root.root /var/ftp/
chmod og-w /var/ftp/
make
make install
cd /etc/
cp /etc/vsftpd/vsftpd.conf.rpmsave vsftpd.conf二、详细安装配置说明过程: 1、首先是安装PAM
yum install pam-devel db4-utils

2、安装vsftpd
yum install vsftpd*

3、查看vsftpd是否加载 pam
ldd /usr/sbin/vsftpd
若输出中出现ibpam.so.0 => /lib/libpam.so.0,表示加载成功

4、生成用户验证数据库文件
1)创建loguser.txt,格式如下(用户、密码、用户、密码.....)
userid
pass
2)保存后,使用db_load -T -t hash -f loguser.txt /etc/vsftpd/vsftpd_login.db,查看该目录下文件是否生成
    设置访问权限 chmod 600 /etc/vsftpd_login.db

5、vim /etc/pam.d/vsftpd
    在头部添加如下行
    auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
   注意,若为64位操作系统,此处的路径应该修改为
    auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
   否则,启动vsftpd后,会报530错误,这个错误我也是找了好久才明白的,之前其他网站上同类说明文件,均没有说明此问题
   将其它的内容注释掉

6、vim /etc/vsftpd/vsftpd.conf,确保含有一下设置:
       anonymous_enable=NO
       local_enable=YES
       write_enable=NO
       anon_upload_enable=NO
       anon_mkdir_write_enable=NO
       anon_other_write_enable=NO
       chroot_local_user=YES
       guest_enable=YES
       guest_username=virtual //---这里为映射的本地用户
       listen=YES
       listen_port=21
       pasv_min_port=30000
       pasv_max_port=30999

7、启动vsftpd

8、完全配置实例
Centos5.6编译安装vsftpd-2.3.4(配置本地用户登录)
wget http://xiazai.xiazaiba.com/Soft/V/vsftpd-2.3.4.tar.gz
tar zxvf vsftpd-2.3.4.tar.gz
cd vsftpd-2.3.4
mkdir -p /usr/local/man/man8
mkdir -p /usr/local/man/man5
make && make install
cd ../
vim /etc/vsftpd.conf
mkdir /etc/vsftpd
touch /etc/vsftpd/chroot_list
echo "/usr/local/sbin/vsftpd &" >> /etc/rc.local
mkdir /var/ftp
touch /etc/vsftpd/userlist.chroot
touch /etc/vsftpd/userlist_deny.chroot
touch /var/log/vsftpd.log
mkdir -p /usr/share/empty

#防火墙 selinux设置
/usr/local/sbin/vsftpd &
setsebool -P ftpd_disable_trans on
/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
useradd -d /home/wwwroot -s /sbin/nologin adminftp
pkill vsftpd
/usr/local/sbin/vsftpd &

最后记得设置adminftp密码
命令:passwd adminftp然后输入两次新密码

推荐阅读
  • 1.tarzxfapache-activemq-5.12.0-bin.tar.gztarzxfapache-activemq-5.12.0-bin.tar.gz2.cdapac ... [详细]
  • 构建个人多节点Linux环境(CodeSheep)
    本文介绍如何通过虚拟机搭建一个多节点的Linux环境,这对于学习、实验和项目部署都具有重要意义。文章详细讲解了网络IP设置、节点间通信等关键步骤。 ... [详细]
  • 本文详细介绍了在 CentOS 系统中如何创建和管理 SWAP 分区,包括临时创建交换文件、永久性增加交换空间的方法,以及如何手动释放内存缓存。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • 本文介绍了SELinux的两种主要工作模式——强制模式和宽容模式,并提供了如何在CentOS 7中正确启用和配置SELinux的方法,以及在遇到登录问题时的解决策略。 ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 1、什么是过滤器管道使用竖线(|)将两个命令隔开,竖线左边命令的输出就会作为竖线右边命令的输入。连续使用竖线表示第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入, ... [详细]
  • Linux系统快捷键大全及使用技巧
    本文详细介绍了Linux系统中的各种快捷键,包括命令行和VIM编辑器中的常用快捷键,帮助用户提高操作效率。同时,文章还提供了关于字体配置、软件安装等方面的实用信息。 ... [详细]
  • Ubuntu 14.04 系统安装后网卡名称修改方法
    本文介绍了在安装 Ubuntu 14.04 Server 版本后,如何将默认的网卡名称从非 eth 格式修改为传统的 eth 格式,并提供了详细的步骤和示例。 ... [详细]
  • 整理于2020年10月下旬:总结过去,展望未来Itistoughtodayandtomorrowwillbetougher.butthedayaftertomorrowisbeau ... [详细]
  • 本文介绍了编程语言的基本分类,包括机器语言、汇编语言和高级语言的特点及其优缺点。随后详细讲解了Python解释器的安装与配置方法,并探讨了Python变量的定义、使用及内存管理机制。 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • Linux笔记:JDK安装与环境变量配置
    本文详细介绍了在Linux系统中安装JDK并配置环境变量的步骤,帮助读者顺利完成Java开发环境的搭建。 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
author-avatar
忧之灵_435
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有