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

CentOS系统下配置vsftpd

1、通过YUM安装必需的vsftpd,pam,pam-devel;2、通过编译安装必需的pam_mysql(下面附件里);3、修改默认vsftpd配置文件(/etc/vsftpd/vsftpd.conf)以及添加ftp用户的权限配置文件(/etc/vsftpd/vconf/);4、添加虚拟系统用户,及其ftp用户登录认

1、通过YUM安装必需的vsftpd, pam, pam-devel;

2、通过编译安装必需的pam_mysql(下面附件里);

3、修改默认vsftpd配置文件 (/etc/vsftpd/vsftpd.conf)以及添加ftp用户的权限配置文件(/etc/vsftpd/vconf/);

4、添加虚拟系统用户,及其ftp用户登录认证数据库;

5、修改vsftpd默认的pam配置文件 (/etc/pam.d/vsftpd);

6、添加ftp端口到防火墙,重启vsftpd服务,测试ftp虚拟用户登录。

1)

[simonsun@magic ~]$ sudo yum install vsftpd pam pam-devel  

目前的版本为

vsftpd - 2.0.5-12.el5, pam - 0.99.6.2-3.27.el5, pam-devel - 0.99.6.2-3.27.el5。

2)

[simonsun@magic ~]$ wget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gz  

[simonsun@magic ~]$ tar zxvf pam_mysql-0.7RC1.tar.gz  

[simonsun@magic ~]$ ls pam_mysql-0.7RC1  

acinclude.m4 config.guess configure CREDITS ltmain.sh missing pam_mysql.c pkg.m4  

aclocal.m4 config.h.in configure.in INSTALL Makefile.am mkinstalldirs pam_mysql.spec README  

ChangeLog config.sub COPYING install-sh Makefile.in NEWS pam_mysql.spec.in stamp-h.in  

[simonsun@magic ~]$ vim pam_mysql-0.7RC1/configure  

#修改configure中的一个bug,将下面的一段修改,加上#include .h>,原来没有此引用。

=================================

#include   

#include   

int  

main ()  

{  

md5_calc(0, 0, 0);  

;  

return 0;  

}  

=================================

[simonsun@magic ~]$ cd pam_mysql-0.7RC1  

[simonsun@magic pam_mysql-0.7RC1]$ ./configure  

[simonsun@magic pam_mysql-0.7RC1]$ make  

[simonsun@magic pam_mysql-0.7RC1]$ sudo make install  

[simonsun@magic pam_mysql-0.7RC1]$ sudo cp /usr/lib/security/pam_mysql.* /lib/security/  

3)

[simonsun@magic ~]$ sudo vim /etc/vsftpd/vsftpd.conf  

======================================

anonymous_enable=NO 

local_enable=YES 

write_enable=YES 

local_umask=022 

#anon_upload_enable=YES 

#anon_mkdir_write_enable=YES 

dirmessage_enable=YES 

xferlog_enable=YES 

connect_from_port_20=YES 

#chown_uploads=YES 

#chown_username=whoever 

xferlog_file=/var/log/vsftpd.log  

xferlog_std_format=YES 

#idle_session_timeout=600 

#data_connection_timeout=120 

#nopriv_user=ftpsecure 

#async_abor_enable=YES 

#ascii_upload_enable=YES 

#ascii_download_enable=YES 

ftpd_banner=Welcome to Magic Linux FTP service.  

#deny_email_enable=YES 

# (default follows)  

#banned_email_file=/etc/vsftpd/banned_emails  

chroot_local_user=YES 

#chroot_list_enable=YES 

# (default follows)  

#chroot_list_file=/etc/vsftpd/chroot_list  

#ls_recurse_enable=YES 

listen=YES 

listen_port=21 

#listen_ipv6=YES 

#下面是添加的:

guest_enable=YES 

guest_username=vvsftpd #虚拟系统用户,在步骤4)中添加该用户到系统用户中。  

user_config_dir=/etc/vsftpd/vconf/ #登录ftp的虚拟用户的权限配置文件。  

pam_service_name=vsftpd 

userlist_enable=YES 

tcp_wrappers=YES 

======================================

[simonsun@magic ~]$ sudo mkdir /etc/vsftpd/vconf/  

[simonsun@magic ~]$ sudo vim /etc/vsftpd/vconf/myftp  

======================================

write_enable=YES 

anon_upload_enable=YES 

