vsftpd安装

1.1 首先确定下有没安装过。执行命令。

rpm -q vsftpd

假如已经安装了那么会显示你已经安装的版本。比如我执行命令后显示

vsftpd-2.0.5-21.el5

1.2  没有安装那么执行

yum install vsftpd #安装vsftpd

要是你想卸载当前的版本,那么

yum uninstall vsftpd #卸载vsftpd

运行vsftpd方法。

service vsftpd start #vsftpd已经安装为服务了。可以直接通过这种方式运行。

service vsftpd stop #通知运行vsftpd

service vsftpd restart #重新运行vsftpd ,当你更改了一些设置后要用重新运行,设置才会生效。

chkconfig vsftpd on #把vsftpd加入到开机启动里。

chkconfig --list #查看下vsftpd是否加入。如果2-5都为ON则表示加入到开机启动中了。

2.设置vsftpd
默认设置的文件放在/etc/vsftpd/vsfpd.conf
要是找不到可以用find命令

find /-name "vsftpd.conf"

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak #首先备份一下设置文件.

3.vsftpd支持三种用户访问方式。

第一种是匿名访问模式。

第二种是本地用户模式。

第三种是虚拟用户模式。

3.1  匿名访问模式

vi /etc/vsftpd/vsftpd.conf #打开配置文件,并且更改为如下设置。

anonymous_enable=YES #是否允许匿名访问。

write_enable=YES #允许所有用户写入。

anon_upload_enable=YES     #是否允许匿名用户上传文件anon_mkdir_write_enable=YES #是否允许匿名用户建立文件夹

保存。然后重启vsftpd .

service vsftpd restart

测试登录:

ftpopen 127.0.0.1

如果出现连接拒绝。可能是防火墙或者selinux阻止

vi /etc/sysconfig/iptables #打开防火墙配置文件

#在最后面加上下面这行

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21-j ACCEPT # 允许开放端口21,这个端口是FTP的默认端口。

service iptables restart # 重启防火墙使设置生效。

这样应该就可以登录上了。然后验证是否可以上传下载文件。以及建立文件夹。要是不行的话

setsebool ftpd_disable_trans 1#关闭selinux 的ftp设置。

chmod 755 /opt/var/ftp #设置文件夹权限

service vsftpd restart #重启

登录后的目录是匿名用户的目录/opt/var/ftp

3.2  本地用户模式

vi /etc/vsftpd/vsftpd.conf #打开设置文件local_enable=YES           #允许本地用户登录,要使用虚拟用户那么这项也必须开启。chroot_local_user=YES #使用户登录后锁定在主目录下。#在最后增加下面这行user_config_dir=/etc/vsftpd/vconf   #每个本地用户的配置文件。在这里面可以设置用户登录后的文件夹。以及特定的权限。#保存退出。

#接下来增加ftp用户useradd -g www -d /opt/var/ftp  -s /sbin/nologin -M  ftp_user #这种方式下添加用户,使得只有FTP登录的权限.不能登录系统.###############关于useradd 命令#####################1.作用useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是终极用户。2.格式useradd [-d home][-s shell][-c comment][-m [-k template]][-f inactive][-e expire ][-p passwd][-r] name3.主要参数-c:加上备注文字,备注文字保存在passwd的备注栏中。 -d:指定用户登入时的启始目录。-D:变更预设值。-e:指定账号的有效期限,缺省表示永久有效。-f:指定在密码过期后多少天即关闭该账号。-g:指定用户所属的群组。-G:指定用户所属的附加群组。-m:自动建立用户的登入目录。-M:不要自动建立用户的登入目录。-n:取消建立以用户名称为名的群组。-r:建立系统账号。-s:指定用户登入后所使用的shell。-u:指定用户ID号。4.说明useradd可用来建立用户账号,他和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。5.应用实例建立一个新用户账户,并设置ID:#useradd caojh -u 544需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特别用户,一般0到499之间的值留给bin、mail这样的系统账号。####################################################

#建立本地用户的FTP设置文件。touch /etc/vsftpd/vconf/ftp_user #在user_config_dir设置的目录下新建一个与要登录的用户同名的用户文件。 vi /etc/vsftpd/vconf/ftp_user #编辑配置#按需要增加下面几个设置local_root=/data/www #设置本地用户登录后的主目录。#保存后重启vsftpdservice vsftpd restart

3.3  虚拟用户模式。
3.3.1  添加虚拟用户口令文件

vi /etc/vsftpd/vftpuser.txt #新建存放虚拟用户密码帐号原始文件

格式为:一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。

hahahahh #用户名

abc123abc123 #密码

