Linux下vsftp配置大全(2)
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>; pwd
257 "/root"
ftp>; quit
221 Goodbye.
我们看到root用户可以登陆到ftp,他的登陆目录就是自己的主目录。 再测试一个系统用户,那我们先建立一个用户名叫xuchen的
Linux下vsftp配置大全,详细描述了linux环境下,3种配置方法
# useradd xuchen
# passwd xuchen
Changing password for user xuchen.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
建立好了,让我们开始测试吧!!
# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.3)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): xuchen
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>; pwd
257 "/home/xuchen"
ftp>; quit
221 Goodbye.
我们看到xuchen用户可以登陆到ftp,他的登陆目录也是自己的主目录。哈哈,又完成了!那么继续。。。
高级配置
细心的朋友可能已经看出来如果我们不支持PAM认证方式,那么本地用户就可以登陆,而默认编译的vsftpd支持PAM认证方式,所以是不支持本地用户登陆的。恩,从这点说,这也是vsftp安全的一个表现----禁止本地用户登陆。
我们登陆后进行测试,传一个文件上去,得,失败了,那下载个文件下来吧,恩,这是成功的(见图2),而且我们发现我们可以进入到系统根目录(见图3),这样很危险。怎么办呢?
继续改配置文件啊,为了测试方便,我们先建立一个名为kill-loc的脚本,也是为了杀掉FTP程序的
#!/bin/bash
a=`/bin/ps -A | grep vsftpd-loc | awk '{print $1}'`
kill -9 $a
现在提供我的本地用户验证服务器配置文件吧(在匿名里写过的注释我就不在这里写了)
listen=YES
listen_port=21
tcp_wrappers=YES
anonymous_enable=NO
local_enable=YES
Linux下vsftp配置大全,详细描述了linux环境下,3种配置方法
write_enable=YES
local_umask=022 //本地用户文件上传后的权限是-rw-r-r
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
connect_from_port_20=YES
chroot_local_user=YES //限制用户在自己的主目录
#local_root=/ftp //你可以指定所有本地用户登陆后的目录,如果不设置此项,用户都会登陆于自己的主目录,就跟咱们前面测试的结果是一样的
local_max_rate=500000 //本地用户的下载速度为500KBytes/s
idle_session_timeout=600
data_connection_timeout=120
nopriv_user= nobody //设定服务执行者为nobody,vsftpd推荐使用一个权限很低的用户,最好是没有家目录(/dev/null),没有登陆shell(/sbin/nologin),系统会更安全
ftpd_banner=Welcome to FTP service.
check_shell=NO
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.denyuser
以上三条设定不允许登陆的用户,用户列表存放在/etc/vsftpd.denyuser中,一行一个帐号如果我把xuchen这个用户加到vsftpd.denyuser里,那么登陆时会出现如下错误:
# ftp 127.0.0.1
Connected to 127.0.0.1.
220 Welcome to FTP service.
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): xuchen
530 Permission denied.
Login failed.
呵呵,有意思吧,自己测试吧,本地用户登陆方式就介绍到这里吧! 图片:
Linux下vsftp配置大全,详细描述了linux环境下,3种配置方法
3、
Linux下vsftp配置大全,详细描述了linux环境下,3种配置方法
3、虚拟用户形式实现(db及mysql形式)
# cd /home/xuchen/vsftpd-2.0.3 //进入vsftpd-2.0.3的源代码目录 # make clean //清除编译环境
# vi builddefs.h \\继续编辑builddefs.h 文件,文件内容如下: #ifndef VSF_BUILDDEFS_H
#define VSF_BUILDDEFS_H
#define VSF_BUILD_TCPWRAPPERS
#undef VSF_BUILD_PAM
#define VSF_BUILD_SSL
#endif /* VSF_BUILDDEFS_H */
将以上define VSF_BUILD_PAM行的undef改为define,支持tcp_wrappers,支持PAM认证方式,支持SSL,和匿名用户形式是一样的。
# make //直接在vsftpd-2.0.3里用make编译
# ls -l vsftpd
-rwxr-xr-x 1 root root 86088 Jun 6 22:26 vsftpd //可执行程序已被编译成功
创建必要的帐号,目录:
# useradd nobody //可能你的系统已经存在此帐号,那就不用建立
# mkdir /usr/share/empty //可能你的系统已经存在此目录,那就不用建立
Linux下vsftp配置大全,详细描述了linux环境下,3种配置方法
# mkdir /var/ftp //可能你的系统已经存在此目录,那就不用建立
# useradd -d /var/ftp ftp //可能你的系统已经存在此帐号,那就不用建立 # chown root:root /var/ftp
# chmod og-w /var/ftp
请记住,如果你不想让用户在本地登陆,那么你需要把他的登陆SHELL设置成/sbin/nologin,比如以上的nobody和ftp我就设置成/sbin/nologin 安装vsftp配置文件,可执行程序,man等:
# install -m 755 vsftpd /usr/local/sbin/vsftpd-pam
# install -m 644 vsftpd.8 /usr/share/man/man8
# install -m 644 vsftpd.conf.5 /usr/share/man/man5
# install -m 644 vsftpd.conf /etc/vsftpd-pam.conf
这样就安装完成了,那么我们开始进行简单的配置
对于用DB库存储用户名及密码的方式来说:
(1)查看系统是否有相应软件包
# rpm –qa | grep db4
db4-devel-4.2.52-7.1
db4-4.2.52-7.1
db4-utils-4.2.52-7.1
(2)建立一个logins.txt的文件,单行为用户名,双行为密码,例如 # vi /home/logins.txt
xuchen
12345
(3)建立数据库文件并设置文件属性
# db_load -T -t hash -f /home/logins.txt /etc/vsftpd_login.db # chmod 600 /etc/vsftpd_login.db
(4)建立认证文件
# vi /etc/pam.d/ftp 插入如下两行
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd_login
(5)建立一个虚拟用户
useradd -d /home/vsftpd -s /sbin/nologin vsftpd
ls -ld /home/vsftpd
相关推荐:
- [实用文档]李践-有效提升销售的12大黄金法则8-大
- [实用文档]党支部换届工作方案
- [实用文档]2013年下期电子商务专业部宣传工作计划
- [实用文档]方庄一矿通风、钻探绩效工资考核管理办
- [实用文档]项目一 认识企业物流认识企业物流
- [实用文档]MBI_Display_产品蓝图规画
- [实用文档]北京市建筑业劳务作业人员普法维权培训
- [实用文档]锅炉燃烧调整与运行优化
- [实用文档]4支付结算业务的核算
- [实用文档]米什金_货币金融学_第9版各章学习指导
- [实用文档]水泥混凝土路面硬化工程施工组织设计
- [实用文档]钢筋工程安全技术交底书
- [实用文档]关于公布华中师范大学本科毕业论文
- [实用文档]太原市园林绿化施工合同范本 2
- [实用文档]周日辅导 初中英语分类复习单项选择题(
- [实用文档]第四章 文化经纪人的管理形式 第二节
- [实用文档]学宪法讲宪法竞赛题库
- [实用文档]《数值计算方法》期末考试模拟试题二
- [实用文档]爱词霸学英语:每日一句( 十月)
- [实用文档]2014年国家公务员面试:无领导小组讨论
- 新课程主要理念和教学案例分析汇编(24
- 英国人的快乐源于幸福的家庭生活
- 七年级上册第一次月考模拟数学试卷
- 真丝及仿真丝的种类有哪些?
- 【最新】华师大版八年级数学下册第十六
- 高中英语3500个必背单词
- 我可以接受失败,但我不能接受放弃!
- 最近更新沪科版八年级物理上册期末试卷
- 绿化工作先进乡镇事迹材料
- 鲁教版九年级上册思想品德教学计划
- 英语音标的分类
- 地下室底板无梁楼盖与普通梁板结构形式
- 美容师黄金销售话术
- 雅思写作满分作文备考方法
- 血清甲状腺激素测定与高频彩色多普勒超
- 1度浅析装修对室内空气品质的影响
- 2017-2022年中国汞矿行业深度分析与投
- 计算机二级VB公共基础知识
- (何勇)秸秆禁烧_重在寻找出路
- 内外墙抹灰工程分包施工合同1