anon_mkdir_write_enable=YES 

anon_world_readable_Only=NO 

======================================

4)

[simonsun@magic ~]$ sudo /usr/sbin/useradd -d /home/vvsftpd -s /sbin/nologin vvsftpd  

[simonsun@magic ~]$ mysql -u root -p  

#执行如下语句,为虚拟系统用户vvsftpd创建虚拟用户(如myftp)登录ftp时的认证数据库vsftpd

======================================  

create database vsftpd;  

use vsftpd;  

create table user(name char(20) binary,passwd char(20) binary);  

insert into user values ('myftp',ENCRYPT('ptfym'));  

grant select on vsftpd.user to vvsftpd@localhost identified by 'PaSsWoRd';  

flush privileges;  

======================================  

5)

[simonsun@magic ~]$ sudo vim /etc/pam.d/vsftpd  

修改成如下

======================================  

#%PAM-1.0  

session optional pam_keyinit.so force revoke  

auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers nerr=succeed 

#auth required pam_shells.so  

auth required /lib/security/pam_mysql.so user=vvsftpd passwd=PaSsWoRd host=localhost db=vsftpd table=user usercolumn=name passwdpasswdcolumn=passwd crypt=1 

account required /lib/security/pam_mysql.so user=vvsftpd passwd=PaSsWoRd host=localhost db=vsftpd table=user usercolumn=name passwdpasswdcolumn=passwd crypt=1 

#auth include system-auth  

#account include system-auth  

session include system-auth  

session required pam_loginuid.so  

======================================  

6)

[simonsun@magic ~]$ sudo /sbin/iptables -I INPUT -p tcp --dport 20 -j ACCEPT  

[simonsun@magic ~]$ sudo /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT  

[simonsun@magic ~]$ sudo /etc/rc.d/init.d/iptables save  

[simonsun@magic ~]$ sudo /etc/rc.d/init.d/iptables restart  

清除防火墙规则: [确定]

把 chains 设置为 ACCEPT 策略:filter nat [确定]

正在卸载 Iiptables 模块: [确定]

应用 iptables 防火墙规则: [确定]

载入额外 iptables 模块:ip_conntrack_netbios_ns [确定]

[simonsun@magic ~]$ sudo /etc/rc.d/init.d/vsftpd restart  

关闭 vsftpd: [确定]

为 vsftpd 启动 vsftpd: [确定]

[simonsun@magic ~]$ ftp shellfisher.3322.org  

Connected to shellfisher.3322.org.  

220 Welcome to Magic Linux FTP service.  

530 Please login with USER and PASS.  

530 Please login with USER and PASS.  

KERBEROS_V4 rejected as an authentication type  

Name (shellfisher.3322.org:simonsun): myftp  

331 Please specify the password.  

Password:  

230 Login successful.  

Remote system type is UNIX.  

Using binary mode to transfer files.  

ftp> ls  

227 Entering Passive Mode (221,215,250,110,86,88)  

150 Here comes the directory listing.  

226 Directory send OK.  

ftp> mkdir testftp  

257 "/testftp" created  

ftp> ls  

227 Entering Passive Mode (221,215,250,110,43,155)  

150 Here comes the directory listing.  

drwx------ 2 507 509 4096 Mar 24 08:32 testftp  

226 Directory send OK.  

ftp> quit  

221 Goodbye.  

======================================  


推荐阅读
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 1、打开etcsysconfiggrub,   #vimetcsysconfiggrub   内容如下: ... [详细]
  • 本文主要介绍关于linux文件描述符设置,centos7设置文件句柄数,centos7查看进程数的知识点,对【Linux之进程数和句柄数】和【linux句柄数含义】有兴趣的朋友可以看下由【东城绝神】投 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文详细介绍了Vim编辑器中的三种模式(命令模式、末行模式和编辑模式)以及它们之间的操作区别和切换方法。Vim编辑器凭借其多种命令快捷键和高效率的操作方式,得到了广大厂商和用户的认可。对于想要高效操作文本的用户来说,了解这些模式的使用方法是必不可少的。 ... [详细]
  • 本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • (九)Docker常用安装
    一、总体步骤1、搜索镜像2、拉取镜像3、查看镜像4、启动镜像5、停止镜像6、移除镜像二、安装tomcat1、dockerhub上面查找tomcat镜像 dockersearchto ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
author-avatar
手机用户2502859733
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有