bbababbaba #用户名

aaaaaa # 密码

3.3.2 生成虚拟用户口令认证文件

将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。

首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。

rpm -qa |grep db4-utils

要是没有安装则

rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm

然后使用db_load命令将刚才的用户密码文件生成虚拟用户口令认证文件。

db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db

3.3.3  编辑vsftpd的PAM认证文件使它使用我们刚才新建的认证文件

vi /etc/pam.d/vsftpd    #默认放在这个目录下。#将里面其他的都注释掉(这样的话只允许虚拟用户登录了,要想本地和虚拟都登录参考后面的配置),添加下面这两行. auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuseraccount required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser#保存。

3.3.4 配置vsftpd.conf

vi /etc/vsftpd/vsftpd.conf #编辑vsftpd主配置文件

guest_enable=YES #开启虚拟用户

guest_username=ftp_user #FTP虚拟用户对应的系统用户,就是刚才最先新建的那个帐号

pam_service_name=vsftpd #可选。PAM认证文件,这个要是没有就加上。

保存后重启vsftpd

sercvice vsftpd restart

4。一些相关的配置选项介绍

dirlist_enable=NO            #是否允许所有用户可以浏览(列出文件列表)dirmessage_enable=YES #当用户切换了目录时,是否通知该用户。xferlog_enable=YES    #是否启用日志。与下面这个合用xferlog_file=/var/log/xferlog  #指定日志的文件名。#注意:使用日志的时候,可能会造成错误。尝试用命令#rm /var/log/xferloglocal_root=/path      #本地用户登陆服务器后直接进入的目录local_umask=022       #本地用户上传档案权限的 umask值###############################

我们知道使用本地用户登录ftp后进入的是用户的主目录,locla_root这个参数 允许我们登录服务器后直接进入其它的目录。

Linux系统中的任何文件都是有权限值的,上传的文件也不例外,这个默认的权限值就由 local_umask参数指定。

其计算方法为:默认建立文件的权限+local_umask =0666默认建立目录的权限+local_umask =0777

由此我们可以看出,上传的文件无论如何都不可能有执行权限的。###############################

local_max_rate= #本地用户传输速率单位为 bps

chmod_enable=NO    #是否允许本地用户改变ftp 服务器上档案的权限

Listen_port=5555 #使用端口5555作为FTP端口。记得防火墙要打开这个端口。ftpd_banner=Welcome to FTP SERVER  #成功登录信息idle_session_timeout=600 #可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。data_connection_timeout=120 #设定默认的数据连接超时时间。ascii_upload_enable=YES;ascii_download_enable=YES #默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的请求,#启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。这些ASCⅡ模式的设置选项分成上传和下载两个,#这样我们就可以允许ASCⅡ模式的上传(可以防止上传脚本等恶意文件而导致崩溃),而不会遭受拒绝服务攻击的危险。nopriv_user=ftpsecure #指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的独立用户。这是vsftpd系统推荐选项。userlist_enable=NO             #是否启用 userlist 功能模块

userlist_deny=NO            #是否拒绝 userlist 文件中用户登陆 ftp 服务

userlist_file=/path/to/file              #指定的 userlist 文件名

chown_uploads=YES #如果启用此项,则匿名用户上传文件的属主用户将改为别的用户账户,这里建议

#不要指定root账号为匿名上传文件的属主用户!chown_username=whoever #当启用chown_uploads=YES时,所指定的属主用户账号,要用合适的用户账号来代替。chroot_list_enable=YES #可以用一个列表限定哪些本地用户只能在自己目录下活动,#如果chroot_local_user=YES,那么这个列表里指定的用户是不受限制的。chroot_list_file=/etc/vsftpd.chroot_list #则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpd.chroot_list)。pasv_enable=YES #启用被动模式pasv_min_port=30000#指定被动模式下的最小端口 pasv_max_port=30999 #指定被动模式下的最大端口,防火墙要允许通过virtual_use_local_privs=YES #虚拟用户和本地用户有相同的权限;max_clients=0#最大允许的同时在线用户数量,0表示无限制max_per_ip=0#每个IP允许的用户数。accept_timeout=#以pasv数据连接模式的时候,数据连接的超时;connect_timeout=#以port模式连接数据连接时的超时时间data_connection_timeout=300#数据连接后数据连接等待的空闲时间超时,超过时间后,数据连接将断开连接idle_session_timeout=180#客户端隔多长时间不与服务器有交互ftp 命令,将自动断开 ftp 服务连接。port_enable=YES                #是否启用 port 模式connect_from_port_20=YES #port 模式下是否默认使用固定的 20 端口,默认的好像是21端口。ftp_data_port=21         #指定 port 模式的端口号port_promiscuous=NO     #是否使用安全的 port 模式,除非你确保服务器是与真正的客户端进行连接,否则不要将此参数值改
时间: 2024-10-27 10:08:35

