㈠ 如何在linux中安装ftp服务器
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。并且是一个完全免费开放源码的ftp软件
方法/步骤
1、用在线安装
yum install vsftpd pam* db4*-y
使用命令将vsftp配置为系统服务
chkconfig --level 35 vsftpd on
2、配置vsftpd服务的宿主
useradd vsftpdadmin -s /sbin/nologin -M
这个vsftpdadmin只是用来替换root的,并不需要登录
3、建立ftp虚拟宿主帐户
useradd vsftpuser -s /sbin/nologin -M
这ftpuser只个虚拟帐户的宿主,本身是不用登录的
4、配置vsftpd.conf 配置之前要先备份一下原来的
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许。
chroot_list_enable=YES --> chroot_list_enable=YES //不允许FTP用户离开自己主目录
增加
#设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同。
user_config_dir=/etc/vsftpd/vconf/userlocal
#这一步非常重要,要记住这一步。一会要根据这个配置新建文件夹
#修改端口号
ftp_data_port=4040
reverse_lookup_enable=NO
pasv_enable=yes
pasv_min_port=48790
pasv_max_port=48800
listen_port=48796 #端口可以根据你自己实际情况配置,也可以用默认端口。但是为了安全考虑根据自己实际情况配置
5、建立虚拟用户文件
mkdir /etc/vsftpd/vconf
touch /etc/vsftpd/vonf/vir_user
6、建立虚拟用户
vi /etc/vsftpd/vonf/vir_user
virtualuser //用户名
12345678 //密码
7、生成数据库
db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_user.db
8、设置数据库文件访问权限
chmod 600 /etc/vsftpd/vconf/vir_user
chmod 600 /etc/vsftpd/vconf/vir_user.db
9、修改/etc/pam.d/vsftpd
auth sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user
account sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user
(要想同时使用系统用户和虚拟用户,就需要把required改成sufficient)
10
根据第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal
新建userlocal文件夹
mkdir /etc/vsftpd/vconf/userlocal
11、根据第六步建立的用户名建立一个文件
例如第六步建立的帐号是virtualuser,则新建一个virtualuser文件
touch /etc/vsftpd/conf/userlocal/virtualuser
12、编辑该用户访问的文件路径
vi /etc/vsftpd/conf/userlocal/virtualuser
输入如下
local_root= //需要指定的网站根目录,例如所在文件夹为/www/
anonymous_enable=NO #禁止匿名用户访问
write_enable=YES #开启写权限
local_umask=022 #上传后文件的权限掩码
anon_upload_enable=NO #关闭匿名下载
anon_mkdir_write_enable=NO #关闭匿名创建文件夹
idle_session_timeout=60 #会话自动关闭时间 60是因分钟
data_connection_timeout=120 #数据延迟时间
max_clients=10 #最大连接数
max_per_ip=5 #同一个ip同时允许5个IP联机
local_max_rate=1048576 #实体用户传输速度限制,单位B/s。0代表不限制
13、配置就此完成,重启vsftpd服务:service vsftpd restart。
查看系统端口状态:netstas -tulnp。如果能看到48796端口正在被vsftpd调用说明启动成功。
如有不清楚的可以再继续看看网络经验。
㈡ Linux怎么安装使用FTP服务器ProFTPD
Linux安装使用FTP服务器ProFTPD方法
Linux VPS用户一般都通过SFTP/SCP协议连接OpenSSH Server进行文件传输,但有时候,你希望某些用户只能上传文件到网站目录,而不能够登录系统执行命令以及访问其他目录,这时用FTP Server就能很好地实现.Linux上常用的FTP Server有VSFTPD和ProFTPD,其中ProFTPD简单易用,功能也不错,这里以ProFTPD为例搭建FTP服务器.当然,FTP也可以作为局域网内文件共享的一种方式,比如你的室友使用Windows,向你的Ubuntu ProFTPD个人电脑上传了一部影片,这样就不用拿U盘去拷贝了,其他室友也可以从你的ProFTPD上下载影片.
proftpd的配置方式类似apache,比vsftpd更易用,xampp就集成了proftpd.
代码如下:
sudo apt-get install proftpd-basic
安装时默认作为一个standalone server运行proftpd,如果每天的ftp请求量少,可以安装为inetd服务,节省服务器资源.
这里我使用默认值,安装为standalone server.
代码如下:
sudo netstat -antp|grep proftpd
查看proftpd监听的21端口
用proftpd提供的ftpasswd新建虚拟用户test并设置密码:
代码如下:
sudo mkdir -p /png/proftpd
代码如下:
sudo ftpasswd \
--passwd \
--file=/png/proftpd/passwd \
--name=test \
--uid=122 \
--gid=65534 \
--home=/srv/ftp \
--shell=/bin/false
其中uid和gid我使用的是安装proftpd时自动创建的系统用户ftp:nogroup的uid和gid,执行cat /etc/passwd|grep ftp可见.
/srv/ftp是安装proftpd时自动创建的目录,所有者为ftp:nogroup,权限为755.
这样虚拟用户test以系统用户ftp:nogroup登录/srv/ftp便可以对该目录进行读写.
Linux上的FTP Server的读写权限是映射到系统UGO(User Group Other)上的.
创建虚拟用户时通过设置系统用户uid和gid,以及合理地配置/srv/ftp目录及其文件权限来实现读写控制.
创建新用户时再次执行上述命令即可,根据需要改变一些参数.
比如我创建了一个以uid:gid为1000:1000的系统用户运行,登录目录为/png/www/example.com的虚拟用户eechen:
代码如下:
sudo ftpasswd \
--passwd \
--file=/png/proftpd/passwd \
--name=eechen \
--uid=1000 \
--gid=1000 \
--home=/png/www/example.com \
--shell=/bin/false
创建用户不需要重载proftpd,因为proftpd每次认证时都会读取认证文件.
代码如下:
sudo chown proftpd:nogroup /png/proftpd/passwd 设置passwd文件读写权限,确保proftpd能读取该文件.
代码如下:
sudo nano /etc/proftpd/proftpd.conf
在末尾加入:
代码如下:
DefaultRoot ~ #将用户限定在自己的目录中,上面test用户对应的就是/srv/ftp
RequireValidShell off #禁用Shell请求认证
AuthOrder mod_auth_file.c #认证方式顺序,这里采用文件认证
AuthUserFile /png/proftpd/passwd #存放用户名和密码的文件
代码如下:
sudo service proftpd reload
重载使配置生效。
更改proftpd的默认端口
在文件/etc/proftpd.conf找到:
代码如下:
Port 21
更改为:
代码如下:
Port 2121
如果开启了iptables,iptables限制了所有的出站端口,加载模块ip_conntrack_ftp,这时在加载ip_conntrack_ftp模块时需要更改代理端口为2121。
打开/etc/sysconfig/iptables-config,保证此文件定义加载了ip_conntrack_ftp,如:
代码如下:
IPTABLES_MODULES="ip_conntrack_ftp"
然后在文件/etc/modprobe.conf增加此模块的参数:
代码如下:
options ip_conntrack_ftp ports=2121
如果需要手动加载,则可以执行以下命令:
代码如下:
/sbin/modprobe ip_conntrack_ftp ports=2121
㈢ 简述Linux下安装FTP的过程
. 先用rpm -qa| grep vsftpd命令检查是否已经安装,如果ftp没有安装,使用yum -y install vsftpd 安装,(ubuntu 下使用apt-get install vsftpd)
安装完之后我们要对它进行配置,才能正常使用。编辑vsftpd的配置文件vi /etc/vsftpd/vsftpd.conf
vi编辑器中的搜索使命是斜杠“/”,然后输入要查找的内容,回车确定。以下是要更改的选项
anonymous_enable=NO #禁止匿名访问
ascii_upload_enable #允许使用ascii码上传
ascii_download_enable #允许使用ascii码下载
userlist_deny=NO #(这条需手动添加到最后)使用FTP用户表,表里没有的用户需要添加才能登录
设置完毕之后,ESC,冒号wq回车。启动vsftpd服务/etc/init.d/vsftpd start,看到[确定]即为启动成功。
2. service vsftpd start 启动要让FTP每次开机自动启动,运行命令: chkconfig --level 35 vsftpd on
3. 设置ftp权限
vi /etc/vsftpd/vsftpd.conf
将anonymous_enable=YES 改为 anonymous_enable=NO
ESC返回,输入“:wq”保存并退出
4. 添加ftp帐号和目录
useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp passwd pwftp chmod -R 755 /alidata/www/wwwroot chown -R pwftp /alidata/www/wwwroot /etc/rc.d/init.d/vsftpd restart
然后用帐号pwftp密码123456
测试下就可以登陆ftp了。目录是/alidata/www/wwwroot
修改防火墙,允许FTP使用的21端口通过
<img title="Linux防火墙" alt="Linux防火墙配置" src="http://filesimg.111cn.net/2013/10/22/20131022070008307.jpg" width="665" height="411" oldblock="inline" loaded="true" original="http://filesimg.111cn.net/2013/10/22/20131022070008307.jpg" jquery1382424581890="24" />
Linux防火墙配置
重启防火墙service iptables restart之后关闭selinux。不然就不连接不上FTP。
linux关闭selinux
然后reboot重启Linux服务器。
本人使用FlashFXP客户端软件连接,直到出现用户主目录(一般位于/home/用户名),则vsftpd成功安装并运行。然后就能进行文件的上传和下载了。
㈣ linux怎么安装ftp
直接执行命令
yum install ftp即可
㈤ Linux系统怎么安装FTP和登陆使用
yum install vsftpd 安装
service vsftpd start 启动
chkconfig vsftpd on 开机启动
默认路径在 /var/ftp/ 把要上传的文件放到默认路径下
yum -y install lftp 安装客户端
lftp 192.168.1.55 登录 lftp + ip
ftp> ls 查看
ftp> cd 切换目录
ftp> get 下载
更多配置请参考
http://jingyan..com/article/90bc8fc8674c97f653640cd4.html
㈥ linux下怎么安装ftp服务器
1、检查安装vsftpd软件
使用如下命令#rpm -qa |grep vsftpd可以检测出是否安装了vsftpd软件,
如果没有安装,使用YUM命令进行安装。
2、启动服务
使用vsftpd软件,主要包括如下几个命令:
启动ftp命令#service vsftpd start
停止ftp命令#service vsftpd stop
重启ftp命令#service vsftpd restart
3、vsftpd的配置
ftp的配置文件主要有三个,位于/etc/vsftpd/目录下,分别是:
ftpusers 该文件用来指定那些用户不能访问ftp服务器。
user_list 该文件用来指示的默认账户在默认情况下也不能访问ftp
vsftpd.conf vsftpd的主配置文件
4、以匿名用户为例,我们去掉配置文件vsftpd.conf 里面以下
anon_upload_enable=YES
anon_mkdir_write_enable=YES
两项前面的#号,就可以完成匿名用户的配置,此时匿名用户既可以登录上传、下载文件。记得修改配置文件后需要重启服务。
5、非匿名账户的创建与使用
vsftpd服务与系统用户是相互关联的,例如我们创建一个名为test 的系统用户,那么此用户在默认配置的情况下就可以实现登录,如图
登录后在页面创建名为“aa”的文件夹,同样我们在服务器test用户 的home目录里也可以看到相同的文件。
㈦ 如何在linux 服务器上安装 ftp
目录:
一、Redhat/CentOS安装vsftp软件
二、Ubuntu/Debian安装vsftp软件
一、Redhat/CentOS安装vsftp软件
1.更新yum源
首先需要更新系统的yum源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安装vsftp
使用yum命令安装vsftp
#yum install vsftpd -y
3.添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义帐户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该帐户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC键,输入:wq
5.修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6.启动vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd start
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。
二、Ubuntu/Debian安装vsftp软件
1.更新软件源
首先需要更新系统的软件源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安装vsftp
使用apt-get命令安装vsftp
#apt-get install vsftpd -y
3.添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义帐户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该帐户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
保存退出
编辑/etc/vsftpd.chroot_list文件,将ftp的帐户名添加进去,保存退出
5.修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6.重启vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd restart
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。
㈧ 如何在linux服务器中安装ftp服务器
在创建FTP服务器之有先命令: ps -ef |grep vsftpd
查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装。
然后再执行:yum install vsftpd -y
进行在线安装vsftpd这个服务。
安装成功以后需要把匿名登陆的这个功能关闭了。
使用命令: vim /etc/vsftpd/vsftpd.conf
然后在里成找到:
anonymous_enable=NO
然后再查看一下vsftpd这个服务有没有启动。
使用命令: chkconfig --list
如果你如下图所示一样没有启动。
没有启动使用启动:chkconfig --level 35 vsftpd on
再接下来就是创建用户名。
创建用户名:useradd jingyan
再然后就是创建密码。
命令:passwd jingyan
再输入两次密码就可以了。
最后重启一下服务:service vsftpd start
如果出现启动失败则可以使用:/etc/rc.d/init.d/vsftpd restart
8
成功链接FTP服务器上。
㈨ linux怎么配置ftp服务器
一. FTP 说明
linux 系统下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 还有一个是proftp(Profession ftp)。 我们这里也是简单的说明下vsftp的配置。
vsftp提供3种远程的登录方式:
(1)匿名登录方式
就是不需要用户名,密码。就能登录到服务器电脑里面
(2)本地用户方式
需要帐户名和密码才能登录。而且,这个帐户名和密码,都是在你linux系统里面,已经有的用户。
(3)虚拟用户方式
同样需要用户名和密码才能登录。但是和上面的区别就是,这个用户名和密码,在你linux系统中是没有的(没有该用户帐号)
二. Vsftp的安装配置
2.1 安装
vsftp 的安装包,可以在安装里找到。 用yum 安装过程也很简单。
安装命令:yum install vsftpd
2.2. 相关命令
2.2.1 启动与关闭
[root@singledb ~]# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# service vsftpd stop
Shutting down vsftpd: [ OK ]
[root@singledb ~]# service vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd start
Starting vsftpd for vsftpd: [FAILED]
[root@singledb ~]# /etc/init.d/vsftpd stop
Shutting down vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd status
vsftpd (pid 3931) is running...
[root@singledb ~]#
2.2.2. 其他命令
--查看vsftpd 启动状态
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@singledb ~]# chkconfig vsftpd on
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
这里看到,默认情况下从2到5设置为on了。2到5是多用户级别。 这个对应的是linux不同的运行级别。
我们也可以加level 选项来指定:
[root@singledb ~]# chkconfig --level 0 vsftpd on
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:on 1:off 2:on 3:on 4:on 5:on 6:off
我们看到0已经设置为on了。
我们可以使用man chkconfig 来查看帮助:
--level levels
Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, --level 35 specifies runlevels 3 and 5.
传统的init 定义了7个运行级(run level),每一个级别都代表系统应该补充运行的某些特定服务:
(1)0级是完全关闭系统的级别
(2)1级或者S级代表单用户模式
(3)2-5 级 是多用户级别
(4)6级 是 重新引导的级别
(1)查看防火墙
我一般都是把系统的防火墙关闭了。 因为开了会有很多限制。
[root@singledb ~]# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
You have new mail in /var/spool/mail/root
--添加开放21号端口:
[root@singledb ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
[root@singledb ~]# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
4 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67
5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
--保存配置
[root@singledb ~]# /etc/rc.d/init.d/iptables save
Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
--重启防火墙:
[root@singledb ~]# service iptables {start|stop|restart}
(2)查看关闭selinux
[root@singledb ~]# sestatus
SELinux status: disabled
我这里在安装操作系统的时候就关闭了selinux,如果没有关闭,可以修改如下文件来关闭:
[root@singledb ~]# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
[root@singledb ~]#
保存退出并重启系统reboot
三. FTP配置文件
FTP 安装好之后,在/etc/vsftpd/目录下会有如下文件:
[root@singledb ~]# cd /etc/vsftpd/
[root@singledb vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@singledb vsftpd]#
vsftpd.conf: 主配置文件
ftpusers: 指定哪些用户不能访问FTP服务器
user_list: 指定的用户是否可以访问ftp服务器由vsftpd.conf文件中的userlist_deny的取值来决定。
[root@singledb vsftpd]# cat user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
我们过滤掉#的注释后,查看一下vsftpd.conf 文件:
[root@singledb ftp]# cat /etc/vsftpd/vsftpd.conf |grep -v '^#';
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=yes
tcp_wrappers=YES
至于这些参数的意思,在注释里有详细的说明。
我们可以在vsftpd.conf 文件设置如下参数:
(1)ftpd_banner=welcome to ftp service :设置连接服务器后的欢迎信息
(2)idle_session_timeout=60 :限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)
(3)data_connection_timeout=120 :设置客户机在进行数据传输时,设置空闲的数据中断时间
(4)accept_timeout=60 设置在多长时间后自动建立连接
(5)connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;
(6)max_clients=200 指明服务器总的客户并发连接数为200
(7)max_per_ip=3 指明每个客户机的最大连接数为3
(8)local_max_rate=50000(50kbytes/sec) 本地用户最大传输速率限制
(9)anon_max_rate=30000匿名用户的最大传输速率限制
(10)pasv_min_port=端口
(11)pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;
(12)listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;
(13)listen_port=端口号 设置FTP工作的端口号,默认的为21
(14)chroot_local_user=YES 设置所有的本地用户可以chroot
(15)chroot_local_user=NO 设置指定用户能够chroot
(16)chroot_list_enable=YES
(17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用户才能执行 )
(18)local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;
(19)chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下;
(20)chroot_list_enable=yes/no 锁定指定文件中用户的主目录(部分),文件:/chroot_list_file=path 中指定;
(21)userlist_enable=YES/NO 是否加载用户列表文件;
(22)userlist_deny=YES 表示上面所加载的用户是否允许拒绝登录;
(23)userlist_file=/etc/vsftpd/user_list 列表文件
限制IP 访问FTP:
#vi /etc/hosts.allow
vsftpd:192.168.5.128:DENY 设置该IP地址不可以访问ftp服务
FTP 访问时间限制:
#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd
#vi /etc/xinetd.d/vsftpd/
修改 disable = no
access_time = hour:min-hour:min (添加配置访问的时间限制(注:与vsftpd.conf中listen=NO相对应)
例: access_time = 8:30-11:30 17:30-21:30 表示只有这两个时间段可以访问ftp
ftp的配置基本上只有这些了。
默认情况下,ftp根目录是/var/ftp。 如果要修改这个目录位置,可以更改/etc/passwd 文件:
[root@singledb ftp]# cat /etc/passwd | grep ftp
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
创建一个用户来访问FTP,并指定该用户的FTP 目录:
[root@singledb u02]# useradd -d /u02/qsftp qs
[root@singledb u02]# passwd qs
Changing password for user qs.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
这里指定的是/u02/qsftp 这个目录,要注意个目录的权限。
更改用户不能telnet,只能ftp:
usermod -s /sbin/nologin username //用户只能ftp,不能telnet
usermod -s /sbin/bash username //用户恢复正常
禁止用户ssh登陆
useradd username -s /bin/false
更改用户主目录:
usermod -d /bbb username //把用户的主目录定为/bbb
然后用qs这个用户就可以访问了。
以上只是一些简单的设置。 在用户权限这块还有很多内容可以研究。 比如特定用户的特定权限。 安全性等。 以后在研究了。