当前位置: 首页 > 编程日记 > 正文

Vsftp 安装配置(转)

转:http://www.cnblogs.com/qingfeng2010/archive/2010/12/26/1917121.html

1.查看是否安装vsftp
rpm –qa|grep vsftpd 
如果出现     vsftpd-2.0.5-16.el5_5.1  说明已经安装 vsftp

安装vsftp

yum -y installvsftpd

2.测试 是否安装成功  (ip 改成自己啊,不要用俺的此次登录为匿名登录 user: anonymous 密码为空 如果成功登录会有下面内容  这说明vsftpd安装成功)

[root@localhost ~]#service vsftpd start

为 vsftpd 启动 vsftpd:[确定]

[root@localhost ~]#ftp 192.168.1.107

Connected to192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please loginwith USER and PASS.

530 Please loginwith USER and PASS.

KERBEROS_V4 rejectedas an authentication type

Name(192.168.1.107:root): anonymous

331 Please specifythe password.

Password:

230 Loginsuccessful.

Remote system typeis UNIX.

Using binary mode totransfer files.

ftp> bye

221 Goodbye.

[root@localhost ~]#

3.修改配置文件/etc/vsftpd/vsftpd.conf

[root@localhost ~]#vi /etc/vsftpd/vsftpd.conf

取消下面内容前面的注释或添加

anonymous_enable=YES/NO  是否允许匿名用户访问

chroot_list_enable=YES   限定用户不可以离开主目录

chroot_list_file=/etc/vsftpd/chroot_list

loca_enable=YES/NO 本地用户是否可以访问 注:如果为NO 则所有虚拟用户都将不能访问原因:虚拟用户访问在主机上其实是以本地用户访问的

pam_service_name=vsftpd  pam认证文件名 在/etc/pam.d/vsftpd

guest_enable=YES    启用虚拟用户功能

guest_username=ftp  指定虚拟用户的宿主用户 –centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)

user_config_dir=/etc/vsftpd/vuser_conf 设置虚拟用户个人vsftp的服务配置文件

(此文件后面不能出现空格)

4.查看是否安装 db4 db4-utils

[root@localhost ~]#rpm -qa|grep db4  运行后出现下面内容 说明已经安装可以使用db_load命令(主要是 db4-utils)

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-devel-4.3.29-10.el5_5.2

db4-4.3.29-10.el5_5.2

db4-tcl-4.3.29-10.el5_5.2

db4-utils-4.3.29-10.el5_5.2

[root@localhost ~]#

如果没安装则要安装db4-utils

4.1安装db4-utils

[root@localhost ~]#yum -y install db4-utils

5. 创建 chroot_list_file=/etc/vsftpd/chroot_list文件

[root@localhost ~]#vi /etc/vsftpd/chroot_list (编辑文件把 /etc/vsftpd/vsftpd.conf 中guest_username的值写到文件中本例中为 ftp)

或者直接按下面进行操作

[root@localhost ~]#touch /etc/vsftpd/chroot_list