vsftpd安装的相关文章

vsftpd安装、多用户配置

1.vsftpd安装 rpm -ivh vsftpd 2.2.2 11.el6_4.1.x86_x64.rpm 2.添加ftp用户 添加ftp用户组 groupadd ftpg 添加ftp用户 useradd -d /FtpFiles/ftpuser1 -s /sbin/nologin ftpuser1 useradd -d /FtpFiles/ftpuser2 -s /sbin/nologin ftpuser2 说明:添加ftpuser1.ftpuser2两个用户,根目录分别为/FtpFile

centos下vsftpd安装与配置

1.已经配置好可以上网了,所以即可通过yum install vsftpd安装啦.如果不能上网则可以通过dvd2.iso工具集rpm方式进行安装. 2.安装好后,默认本地可以通过匿名用户登录,但是其它电脑是不能访问.本文主要记录下允许匿名用户上传下载删除文件所做的些配置,主要需要做3大方面配置vsftpd本身.selinux和iptables 3.vsftpd方面有一个关键配置是anon_umask=022即设置上传的文件的权限,否则默认上传文件权限为600,那么上传的权限是不能被下载的. 4.

vsftpd 安装配置详细教程

linux下ftp软件不少,大致特点:<br /> wu-ftp:比较老牌,但针对它的攻击比较多,设置比较麻烦,但功能比较强大.<br /> vsftpd:功能强大,配置也比较简单 linux下ftp软件不少,大致特点:wu-ftp:比较老牌,但针对它的攻击比较多,设置比较麻烦,但功能比较强大.ProFTPD:能实现wu-ftp以及server-U的所有功能.安全性也较高,但比起vsftpd配置稍显复杂.vsftpd:功能强大,配置也比较简单 选vsftpd是因为它安全.速度快.选

vsftpd 安装

vsftpd 安装 这里有最简洁的安装步骤 理想流程 [[email protected] ~]# useradd ftpuser [[email protected] ~]# passwd ftpuser Changing password for user ftpuser. New password: BAD PASSWORD: it is too short BAD PASSWORD: is too simple Retype new password: passwd: all authe

vsftpd安装和使用 Linux系统和window系统

vsftpd 安装(Linux)一.安装系统环境 centos 6.9 64位二.vsftpd版本 vsftpd-2.2.2-24.el6.x86_64三.安装步骤1.安装 执行 yum -y install vsftpd eg: (1)是否使用sudo权限执行请根据您具体环境来决定 (2)rpm -qa |grep vsftpd 可通过这个检查是否已经安装vsftpd (3)默认配置文件在/etc/vsftpd/vsftpd.conf2.创建虚拟用户 (1)选择在根或者用户目录下创建ftp文件

linux ftp启用和停用及vsftpd安装 ssh 启用和停用命令及ssh的安装

1.首页要用ftp:服务器上必须安装vsftpd 安装命令 yum installed vsftpd 查看vsftpd是否启动 [email protected]:/home/daokr# service vsftpd status ● vsftpd.service - vsftpd FTP server Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset Active: active (runni

Vsftpd安装以及配置FTP虚拟用户实践

安装vsftpd #查看当前系统版本 [[email protected] vsftpd]# cat  /etc/redhat-release CentOS release 6.7 (Final) #安装 yum  install  vsftpd  -y #开机启动 chkconfig  vsftpd   on 基于虚拟用户和被动模式的配置 [[email protected] vsftpd]# cat  vsftpd.conf anonymous_enable=NO listen=YES li

vsftpd安装配置虚拟用户

原文发表于cu:2016-03-11 参考文档: FTP原理:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_1.php FTP配置:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_2.php 虚拟用户配置:http://yuanbin.blog.51cto.com/363003/129071 一.环境 OS CentOS6.7 x86_64 网络 Sever:192.168.1.25

Centos6.8:vsftpd安装与配置

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用,具有非常高的安全性需求.带宽限制.良好的可伸缩性.可创建虚拟用户.支持IPv6.速率高等特点 1. 下载安装vsftpd服务,使用yum即可,db4用来支持文件数据库 yum install -y vsftpd db4-utils 2. 建立宿主用户vsftpd,因为默认的Vsftpd的服务宿主用户是root,但是这不符合安全性的需要.这里建立名字为vsftpd的用户,用他来作为支持Vsftpd的服务宿主