vsftp 服务配置
在CentOS或者RedHat Linux上有自带的ftp软件叫做vsftpd (very serure ftp)
搭建vsftpd 服务
yum 安装需要用两个包:vsftpd 和 db4-utils
yum install –y db4-utils yum install –y vsftpd
1.建立虚拟用户关联的系统账户和虚拟用户、密码文件
系统用户:useradd virftp -s /sbin/nologin
系统用户、密码文件: vim /etc/vsftpd/vsftpd_login 其内容:
test1
123456
test2
abcdef #奇数行是用户名,偶数行数密码
chmod 600 /etc/vsftpd/vsftpd_login 文件只允许root查看写入
生成对应的库文件 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db,其类似于pure-ftp(pure-pw mkdb #创建密码文件)
2.建立虚拟账号相关的目录以及配置文件 mkdir /etc/vsftpd/vsftpd_user_conf
vim test1 内容如下:
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
注意:虚拟用户的目录必须存在home/virftp/test1 没有的话,需要创建
mkdir /home/virftp/test1
修改权限: chown -R virftp:virftp /home/virftp
3. vim /etc/pam.d/vsftpd 在最开头添加两行
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login //如果是64位系统,则改为/lib64/security/pam_userdb.so
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login //如果是64位系统,则改为/lib64/security/pam_userdb.so
再修改/etc/vsftpd.conf
vim /etc/vsftpd/vsftpd.conf .
4 .主配置文件/etc/vsftpd/vsftpd.conf
vim /etc/vsftpd/vsftpd.conf 其内容位:
anonymous_enable=YES改为anonymous_enable=NO
#anon_upload_enable=YES 改为 anon_upload_enable=NO
#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
chroot_local_user=YES #是否允许跳出ftp根目录意外的目录
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
启动vsftpd服务 /etc/init.d/vsftpd start
vsftp相关的博客请查看:http://icedot.blog.51cto.com/61369/772452
ftp两个工作方式概念详解:
http://blog.chinaunix.net/uid-113269-id-2956079.html 主动模式(port)被动模式(passive)
主机模式:192.168.176.1:1236(客户端) 192.168.176.253:21 (服务端)
192.168.176.1:1238(客户端) 192.168.176.253:21 (服务端)
被动模式:192.168.176.1:1318(客户端) 192.168.176.253:21 (服务端)
192.168.176.1:1238(客户端) 192.168.176.253:1524 (服务端) 范围是1024 -65355
ftp两个工作方式配置修改在哪里实验:http://blog.sina.com.cn/s/blog_54cae6d70101do71.html
最新文章
- MySQL字符串函数substring:字符串截取
- javascript中数组的22种方法
- java 网络编程复习(转)
- 【转】Hadoop web页面的授权设定
- General Ledger Useful SQL Scripts – Oracle Applications 11i
- zxing 生成二维码
- NSMutableAttributedString iOS 在UILabel显示不同的字体和颜色(转)
- DM8168 编译filesystem步骤
- CSU 1559 订外卖
- 第4章1节《MonkeyRunner源码剖析》ADB协议及服务: ADB协议概览OVERVIEW.TXT翻译参考(原创)
- [iOS] file patterns: The `public_header_files` pattern did not match any file.
- eric6 中 designer 无法启动的解决办法
- MQTT 单个订阅消息量过大处理
- Python基础(reduce,filter,map函数)
- SpringSecurity简单记录
- 【转载】C#工具类:FTP操作辅助类FTPHelper
- CentOS7安装使用ab压力测试工具
- [daily] pandoc
- Django商城项目笔记No.1项目准备工作
- hihocode 股票价格 优先队列+map
热门文章
- [Codeforces438E][bzoj3625] 小朋友和二叉树 [多项式求逆+多项式开根]
- RSA解密报错java.security.spec.InvalidKeySpecException的解决办法
- C语言浮点数存储方式
- 6.安装和配置OpenStack图片服务组件
- java1.7集合源码阅读:ArrayBlockingQueue
- 【linux高级程序设计】(第十五章)UDP网络编程应用 3
- 字符编码笔记:ASCII、Unicode、UTF-8 和 Base64
- hdu 5124(区间更新+单点求值+离散化)
- springBoot Feign
- (31)C#时间