[root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list  (此处ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)

6.创建虚拟用户目录(密码文本)

[root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇数行为用户名 ,偶数行为密码)

本文中添加如下(用cat 命令查看)

[root@localhost ~]#cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

[root@localhost ~]#

7.生成虚拟用户的db文件

[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db

8.生成虚拟用户的认证文件

[root@localhostvsftpd]# vi /etc/pam.d/vsftpd

#%PAM-1.0

session    optional    pam_keyinit.so    force revoke

auth       required     pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers onerr=succeed

auth       required     pam_shells.so

auth       include      system-auth

account    include     system-auth

session    include     system-auth

session    required    pam_loginuid.so

注释掉/etc/pam.d/vsftpd中所有的内容 反正已经不要本地用户的认证了

特别注意 以下区别 
32位系统增加以下两句:
auth      required     pam_userdb.so db=/etc/vsftpd/vuser_passwd
account   required     pam_userdb.so db=/etc/vsftpd/vuser_passwd
64位系统增加以下两句:
auth   required    /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required    /lib64/security/pam_userdb.sodb=/etc/vsftpd/vftpuser

注:db=/etc/vsftpd/vftpuser 中的vftpuser 是你生成的虚拟用户的db文件

9.创建每个虚拟用户自己的配置文件,配置文件的路径是/etc/vsftpd/vsftpd.conf中的

user_config_dir=/etc/vsftpd/vuser_conf路径

在 /etc/vsftpd/vuser_conf/下面创建以用户名为名称的文件(名称是/etc/vsftpd/vftpuser.txtx 下面的奇数行)

[root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtx

zz

aaaaa

ftp1

zzzzz

[root@localhostvsftpd]# mkdir vuser_conf

[root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/zz

内容如下

local_root=/var/www(虚拟用户的根目录根据实际修改)
write_enable=YES (可写)
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022

10.给文夹权限(否则不能上传 权限可自定 本人给的是 777)

[root@localhostvsftpd]# chmod 777 /var/www/

11.重启vsftpd

[root@localhostvsftpd]# service vsftpd restart

到此安装配置完成 如果出现连接被 同位体重置 或其它错误 请查看SELinux的当前模式

12.登录测试

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

500 OOPS: cannot changedirectory:/var/www

Login failed.

ftp>

查看方法

[root@localhost vsftpd]# getenforce

Enforcing   如果出现(Enforcing )

关闭方法:[root@localhost vsftpd]#setenforce 0       (0|1  开|关)

再次测试 登录成功

[root@localhost vsftpd]# chmod 777/var/www/

[root@localhost vsftpd]# ftp192.168.1.107

Connected to 192.168.1.107.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as anauthentication type

Name (192.168.1.107:root): zz

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>

查看系统是多少位的命令

[root@bogon ~]# getconf LONG_BIT

64 (64|32)

转载于:https://www.cnblogs.com/wuhen2010/archive/2010/12/28/1918759.html

相关文章:

事务隔离机制原理分析以及是否可以防止订单超卖

事务的隔离机制是指: Read Uncommitted(读取未提交内容) Read Committed(读取提交内容) Repeatable Read(可重读) Serializable(可串行化) 具体的解释最经典的MySQL书《…

PHP中file_exists与is_file,is_dir的区别介绍

PHP中file_exists与is_file,is_dir的区别介绍作者: 字体:[增加 减小] 类型:转载 时间:2012-09-12 我要评论很显然file_exists是受了asp的影响,因为asp不但有fileExists还有folderExists,driverExists,那么P…

推荐算法工程师的成长之道

作者 | gongyouliu来源 | 大数据与人工智能(ID: ai-big-data)本文,作者会基于自己的实践经验讲述推荐算法工程师的成长之道,这里的“道”有发展路径和道(道理、方法论、经验、智慧)两层意思。所以本文除了讲解推荐算法工程师的成长…

JVM内存溢出的几种情形

1.堆溢出 原因&#xff1a;大量对象占据了堆空间&#xff0c;而这些对象都有强引用导致无法回收&#xff0c;当对象大小之和>Xmx参数指定的堆大小时导致溢出&#xff01; List<byte[]> list new ArrayList<>();for (int i 0; i < 10240; i) {list.add(new…

Android Market 链接的生成与分享

通过Java包名直接定位到你的App http://market.android.com/details?id<java包名> 或者 market://details?id<java包名> 范例&#xff1a;market://details?idcom.skyd.luckywheel 这将直接在菜市场中显示你的App详细介绍页。 通过Java包名搜索App http://marke…

Centos6/7下静默安装oracle10g

Centos6/7下静默安装Oracle10g 远程安装oracle10g,通过网上资料&#xff0c;不断摸索成功安装。先在本地虚拟机Centos7上做实验&#xff0c;快照恢复快照恢复&#xff0c;安装了几十次成功之后&#xff0c;再在服务器Centos6上安装&#xff0c;(6和7还是有区别的&#xff0c;比…

String和常量池

jdk1.6之前常量池属于永久代&#xff0c;jdk1.7以后移到堆中。 String s1 "abc";// 放在常量池中String s2 "abc";// 从常量池中查找String s3 new String("abc");//new放在堆中String s4 new String("abc");String s5 s1.inter…

CQRS体系结构模式实践案例:Tiny Library:领域仓储与事件存储

领域仓储&#xff08;Domain Repository&#xff09;与事件存储&#xff08;Event Store&#xff09;是CQRS体系结构应用系统中C部分&#xff08;Command部分&#xff09;的重要组件。虽然都是存储机制&#xff0c;但两者有着本质的区别&#xff1a;领域仓储是属于领域层的&…

​中国开启开源新纪元

距离“中国 Linux 第一人”宫敏博士用手提肩背的方式&#xff0c;将 20 盒装有 80G 容量的自由软件磁带背回中国转瞬已过 20 载&#xff0c;在宫敏博士的推动下&#xff0c;中国组建起国内第一个自由软件库&#xff0c;由此开源在第一代开发者心中的火种迅速传播。20 多年间&am…

kernel logo到开机动画之间闪现黑屏(android 5.X)

在BootAnimation開始画图之前&#xff0c;会先做一次clear screen的动作&#xff0c;避免出现前面的图干扰到BootAnimation的显示。 通过check main_log先确认播放开机动画是哪个function。在相应function删除clear screen的动作的相应代码。 /frameworks/base/cmds/bootanimat…

JScript Array对象的几个原型方法

代码 Array.prototype.inArray function(value) { for(vari 0; i <this.length; i) { if(this[i] value) { returntrue; } } returnfalse;};Array.prototype.max function() { for(vari 1, max this[0]; i <this.length; i) { …

太生猛!AI应届生年薪涨到80万!网友:后悔生的太早

据中国青年报报道&#xff1a;新冠肺炎疫情期间&#xff0c;非接触类交互、安全卫生等需求提升&#xff0c;以数字货币、数据应用、人工智能为代表的数字经济显著发展&#xff0c;全球经济数字化转型踩下“油门”。中国人工智能人才很可能缺口超过500万人。其实&#xff0c;早在…

Tomcat定时任务

原文: The load-on-startup element indicates that this servlet should be loaded (instantiated and have its init() called) on the startup of the web application. The optional contents of these element …

Nutanix CE on Lenovo W520 初探

話說 Nutanix 出了 CE 版本&#xff0c;這當然要來試試看 Nutanix 威力拿了部機器lenovo W520 CPU: i7-2820QM 4 coreRam: 32GBHDD:500G安裝選單選擇鍵盤配置&#xff0c;按下 ProceedNutanix 開始載入程式硬件最低需求不滿足Laptop 32G 內存Lenovo W520Nutanix 官方 CE 最低硬…

《爱情公寓2》将播 恶搞宣传片大喊“有种别看”

昨晚&#xff0c;一支重口味的宣传片消然出现在各大网站&#xff0c;一夜之间在狂转发。上线不到一小时&#xff0c;单一网站浏览量就超十万&#xff0c;视频主标写着&#xff1a;神兽组合从天而降&#xff0c;口味超重&#xff0c;少儿不宜&#xff0c;人兽悲剧&#xff0c;蛋…

“应付”大学作业,我花3小时写了一个“文本转手写”神器

作者 | Saurabh Daware译者 | 弯月&#xff0c;责编 | 郭芮来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;最近&#xff0c;有一个名叫Saurabh Daware的印度大学生只花了3个小时就编写了一款自动化工具&#xff0c;能够将文本转换成手写文字&#xff0c;并用这个工…

Laravel应用

CLI 参考&#xff1a;http://laravel-china.org/docs/5.1/artisancli处理业务&#xff0c;把业务封装成一个命令&#xff0c;用php artisan来调用自定义的命令放在App/Console/Commands下创建方式php artisan make:console 命令名 —command调用时名字php artisan make:console…

匿名内部类和传接口

匿名内部类也就是没有名字的内部类正因为没有名字&#xff0c;所以匿名内部类只能使用一次&#xff0c;它通常用来简化代码编写但使用匿名内部类还有个前提条件&#xff1a;必须继承一个父类或实现一个接口 参考&#xff1a;http://www.cnblogs.com/nerxious/archive/2013/01/…

为什么这门技术如此重要?错过这次黄金期,就晚了!

老李一直怀疑自己是不是年纪大了&#xff0c;脑子跟不上了。作为十几年经验的资深 Java 工程师&#xff0c;维护这公司产品的核心代码的他&#xff0c;现在迭代产品的时候&#xff0c;经常出 Bug 。有时修复一个 Bug 时间&#xff0c;比开发一个需求的时间要长很多&#xff0c;…

字符编码简介 ANSI Unicode Unicode big endian UTF-8

1. ASCII码 我们知道&#xff0c;在计算机内部&#xff0c;所有的信息最终都表示为一个二进制的字符串。每一个二进制位&#xff08;bit&#xff09;有0和 1两种状态&#xff0c;因此八个二进制位就可以组合出256种状态&#xff0c;这被称为一个字节&#xff08;byte&#xff0…

ReactiveCocoa代码实践之-更多思考

三.ReactiveCocoa代码实践之-更多思考 1. RACObserve()宏形参写法的区别 之前写代码考虑过 RACObserve(self.timeLabel , text) 和 RACObserve(self , timeLabel.text) 的区别。 因为这两种方法都是观察self.timeLabel.text的属性&#xff0c;并且都能实现功能。估计是作者原本…

Java常用命令及Java Dump

线程Dump,包含所有线程的运行状态。纯文本格式。 堆Dump,包含线程Dump,幵包含所有堆对象的状态。二进制格式。 Java Dump方法 1.使用Java虚拟机制作Dump 指示虚拟机在发生内存不足错误时,自动生成堆Dump -XX:HeapDumpOnOutOfMemoryError 2.使用图形化工具制作Dump 使用JDK…

使用Windows远程登录Ubuntu

一、SSH登录 1、Ubuntu默认没有安装SSH &#xff0c;可以在新得利软件安装程序里&#xff0c;搜索SSH&#xff0c;标记并安装&#xff1b; 或者使用命令&#xff1a; sudo apt-get install openssh-server sudo /etc/init.d/ssh restart ssh localhost…

紧急更新下降难度,《王者荣耀》绝悟 AI 难倒一片玩家

作者 | 神经星星来源 | HyperAI超神经&#xff08;ID: HyperAI&#xff09;在 5 月 1 日~ 5 月 4 日期间&#xff0c;玩家通过《王者荣耀》最新版本客户端进入游戏&#xff0c;即可与绝悟 AI 对战。一时间哀鸿遍野&#xff0c;普通玩家、游戏主播、职业选手&#xff0c;纷纷表示…

SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例

原文:SQL&#xff1a;安装多个实例&#xff0c;修改实例端口号,和IP加端口号连接实例sql server 安装第一个实例&#xff0c;默认实例的端口是1433&#xff0c; 一个库中如果有多个实例&#xff0c;从第二个实例开始的端口是动态端口&#xff0c;需要的话&#xff0c;自己手工指…

用“逐步排除”的方法定位Java服务线上“系统性”故障

说明&#xff1a;原文地址已经不可访问&#xff0c;其他地方有转载&#xff0c;不过很多丢失图片&#xff0c;所以&#xff0c;找到一处有图的重新配好图。 用“逐步排除”的方法定位Java服务线上“系统性”故障 Posted on 2014/08/25李斯宁&#xff08;高级测试开发工程师&…

清华硕士爆料:这些才是机器学习必备的数学基础

现如今&#xff0c;计算机科学、人工智能、数据科学已成为技术发展的主要推动力。无论是要翻阅这些领域的文章&#xff0c;还是要参与相关任务&#xff0c;你马上就会遇到一些拦路虎&#xff1a;想过滤垃圾邮件&#xff0c;不具备概率论中的贝叶斯思维恐怕不行&#xff1b;想试…

LINUX环境下资源下载中文目录及中文文件名称问题

为什么80%的码农都做不了架构师&#xff1f;>>> http://www.yeeach.com/2009/04/09/linux%E7%8E%AF%E5%A2%83%E4%B8%8B%E8%B5%84%E6%BA%90%E4%B8%8B%E8%BD%BD%E4%B8%AD%E6%96%87%E7%9B%AE%E5%BD%95%E5%8F%8A%E4%B8%AD%E6%96%87%E6%96%87%E4%BB%B6%E5%90%8D%E7%A7%B…

dojo从asp.net中获取json数据

搞来有搞去终于有了个结果&#xff0c;主要是一开始犯了一些低级错误。 对于json不太了解的童鞋&#xff0c;可以看看这个&#xff1a;http://www.dreamdu.com/blog/2008/10/19/json_in_javascript/ 这个例子中主要是从数据库中读取数据&#xff0c;转换成JSON格式&#xff0c;…

RHEL5 install

RHEL5 安装转载于:https://blog.51cto.com/bhanv/477708