当前位置:文档之家› linux 中搭建FTP服务器

linux 中搭建FTP服务器

linux 中搭建FTP服务器
linux 中搭建FTP服务器

RHEL5中配置vsftpd搭建FTP服务器

RPM安装包名:vsftpd-2.0.5-10.el5.i386.rpm (第二张光盘)

下载地址:https://www.doczj.com/doc/8c2080801.html,

源代码最新版本:vsftpd-2.0.5.tar.gz

#rpm –ivh vsftpd-2.0.5-10.el5.i386.rpm 安装rpm程序包

#service vsftpd start =/etc/init.d/vsftpd start 启动vsftpd服务

#service vsftpd stop =/etc/init.d/vsftpd stop 停止vsftpd服务

#service vsftpd restart =/etc/init.d/vsftpd restart 重启vsftpd服务#service vsftpd status =/etc/init.d/vsftpd status 检查vsftpd服务状态# ntsysv 或 #chkconfig –level 35 vsftpd on 更改服务自动加载

vsftpd的主配置文件/etc/vsftpd/vsftpd.conf说明(修改前先备份):

# Example config file /etc/vsftpd/vsftpd.conf

# The default compiled in settings are fairly paranoid. This sample file

# loosens things up a bit, to make the ftp daemon more usable.

# Please see vsftpd.conf.5 for all compiled in defaults.

# READ THIS: This example file is NOT an exhaustive list of vsftpd options.

# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's

# capabilities.

# Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=YES (是否允许匿名登录FTP服务器,默认设置为YES允许,即用户可使用用户名ftp或anonymous进行ftp登录,口令为用户的E-mail地址。如不允许匿名访问去掉前面#并设置为NO)

# Uncomment this to allow local users to log in.

local_enable=YES (是否允许本地用户(即linux系统中的用户帐号)登录FTP服务器,默认设置为YES允许,本地用户登录后会进入用户主目录,而匿名用户登录后进入匿名用户的下载目录/var/ftp/pub;若只允许匿名用户访问,前面加上#,可阻止本地用户访问FTP服务器。)

# Uncomment this to enable any form of FTP write command.

write_enable=YES (是否允许本地用户对FTP服务器文件具有写权限,默认设置为YES

允许)

# Default umask for local users is 077. You may wish to change this to 022,

# if your users expect that (022 is used by most other ftpd's)

#local_umask=022 (或其它值,设置本地用户的文件掩码为缺省022,也可根据个人喜好将其设置为其他值,默认值为077)

# Uncomment this to allow the anonymous FTP user to upload files. This only

# has an effect if the above global write enable is activated. Also, you will # obviously need to create a directory writable by the FTP user.

#anon_upload_enable=YES (是否允许匿名用户上传文件,须将write_enable=YES,默认设置为YES允许)

# Uncomment this if you want the anonymous FTP user to be able to create

# new directories.

#anon_mkdir_write_enable=YES (是否允许匿名用户创建新文件夹,默认设置为YES允许)# Activate directory messages - messages given to remote users when they

# go into a certain directory.

#dirmessage_enable=YES (是否激活目录欢迎信息功能,当用户用CMD 模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息,默认情况下,欢迎信息是通过该目录下的.message文件获得的,此文件保存自定义的欢迎信息,由用户自己建立)

# Activate logging of uploads/downloads.

xferlog_enable=YES (默认值为NO如果启用此选项,系统将会维护记录服务器上传和下载情况的日志文件,默认情况该日志文件为/var/log/vsftpd.log,也可以通过下面的

xferlog_file选项对其进行设定。)

# Make sure PORT transfer connections originate from port 20 (ftp-data). connect_from_port_20=YES (设定FTP服务器将启用FTP数据端口的连接请求,ftp-data 数据传输,21为连接控制端口)

# If you want, you can arrange for uploaded anonymous files to be owned by

# a different user. Note! Using "root" for uploaded files is not

# recommended!-注意,不推荐使用root用户上传文件

#chown_uploads=YES(设定是否允许改变上传文件的属主,与下面一个设定项配合使用)

#chown_username=whoever (设置想要改变的上传文件的属主,如果需要,则输入一个系统用户名,例如可以把上传的文件都改成root属主。whoever:任何人)

# You may override where the log file goes if you like. The default is shown

# below.

#xferlog_file=/var/log/vsftpd.log(设定系统维护记录FTP服务器上传和下载情况的日志文件,/var/log/vsftpd.log是默认的,也可以另设其它)

# If you want, you can have your log file in standard ftpd xferlog format

#xferlog_std_format=YES(如果启用此选项,传输日志文件将以标准xferlog的格式书写,该格式的日志文件默认为/var/log/xferlog,也可以通过xferlog_file选项对其进行设定,默认值为NO)

#dual_log_enable(如果添加并启用此选项,将生成两个相似的日志文件,默认在

/var/log/xferlog和/var/log/vsftpd.log目录下。前者是wu_ftpd类型的传输日志,可以利用标准日志工具对其进行分析;后者是vsftpd类型的日志)

#syslog_enable(如果添加并启用此选项,则原本应该输出到/var/log/vsftpd.log中的日志,将输出到系统日志中)

# You may change the default value for timing out an idle session.

#idle_session_timeout=600 (设置数据传输中断间隔时间,此语句表示空闲的用户会话中断时间为600秒,即当数据传输结束后,用户连接FTP服务器的时间不应超过600秒,可以根据实际情况对该值进行修改)

# You may change the default value for timing out a data connection.

#data_connection_timeout=120 (设置数据连接超时时间,该语句表示数据连接超时时间为120秒,可根据实际情况对其个修改)

# It is recommended that you define on your system a unique user which the

# ftp server can use as a totally isolated and unprivileged user.

#nopriv_user=ftpsecure (运行vsftpd需要的非特权系统用户,缺省是nobody)

# Enable this and the server will recognise asynchronous ABOR requests. Not

# recommended for security (the code is non-trivial). Not enabling it,

# however, may confuse older FTP clients.

#async_abor_enable=YES(如果FTP client会下达“async ABOR”这个指令时,这个设定才需要启用,而一般此设定并不安全,所以通常将其取消)

# By default the server will pretend to allow ASCII mode but in fact ignore

# the request. Turn on the below options to have the server actually do ASCII

# mangling on files when in ASCII mode.

# Beware that on some FTP servers, ASCII support allows a denial of service

# attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd

# predicted this attack and has always been safe, reporting the size of the

# raw file.

# ASCII mangling is a horrible feature of the protocol.

#ascii_upload_enable=YES (大多数FTP服务器都选择用ASCII方式传输数据,将#去掉就能实现用ASCII方式上传和下载文件)

#ascii_download_enable=YES (将#去掉就能实现用ASCII方式下载文件)

# You may fully customise the login banner string:

#ftpd_banner=Welcome to blah FTP service. (将#去掉可设置登录FTP服务器时显示的欢迎信息,可以修改=后的欢迎信息内容。另外如在需要设置更改目录欢迎信息的目录下创建名为.message的文件,并写入欢迎信息保存后,在进入到此目录会显示自定义欢迎信息)# You may specify a file of disallowed anonymous e-mail addresses. Apparently

# useful for combatting certain DoS attacks.

#deny_email_enable=YES(可将某些特殊的email address抵挡住。如果以anonymous登录服务器时,会要求输入密码,也就是您的email address,如果很讨厌某些email address,就可以使用此设定来取消他的登录权限,但必须与下面的设置项配合)

# (default follows)

#banned_email_file=/etc/vsftpd/banned_emails(当上面的deny_email_enable=YES时,可以利用这个设定项来规定那个email address不可登录vsftpd服务器,此文件需用户自己创建,一行一个email address即可!)

# You may specify an explicit list of local users to chroot() to their home

# directory. If chroot_local_user is YES, then this list becomes a list of

# users to NOT chroot().

#chroot_list_enable=YES(设置为NO时,用户登录FTP服务器后具有访问自己目录以外的

其他文件的权限,设置为YES时,用户被锁定在自己的home目录中,vsftpd将在下面chroot_list_file选项值的位置寻找chroot_list文件,此文件需用户建立,再将需锁定在自己home目录的用户列入其中,每行一个用户)

# (default follows)

#chroot_list_file=/etc/vsftpd/chroot_list(此文件需自己建立,被列入此文件的用户,在登录后将不能切换到自己目录以外的其他目录,由FTP服务器自动地chrooted到用户自己的home目录下,使得chroot_list文件中的用户不能随意转到其他用户的FTP home目录下,从而有利于FTP服务器的安全管理和隐私保护)

# You may activate the "-R" option to the builtin ls. This is disabled by

# default to avoid remote users being able to cause excessive I/O on large

# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume # the presence of the "-R" option, so there is a strong case for enabling it. #ls_recurse_enable=YES(是否允许递归查询,大型站点的FTP服务器启用此项可以方便远程用户查询)

# When "listen" directive is enabled, vsftpd runs in standalone mode and

# listens on IPv4 sockets. This directive cannot be used in conjunction

# with the listen_ipv6 directive.

listen=YES(如果设置为YES,则vsftpd将以独立模式运行,由vsftpd自己监听和处理连接请求)

# This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6 # sockets, you must run two copies of vsftpd whith two configuration files.

# Make sure, that one of the listen options is commented !!

#listen_ipv6=YES(设定是否支持IPV6)

#pam_service_name=vsftpd(设置PAM外挂模块提供的认证服务所使用的配置文件名,即/etc/pam.d/vsftpd文件,此文件中file=/etc/vsftpd/ftpusers字段,说明了PAM模块能抵挡的帐号内容来自文件/etc/vsftpd/ftpusers中)

#userlist_enable=YES/NO(此选项默认值为NO ,此时ftpusers文件中的用户禁止登录FTP 服务器;若此项设为YES,则user_list文件中的用户允许登录 FTP服务器,而如果同时设置了userlist_deny=YES,则user_list文件中的用户将不允许登录FTP服务器,甚至连输入密码提示信息都没有,直接被FTP服务器拒绝)

#userlist_deny=YES/NO(此项默认为YES,设置是否阻扯user_list文件中的用户登录FTP 服务器)

tcp_wrappers=YES (表明服务器使用tcp_wrappers作为主机访问控制方式,tcp_wrappers 可以实现linux系统中网络服务的基于主机地址的访问控制,在/etc目录中的hosts.allow 和hosts.deny两个文件用于设置tcp_wrappers的访问控制,前者设置允许访问记录,后者设置拒绝访问记录。例如想限制某些主机对FTP服务器192.168.57.2的匿名访问,编缉

/etc/hosts.allow文件,如在下面增加两行命令:vsftpd:192.168.57.1ENY 和vsftpd:192.168.57.9ENY表明限制IP为192.168.57.1/192.168.57.9主机访问IP为192.168.57.2的FTP服务器,此时FTP服务器虽可以PING通,但无法连接)

在FTP服务器的管理中无论对本地用户还是匿名用户,对于FTP服务器资源的使用都需要进行控控制,避免由于负担过大造成FTP服务器运行异常,可以添加以下配置项对FTP客户机使用FTP服务器资源进行控制:

max_client设置项用于设置FTP服务器所允许的最大客户端连接数,值为0时表示不限制。例如max_client=100表示FTP服务器的所有客户端最大连接数不超过100个。

max_per_ip设置项用于设置对于同一IP地址允许的最大客户端连接数,值为0时表示不限制。例如max_per_ip=5表示同一IP地址的FTP客户机与FTP服务器建立的最大连接数不超过5个。

local_max_rate设置项用于设置本地用户的最大传输速率,单位为B/s,值为0时表示不限制。例如local_max_rate=500000表示FTP服务器的本地用户最大传输速率设置为500KB/s. ano n_max_rate设置项用于设置匿名用户的最大传输速率,单位为B/s,值为0表示不限制。Listen_port=7761 指定访问的端口号为7761

例如ano_max_rate=200000,表示FTP服务器的匿名用户最大传输速率设置为200KB/s. https://www.doczj.com/doc/8c2080801.html,er_list文件需要与vsftpd.conf文件中的配置项结合来实现对于

https://www.doczj.com/doc/8c2080801.html,er_list文件中指定用户账号的访问控制:

(1)设置禁止登录的用户账号

当vsftpd.conf配置文件中包括以下设置时,https://www.doczj.com/doc/8c2080801.html,er_list文件中的用户账号被禁止进行FTP登录:

userlist_enable=YES

userlist_deny=YES

userlist_enable设置项设置使用https://www.doczj.com/doc/8c2080801.html,er_list文件,userlist_deny设置为YES表示https://www.doczj.com/doc/8c2080801.html,er_list文件用于设置禁止的用户账号。

(2)设置只允许登录的用户账号

当vsftpd.conf配置文件中包括以下设置时,只有https://www.doczj.com/doc/8c2080801.html,er_list文件中的用户账号能够进行FTP登录:

userlist_enable=YES

userlist_deny=NO

userlist_enable设置项设置使用https://www.doczj.com/doc/8c2080801.html,er_list文件,userlist _deny设置为NO表示https://www.doczj.com/doc/8c2080801.html,re_list文件用于设置只允许登录的用户账号,文件中未包括的用户账号被禁止FTP登录。

userlist_deny和userlist_enabl e选项限制用户登录FTP服务器(使用userlist_deny

选项和user_list文件一起能有效阻止root,apache,www等系统用户登录FTP服务器,从而

配置FTP服务器的虚拟用户

在vsftpd服务器中支持匿名用户,本地用户,和虚拟用户3类用户账号,用途及区别如下:匿名用户是名为anonymous或ftp的FTP用户,匿名FTP用户登录后将FTP服务器中的

/var/ftp作为FTP根目录。匿名用户通常用于提供公共文件的下载,如架设公共软件下载的FTP服务器,所有人都可以使用匿名用户进行软件下载。

本地用户账号是FTP服务器中的系统用户账号,使用FTP本地用户账号登录FTP服务器后,登录目录为本地用户的宿主目录。本地FTP用户账号通常和Web服务器一起提供虚拟主机服务,作为网页虚拟主机更新网页的途径。

虚拟用户账号是为了保证FTP服务器的安全性,由vsftpd服务器提供的非系统用户账号。虚拟用户FTP登录后将把指定的目录作为FTP根目录。虚拟用户与本地用户具有类似的功能,由于虚拟用户相对安全,因此正逐步替代本地用户账号。

由于虚拟用户账号具有较高的安全性,可以替代本地用户账号使用,下面是vsftpd虚拟用

户账号设置的几个步骤:

以设置miket 和 john 两个虚拟用户帐号为例来配置vsftpd服务器

(1)建立虚拟用户口令库文件

建立虚拟用户的口令文件,文件中奇数行设置虚拟用户的用户名,偶数行设置用户的口令。例如,使用vi编辑器建立名为logins.txt的用户口令库文件,在文件中设置用户mike的口令为pwabcd,用户john 的口令是pw1234:

#vi logins.txt

mike (奇数行设置虚拟用户名)

pwabcd (偶数行设置用户口令)

john

pw1234

:wq(保存退出)

(2)生成vsftpd 的认证文件

使用db_load 命令生成认证文件。“-f”命令选项设置的值是虚拟用户的口令库文件,即上面创建的logins.txt。命令的参数设置为需要生成的认证文件名如 vsftpd_login.db,该文件放置在目录/etc/vsftpd/下:

#db_load -T -t hash –f logins.txt /etc/vsftpd/vsftpd_login.db (生成认证文件)

如果执行db_load命令提示: command not found时,就需要从系统盘中安装以下下面几个程序包了:

要使用db_load需要将位其他几张光盘中的db4-java-4.3.29-9.fc6.i386.rpm\db4-

tcl-4.3.29-9.fc6.i386.rpm\db4-utils-4.3.29-9.fc6.i386.rpm安装上

还有不要去下载什么ftp之类的东东去找db_load 命令,,只要装了光盘自带就能解决

问题~

#file /etc/vsftpd/vsftpd_login.db (查看文件类型)

/etc/vsftpd/vsftpd_login.db:Berkeley DB (Hash,version 8 , native byte-order) 生成的认证文件的权限应设置为只对root用户可读可写,即600:

#chmod 600 /etc/vsftpd/vsftpd_login.db

(3)建立虚拟用户所需的PAM配置文件

在/etc/pam.d目录下建立vsftpd虚拟用户身份认证所需的PAM配置文件,名称是vsftpd.vu,内容为:

#cat /etc/pam.d/vsftpd.vu

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login (4)建立虚拟用户及要访问的目录并设置相应的权限

建立vsftpd虚拟用户所需的系统用户账号,账号名为virtual,指定用户的宿主目录是

/home/ftpsite,设置宿主目录的权限为700:

#useradd -d /home/ftpsite virtual

#chmod 700 /home/ftpsite/

这样vsftpd服务器中的所有虚拟用户账号登录后都将在/home/ftpsite目录中

(5)设置vsftpd.conf主配置文件

在对vsftpd.conf配置文件进行修改之前,应先将原有的文件进行备份,以便出现配置错误时可进行恢复:

#cd /etc/vsftpd

#cp vsftpd.conf vsftpd.conf.bak

在vsftpd.conf配置文件中添加虚拟用户的配置项,内容为:

guest_enable=YES

guest_username=virtual

pam_service_name=vsftpd.vu

(6)重新启动vsftpd服务程序

在对vsftpd.conf配置文件进行了任何修改后都需要重新启动vsftpd服务,以便配置生效:#service vsftpd restart

(7)测试vsftpd中的虚拟用户账号:mike 或 john

在测试前可以先在/home/ftpsite目录中建立测试文件,用于测试时进行下载,并设置该文件的属主和属组为virtual

#touch /home/ftpsite/afile

#chown virtual.virtual /home/ftpsite/afile

使用ftp命令登录vsftpd服务器,并使用已配置的虚拟用户帐号mike进行登录

#ftp localhost

name (localhost:root):mike

password:

ftp>get afile

在完成虚拟用户的FTP登录后,可使用get命令下载测试文件,测试文件会保存到用户的当前目录中。

(8)对不同的虚拟用户设置不同的权限

vsftpd服务器中的虚拟用户可以灵活的针对不同的用户账号设置不同的用户权限,配置的步骤如下:

1.设置主配置文件

在vsftpd.conf配置文件中添加user_config_dir配置项,并设置用户配置文件的保存目录user_config_dir=/etc/vsftpd/vsftpd_user_conf

在上面的配置实例中,设置在/etc/vsftpd/vsftpd_user_conf目录中保存虚拟用户的配置

2.建立用户配置文件目录

使用mkdir命令建立虚拟用户配置文件的保存目录

#mkdir /etc/vsftpd/vsftpd_user_conf

3.为虚拟用户建立单独的配置文件

在/etc/vsftpd/vsftpd_user_conf/目录中可以为每个虚拟用户建立独立的配置文件,配置文件名称和用户名相同。例如,为用户mike建立配置文件mike ,并将

anon_world_readable_only设置为NO,表示用户具有浏览和下载的权限

#cat /etc/vsftpd/vsftpd_user_conf/mike

anon_world_readable_only=NO

为用户john建立配置文件john,并设置该用户具有浏览,下载,上传,改名,删除文件,建立和删除的权限。

#cat john

local_root=/etc/vsftpd/ftp/hello ----可以指定登录后的目录位置

anon_world_readable_only=NO --表示用户可以浏览FTP目录和下载文件

anon_upload_enable=YES --表示用户可以上传文件

anon_mkdir_write_enable=YES --表示用户具有建立和删除目录的权利

anon_other_write_enable=YES --表示用户具有文件改名和删除文件的权限

通过对以上配置项的组合设置,vsftpd可以为每个虚拟用户配置不同的FTP权限,用户配置文件中没有的配置项将按照vsftpd.conf配置文件中的内容设置。

vsftpd服务器的其它主要设置:

1.最大传输速率设置:

设置匿名用户的最大传输率为20Kbps,修改/etc/vsftpd/vsftpd.conf添加语句:

anon_max_rate=20000

设置本地帐号最大传输率为1Mbps,修改/etc/vsftpd/vsftpd.conf添加语句:

local_max_rate=1000000

2.服务器最大并发数和用户最大线程数设置:

例如设置服务器允许的最大并发数为99,而每个用户同一时段的最大并发线程数为5,修改/etc/vsftpd/vsftpd.conf添加两行语句:max_clients=99 和 max_per_ip=5

3.修改默认端口:

默认FTP服务器端口号是21,出于安全目的,有时需修改默认端口号,修改

/etc/vsftpd/vsftpd.conf

添加语句(例):listen_port=4449 该语句指定了修改后FTP服务器的端口号,应尽量大于4000,修改后访问

#ftp 192.168.57.2 4449(需加上正确的端口号了,否则不能正常连接)

4.设置用户组,增强FTP服务器安全性:

#mkdir –p /home/try 递归创建新目录

#groupadd try 新建组

#useradd –g try –d /home/try try1 新建用户try1并指定家目录和属组

#useradd –g try –d /home/try try2 新建用户try2并指定家目录和属组

#useradd –g try –d /home/try try3 新建用户try3并指定家目录和属组

#passwd try1 为新用户设密码

#passwd try2 为新用户设密码

#passwd try3 为新用户设密码

#chown try1 /home/try 设置目录属主为用户try1

#chown .try /home/try 设置目录属组为组try

#chmod 750 /home/try 设置目录访问权限try1为读,写,执行;try2,try3为读,执行由于本地用户登录FTP服务器后进入自己主目录,而try1,try2 try3对主目录/home/try

分配的权限不同,所以通过FTP访问的权限也不同,try1访问权限为:上传,下载,建目

录 ;try2ty3访问权限为下载,浏览,不能建目录和上传。实现了群组中用户不同访问级别,加强了对FTP服务器的分级安全管理。

5.常见的vsftpd日志解决方案如下:

xferlog_enable=YES (表明FTP服务器记录上传下载的情况)

xferlog_std_format=YES (表明将记录的上传下载情况写在xferlog_file所指定的文件中,即xferlog_file选项指定的/var/log/xferlog文件中)

xferlog_file=/var/log/xferlog

dual_log_enable=YES (表明启用了双份日志,在用xferlog文件记录服务器上传下载情况的同时,vsftpd_log_file所指定的文件,即/var/log/vsftpd.log也将用来记录服务器的传输情况)

vsftpd_log_file=/var/log/vsftpd.log

vsftpdr的两个日志文件分析如下:

/var/log/xferlog 记录内容举例

Thu Sep 6 09:07:48 2007 7 192.168.57.1 4323279

/home/student/phpMyadmin-2.11.0-all-languages.tar.gz b – i r student ftp 0 * c /var/log/vsftpd.log 记录内容举例

Tue Sep 11 14:59:03 2007 [pid 3460] CONNECT: Client “127.0.0.1”

Tue Sep 11 14:59:24 2007 [pid 3459] [ftp] OK LOGIN;Client “127.0.0.1” ,anon password ”?”

6.匿名FTP设置方法:

通常在登录FTP服务器的用户不确定的情况下,应将FTP服务器设置为允许匿名账号登录的FTP服务器

1.启用匿名帐号

anonymous_enable=YES

local_enable=YES

write_enable=YES

listen=YES

设置完成后,重启vsftd.将允许匿名账号和本地账号登录FTP服务器,同时允许匿名用户具有对FTP服务器文件的写权限,并且只能下载文件而不能上传,不允许匿名账号创建文件夹,匿名用户的口令为一个E-mail地址。

2.允许匿名账号上传文件

anon_upload_enable=YES

anon_mkdir_write_enable=YES

将#去掉即可,重启vsftpd.将允许匿名账号上传文件,也就是具有在FTP服务器的本地目录中新建文件和文件夹的功能

3.仅允许匿名用户访问

#local_enable=YES

#write_enable=YES

在前面加上#,即限制本地账号访问,仅允许匿名用户访问

4.禁止匿名访问,允许本地账号访问

anonymous_enable=NO

local_enable=YES

write_enable=YES

FTP数字代码的意义110 重新启动标记应答。120 服务在多久时间内ready。

125 数据链路端口开启,准备传送。

150 文件状态正常,开启数据连接端口。

200 命令执行成功。

202 命令执行失败。

211 系统状态或是系统求助响应。

212 目录的状态。

213 文件的状态。

214 求助的讯息。

215 名称系统类型。

220 新的联机服务ready。

221 服务的控制连接端口关闭,可以注销。

225 数据连结开启,但无传输动作。

226 关闭数据连接端口,请求的文件操作成功。

227 进入passive mode。

230 使用者登入。

250 请求的文件操作完成。

257 显示目前的路径名称。

331 用户名称正确,需要密码。

332 登入时需要账号信息。

350 请求的操作需要进一部的命令。

421 无法提供服务,关闭控制连结。

425 无法开启数据链路。

426 关闭联机,终止传输。

450 请求的操作未执行。

451 命令终止:有本地的错误。

452 未执行命令:磁盘空间不足。

500 格式错误,无法识别命令。

501 参数语法错误。

502 命令执行失败。

503 命令顺序错误。

504 命令所接的参数不正确。

530 未登入。 532 储存文件需要账户登入。 550 未执行请求的操作。 551 请求的命令终止,类型未知。

552 请求的文件终止,储存位溢出。 553 未执行请求的的命令,名称不正确。

Linux下VsFTP配置全方案

Linux下VsFTP配置全方案 纲要: 一,VsFTPd的简述 二,企业Linux下vsFTPD方案 三,VsFTPD相关配置文件详解 一,VsFTPd的简述: VSFTP(Very Secure FTP Daemon,非常安全的FTP服务器)。顾名思义,VSFTPD 设计的出发点就是安全性。同时随着版本的不断升级,VSFTPD在性能和稳定性上也取得了极大的进展。除了安全和性能方面很优秀的外,还有很好的易用性。Red Hat公司在自己的FTP服务器(https://www.doczj.com/doc/8c2080801.html,)上就使用了vsFTPd 二,企业Linux下vsFTPD实战方案 要求: 1. 用户:netseek_com;FTP:https://www.doczj.com/doc/8c2080801.html,(19 2.168.0.21,我已经配置好了相关的DNS) 2. 禁止匿名登陆,禁止用户离开用户目录 3. 命令通道端口使用5021,数据通道端口使用5020(你可以改成你想设置的端口如1021,1020) 4. 允许使用被动模式使用端口范围为10010~10020. 5. 用户带宽设置为200kps;用户空间大小限制为300M,允许宽限期限内有10MB 的缓冲 具体操作步骤如下: 为了更完全的描述安装全过程,我在我的另一台主机(netseek)上进行配置,在台机IP:192.168.0.20上绑定了192.168.0.21,也配置好了相关的DNS解析,在这里我就不多说了请参照”Linux全能web服务器架设”。 1.配置相关服务 启动服务: [root@netseek root]# #rpm –qa | grep vsftpd ;查看是否安装vsftpd服务 #/etc/init.d/vsftpd start ;启动服务 #chkconfig vsftpd on ;让系统服务随着系统启动而启动 配置相关文档: #vi /etc/vsftpd/vsftpd.conf 禁止匿名用户访问: anonymous_enable=YES,将YES改为NO 在文件末尾加如下的设置: # new added by netseek listen_port=5021 ;命令通道端口,默认为21 listen_data_port=5020 ;数据通道端口,默认为20 pasv_enable=YES ;允许被动模式 pasv_min_port=10000 ;被动模式使用端口范围 pasv_max_port=10010 local_max_rate=200000 ;用户宽带限制 chroot_local_user=YES ;禁用户离开主目录

Linux全攻略--FTP服务器配置与管理

Linux全攻略--FTP服务器配置与管理 版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。 FTP的全称是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.它工作在OS I模型的第七层,即是应用层,使用TCP传输而不是UDP.这样FTP客户端和服务器建立连接前就要经过一个"三次握手"的过程.FTP服务还有一个非常重要的特点是它可以独立于平台. LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterpri se Linux中默认安装的是vsftpd. 通常,访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件. vsftpd提供了3种ftp登录形式: (1)anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以a nonymous为用户名,以自己的电子邮件地址为密码进行登录.当匿名用户登录FTP服务器后,其登录目录为匿名FTP服务器的根目录/var/ftp.为了减轻FTP服务器的负载,一般情况下,应关闭匿名帐号的上传功能. (2)real(真实帐号) real也称为本地帐号,就是以真实的用户名和密码进行登录,但前提条件是用户在FTP服务器上拥有自己的帐号.用真实帐号登录后,其登录的目录为用户自己的目录,该目录在系统建立帐号时系统就自动创建. (3)guest(虚拟帐号) 如果用户在FTP服务器上拥有帐号,但此帐号只能用于文件传输服务,那么该帐号就是guest,guest是真实帐号的一种形式,它们的不同之处在于,geust登录FTP服务器后,不能访问除宿主目录以外的内容. 下面就对其详细介绍. 一.安装与启动vsftpd 先使用命令查看是否安装. 可看到安装了版本为2.0.1.如果没有安装可在桌面上选择"应用程序"/"系统设置"添加/删除应用程序"命令.来安装FTP软件包. 安装和配置好vsftpd软件包后,需要启动FTP服务器才能使用.启动方法有以下两种: 1.使用图形化方式启动,选择"应用程序"/系统设置/服务器设置/服务.可看到vsftpd,打上勾,开始启动. 2.在终端窗口用命令进行启动.

Linux搭建FTP服务器(虚拟用户配置文件)

Linux搭建FTP服务器(虚拟用户配置文件) 先行关闭防火墙,或者打开端口 1、建立虚拟用户口令库文件 口令库文件中奇数行设置用户名,偶数行设置口令 # vi /etc/vsftpd/logins.tx t zhangwenbo -用户名 123 --密码 test --用户名 123 --密码 ftp 123 2、生成vsftpd的认证文件 # db_load -T -t hash -f logins.txt /etc/vsftpd/vsftpd_login.db 注:如果没有db_load命令,请安装db4*相关rpm包。 # chmod 600 /etc/vsftpd/vsftpd_login.db --设置认证文件只对用户可读可写 3、建立虚拟用户所需的PAM配置文件 # vi /etc/pam.d/vsftpd 添加一下内容 auth required /lib(32位的)/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib(32位的)/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 注意:以上2行中最后的2个文件名vsftpd_login和第2个步骤中的数据库名字必须一致! 4、建立虚拟用户所要访问的目录并设置相应权限 # mkdir /var/ftp/pub/FTP--创建FTP工作目录 # useradd -d /var/ftp/pub/FTP -s /sbin/nolog virtual (用户名) --用于映射到本地的用户 # chown virtual:virtual/var/ftp/pub/FTP --FTP文件夹所属virtual用户 # chmod 700 /var/ftp/pub/FTP --权限可读可写 5、设置vi /etc/vsftpd/vsftpd.conf 配置文件 首先关闭匿名用户anonymous_enable=YE改为NO 或者在前边加#,在末尾添加:

linux下FTP服务器安装配置(VSftp)

环境: RedHat AS4 说明: 如果不做说明,一般安装命令均使用ROOT权限,用 # 表示 特别说明:无 以下文章介绍Liunx 环境下vsftpd的三种实现方法 一、前言 Vsftp(Very Secure FTP)是一种在Unix/Linux中非常安全且快速稳定的 FTP服务器,目前已经被许多大型站点所采用 Vsftpd的实现有三种方式 1、匿名用户形式:在默认安装的情况下,系统只提供匿名用户访问 2、本地用户形式:以/etc/passwd中的用户名为认证方式 3、虚拟用户形式:支持将用户名和口令保存在数据库文件或数据库服 务器中。相对于FTP的本地用户形式来说,虚拟用户只是FTP服务器 的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增 强系统本身的安全性。相对于匿名用户而言,虚拟用户需要用户名和密 码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。 对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对 下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说, 虚拟用户是一种极好的解决方案。

默认情况下vsftp上传之后文件的权限是600,目录权限是700 想要修改上传之后文件的权限,有两种情况 如果使用vsftp的是本地用户 则要修改配置文件中的 local_umask的值 如果使用vsftp的是虚拟用户 则要修改配置文件中的 anon_umask的值 二、vsftp配置大全-三种方式的实现 1、匿名用户形式: 任务实现匿名用户上传,下载,删除,重命名,新建目录,删除目录,重命名目录; 第一步:在/var/ftp/下,新建一个目录share; chmod –R 777 /var/ftp/share/ chown –R nobody:nobody /var/ftp/share/ 第二步:更改/etc/vsftpd/vsftpd.conf anonymous_enable=YES local_enable=YES

linux中ftp服务器搭建步骤详解

linux中ftp服务器搭建步骤详解 ftp匿名用户登录目录是/var/ftp ftp实名用户登录目录为它的宿主目录 实验1 [root@localhost ~]#system-config-packages (进入系统程序安装界面)勾选“ftp server”,进行安装。 [root@localhost ~]#service vsftpd start 启动 匿名用户登录ftp 结论:登录成功!! 实名用户登录ftp cd /etc 下载passwd 结论不安全 解决方案: [root@localhost ~]# vi /etc/vsftpd/vsftpd.conf chroot_local_user=YES (加入这行) [root@localhost ~]# service vsftpd restart ----------------------------------------------------------------------------------

试验2 只允许匿名登录,不允许实名 [root@localhost ~]#vi /etc/vsftpd/vsftpd.conf anonymous_enable=YES (修改) local_enable=NO (修改) [root@localhost ~]# service vsftpd restart ----------------------------------------------------------------------------------- 试验3 不允许匿名用户登录 [root@localhost ~]#vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES [root@localhost ~]# service vsftpd restart ----------------------------------------------------------------------------------- 试验4 访问限制 A 黑名单1 [root@localhost ~]# vi /etc/vsftpd.ftpusers 添加a 用户,则a用户无法访问此FTP [root@localhost ~]# service vsftpd restart B 黑名单2 1000个用户,999个不能访问,只有一个可以访问怎么办? [root@localhost ~]# vi /etc/vsftpd/vsftpd.conf userlist_enable=YES userlist_deny=NO userlist_file=/etc/https://www.doczj.com/doc/8c2080801.html,er_list [root@localhost ~]# vi /etc/https://www.doczj.com/doc/8c2080801.html,er_list (文件中用户能访问,其他用户不可访问(包括ftp匿名用户))将允许的用户名添加上 [root@localhost ~]# service vsftpd restart ------------------------------------------------------------------------------------ 试验5 限制客户数 [root@localhost ~]# vi /etc/vsftpd/vsftpd.conf max_clients=2 0为不限制 [root@localhost ~]# service vsftpd restart ------------------------------------------------------------------------------------- 试验6 速率限制----ftp网站收费如何解决

LINUX下配置FTP服务器实例详解

摘要:本文通过在red hat 9.0中配置匿名用户和虚拟用户访问的ftp服务器,向读者详尽地诠释了linux下ftp服务器配置的全部流程以及配置过程中要注意的一些问题。 关键词:匿名用户虚拟用户权限 vsftpd pam认证 1 概述 linux下可用的ftp服务器软件比较多,vsftpd安全易用,很多著名的站点都在使用vsftpd作为其ftp服务器。本文以vsftpd为例,对基于linux的ftp服务器配置问题进行研究。 2 安装vsftpd服务组件 vsftpd所需组件包括:vsftpd*、pam*、db4*、db4-utils,可以使用rpm命令查看:【root @dns root】#rpm-qa | grep vsftpd vsftpd-1.1.3-8 【root @dns root】#rpm-qa | grep pam pam-0.75-48 pam_krb5-1.60-1 pam-smb-1.1.6-7 pam-devel-0.75-48 【root @dns root】#rpm-qa | grep db4 db4-4.0.14-20 db4-utils-4.0.14-20 db4-java-4.0.14-20 db4-devel-4.0.14-20 【root @dns root】# 以上便是配置ftp服务器所需所有组件,若发现个别没有装,则要在光盘中查找到装好。 3 创建并设置ftp站点的主目录 我们的vsftpd组件安装好后,系统自动会生成一个目录,/var/ftp/pub,这个是linux 系统中ftp站点的默认主目录,这里我们不用这个目录,我们自己为匿名用户和虚拟用户分别创建两个主目录如下: 【root @dns root】# mkdir /var/ftp/share 【root @dns root】#mkdir /var/ftp/soft 其中share作为匿名用户的主目录,只能读不能写,此处该目录文件夹我们为其设置权限为755,而soft目录作为虚拟用户访问的主目录,读写删除权限都要,我们为其设置权限777如下: 【root @dns root】#chmod 755 /var/ftp/share 【root @dns root】#chmod 777 /var/ftp/soft 4 创建虚拟用户 虚拟用户只能访问为其提供的ftp服务,不能像本地用户那样登录系统而访问系统的其他资源,因此我们一般架设ftp时都会使用虚拟用户而不是本地用户来访问服务器以确保整个服务器系统的安全。 4.1 建立虚拟用户数据库 使用vi命令建立一个文本文件vusers.txt,使用编辑命令编辑本文件,输入内容如下:【root @dns root】#vi /etc/vsftpd/vusers.txt mark 123

linux下配置FTP服务器步骤

linux下配置FTP服务器步骤 来源:作者:发布时间:2007-08-07 ?(阅读次数:108)? 查看更多关于:配置linux FTP服务器的文章 前言: 在众多的网络应用中,FTP(File Transfer porotocol)有着非常重要的地位。在Internet中一个十分重要的资源就是软件资源。而各种各样的软件资源大多数都是放在FTP服务器中的。可以说,FTP与WEB 服务几乎占据了整个Internet应用的80%以上。 FTP服务可以根据服务对象的不同分为两类:一类是系统FTP服务器,它只允许系统上的合法用户使用;另一类是匿名FTP服务器,Anonymous FTP Server,它使用任何人都可以登录到FTP服务器上去获取文件。 一、选择和安装FTP服务器软件 如果你在安装LINUX系统的时候,在选择启动进程的时候选择了“ftpd”这一项的话,安装完LINUX 系统后,它已经将一个默认的FTP服务器安装到系统中去了。我们已经可以利用它来实现系统FTP服务器的功能了。我们只需在此基础上根据我们的需要进行一些个性化设定就可以了。 在绝大多数的LINUX发行版本中都选用的是WashingtonUniversity FTP,它是一个着名的FTP服务器软件,一般简称为wu-ftp。它功能强大,能够很好地运行于众多的UNIX操作系统,例如:IBM AIX、FreeBSD、HP-UX、NeXTstep、Dynix、SunOS、Solaris等。所以Internet上的FTP服务器,一大半以上采用了它。wu-ftp拥有许多强大的功能,很适于吞吐量较大的FTP服务器的管理要求: bitsCN全力打造网管学习平台 1)可以在用户下载文件的同时对文件做自动的压缩或解压缩操作; 2)可以对不同网络上的机器做不同的存取限制; 3)可以记录文件上载和下载时间; 4)可以显示传输时的相关信息,方便用户及时了解目前的传输动态; 5)可以设置最大连接数,提高了效率,有效地控制了负载。 二、wu-ftp的组成 安装了wu-ftp后,你将在/bin目录下看到以下五个可执行文件: ftpd FTP服务器程序 ftpshut 用于关闭FTP服务器程序 ftpcount 显示目前在线人数 ftpwho 查看目前FTP服务器的连接情况 ckconfig 检查FTP服务器的设置是否正确 除了这些可执行文件以外,它还在/etc和/var目录下生成了七个配置文件:

linux ftp服务器的配置及各种知识点,本人亲自总结

ftp服务器的安装与配置 一。项目概要: 校园网提供了比较多的网络应用服务,如:办公系统,教学资源系统,教学管理系统,越来越多的老师和同学开始使用校园网提供的服务,他们希望校园网提供一些常用软件的下载服务,同时教师们也希望把一些教学资料放到服务器上,以便教师间交流,学生在课后能下载学习。 随着学习精品课程建设工作的推进,不少教师建设了课程网站,把教学资料放到网站上。还有一些教师建设了个人网站,以展示自己的科研成果。为了让这些网站真正发挥作用,需要提供一个统一的平台用于放置这些网站,供学生访问。 ========================================================= 二。ftp协议 文件传输协议(File Transfer Protocol)定义了一个在远程计算机系统和本地计算机系统之间传输文件的标准。ftp运行在OSI参考模型的应用层,利用传输控制协议TCP在不同的主机之间提供可靠的数据传输。 FTP服务是internet最早应用于主机之间进行数据传输的基本服务之一。它的特点:(1)ftp协议简化了文件传输的复杂性,弄够独立于平台,不受计算机和操作系统类型的限制。无论是PC、服务器,还是Windows、linux、unix操作系统,都可以作为ftp客户端和服务器。 (2)ftp实现了可靠的数据传输。ftp是运行在TCP上的,这就保证了数据传输的正确性,并在发生错误的情况下修正。 (3)支持端点续传功能,极大方便用户并减少CPU和网络开销。 FTP有两种常用的操作: 从ftp服务器上复制文件到本地计算机,成为“下载(download)”,若将文件从本机复制到服务器上,称为“上传(upload)” ========================================================= 三。FTP的传输模式 有两种: (1)主动模式(PORT模式)。主动模式的ftp客户端发送PORT命令到ftp服务器。 (2)被动模式(PASV模式)。 主动模式:ftp客户端随机开启一个大于1024的端口N向ftp服务器的TCP 21端口发起连接,通过这个通道发送PORT命令,port命令包含了客户端用于接受数据的端口N+1.在传输数据时,服务器通过TCP 20端口连接至客户端的N+1端口发送数据。在此模式下,数据传输通道是由服务器主动建立起来的。 被动模式:在建立控制通道的时候,ftp客户端随机开启一个大于1024的端口N向ftp 服务器的TCP 21端口放弃连接,但建立连接后发送的是PASV命令。ftp服务器收到PASV 命令后,随机打开一个高端端口(端口号大于1024)并通过port命令通知客户端在在这个端口上有传送数据的请求。客户端连接ftp服务器此端口,然后ftp服务器通过这个端口进行数据传送。 ========================================================= 四。FTP的用户 根据ftp服务器服务的对象不同,可以将ftp服务的使用者分为3类: 本地用户,虚拟用户和个人用户。 如果用户拥有提供ftp服务的服务器上的本地账号,则为本地用户。 本地用户可以通过自己的账号和口令登陆服务器。当授权访问的本地用户登陆系统后,其登

在Linux建立FTP服务器

在Linux建立FTP服务器方法步骤 实现了Apache多用户的虚拟主机配置,那么一般这些用户都会选择用ftp上传的方式来管理自己的web内容,这就需要我们再为他们开设FTP服务。 Ubuntu自带的FTP服务器是vsftpd。 1、安装vsftpd Ubuntu安装软件倒不是件困难的事,输入: sudo apt-get install vsftpd 假如没换源可能会提示您使用光盘,放进去再按回车就行了。 我用CN99的源,速度是300K每秒,够快吧. 安装了之后会在/home/下建立一个ftp目录。这时候您能够试着访问下ftp://IP地址。应该能够看到一个空白内容的ftp空间。 默认配置下匿名用户能够下载,但不能写入或是上传 2、配置 vsftpd.conf文档 现在我们要让匿名用户无法访问,并且得输入linux上的用户密码后才能访问到他们自己目录里的内容。 首先找到配置vsftpd的文档,位置在/etc/vsftpd.conf 修改之前最好先备份下这个文档: sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.old 然后能够改变了: #不让匿名用户使用 #anonymous_enable=YES #本地用户可用 local_enable=YES #可用写操作 write_enable=YES #无需显示某目录下文档信息 #dirmessage_enable=YES #加点banner提示 ftpd_banner=Hello~~ #FTP服务器最大承载用户 max_clients=100 #限制每个IP的进程 max_per_ip=5 #最大传输速率(b/s) local_max_rate=256000 #隐藏帐号 hide_ids=YES 好了,重启下ftp 服务器看看效果

详细版Linux下ftp安装及使用.docx.docx

1、查询是否安装vsftpd: rpm -qa |grep vsftpd 或者查询当前ftp进程:ps -ef|grep vsftpd 已安装显示 未安装显示 2、下载vsftpd地址: https://www.doczj.com/doc/8c2080801.html,/linux/rpm2html/search.php?query=vsftpd 选择版本后使用wget下载 3、安装vsftpd服务器: rpm -ivh vsftpd-*.rpm 4、测试是否安装成功 [root@379318 ~]# ftp localhost Trying ::1... ftp: connect to address ::1Connection refused

Trying 127.0.0.1... ftp: connect: Connection refused ftp> bye [root@379318 ~]# 匿名访问 5、vsftpd服务器的启动、停止、重启、状态 service vsftpd start service vsftpd stop service vsftpd restart service vsftpd status 6、vsftpd的三个主配置文件 /etc/vsftpd/vsftpd.conf //服务器的主配置文件 /etc/vsftpd/ftpusers //此文件内的用户都不能访问vsftpd服务器 /etc/vsftpd/user_list //可能会被拒绝访问服务喊叫或允许访问

7、查看vsftpd.conf的配置参数:vim /etc/vsftpd/vsftpd.conf anonymous_enable=YES //启用匿名用户登录(建议设置为NO) local_enable=YES //允许本地用户访问vsftpd服务器 write_enable=YES //允许上传 download_enable=YES //允许下载 anon_upload_enable=YES //允许匿名用户上传 anon_mkdir_write_enable=YES //允许匿名用户创建目录和上传 anon_other_write_enable=NO //不允许匿名用户删除和改名 local_max_rate=20000 //本地用户的最大传输速率,单位是字节/秒 anon_max_rate=5000 //匿名用户的最大传输速率,单位是字节/秒 local_umask=022 //去掉写的权限 file_open_mode=0666 //上传文件的权限 xferlog_enable=YES //维护日志文件,详细记录上传和下载操作 xferlog_std_format=YES //传输日志文件将以标准的xferlog格式书写,日志文件默认为/var/ log/xferlog hide_ids=YES //隐藏文件夹和目录属主 port_enable=YES //允许使用主动传输模式 pasv_min_port=(1024

linux 中搭建FTP服务器

RHEL5中配置vsftpd搭建FTP服务器 RPM安装包名:vsftpd-2.0.5-10.el5.i386.rpm (第二张光盘) 下载地址:https://www.doczj.com/doc/8c2080801.html, 源代码最新版本:vsftpd-2.0.5.tar.gz #rpm –ivh vsftpd-2.0.5-10.el5.i386.rpm 安装rpm程序包 #service vsftpd start =/etc/init.d/vsftpd start 启动vsftpd服务 #service vsftpd stop =/etc/init.d/vsftpd stop 停止vsftpd服务 #service vsftpd restart =/etc/init.d/vsftpd restart 重启vsftpd服务#service vsftpd status =/etc/init.d/vsftpd status 检查vsftpd服务状态# ntsysv 或 #chkconfig –level 35 vsftpd on 更改服务自动加载

vsftpd的主配置文件/etc/vsftpd/vsftpd.conf说明(修改前先备份): # Example config file /etc/vsftpd/vsftpd.conf # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see vsftpd.conf.5 for all compiled in defaults. # READ THIS: This example file is NOT an exhaustive list of vsftpd options. # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's # capabilities. # Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=YES (是否允许匿名登录FTP服务器,默认设置为YES允许,即用户可使用用户名ftp或anonymous进行ftp登录,口令为用户的E-mail地址。如不允许匿名访问去掉前面#并设置为NO) # Uncomment this to allow local users to log in. local_enable=YES (是否允许本地用户(即linux系统中的用户帐号)登录FTP服务器,默认设置为YES允许,本地用户登录后会进入用户主目录,而匿名用户登录后进入匿名用户的下载目录/var/ftp/pub;若只允许匿名用户访问,前面加上#,可阻止本地用户访问FTP服务器。) # Uncomment this to enable any form of FTP write command. write_enable=YES (是否允许本地用户对FTP服务器文件具有写权限,默认设置为YES 允许) # Default umask for local users is 077. You may wish to change this to 022, # if your users expect that (022 is used by most other ftpd's) #local_umask=022 (或其它值,设置本地用户的文件掩码为缺省022,也可根据个人喜好将其设置为其他值,默认值为077) # Uncomment this to allow the anonymous FTP user to upload files. This only # has an effect if the above global write enable is activated. Also, you will # obviously need to create a directory writable by the FTP user. #anon_upload_enable=YES (是否允许匿名用户上传文件,须将write_enable=YES,默认设置为YES允许) # Uncomment this if you want the anonymous FTP user to be able to create # new directories. #anon_mkdir_write_enable=YES (是否允许匿名用户创建新文件夹,默认设置为YES允许)# Activate directory messages - messages given to remote users when they # go into a certain directory.

Linux下搭建Ftp服务器

概述 使用文件传输协议(FTP)来通过网络在计算机之间传输文件是很普遍的一种方法。几乎在所有的平台上面都有FTP 的客户端和服务端的软件,因此用FTP来传送文件也是很方便的一个方法。 有很多配置FTP服务器的不同方法。其中一种是把FTP配置成只对系统中的用户开放的私有服务器,这也是FTP的默认配置。一个私有的FTP服务器只运行系统中的用户访问,而且可以对用户进行访问控制,这样可以给予或拒绝特定用户的访问权限。 另一种是把FTP服务器配置成匿名服务器。匿名FTP服务器允许任何人(不管有没有帐号)访问服务器并传输文件。因为可能存在潜在的安全问题,必须小心配置使得只允许访问系统中特定的目录。在这一节里,我们把FTP配置成“chrooted”的方式,这种配置运行用户访问,例如:Web站点的目录,但是不允许他们访问更高一层的目录。 注意事项 下面所有的命令都是Unix兼容的命令。 源路径都为“/var/tmp”(当然在实际情况中也可以用其它路径)。 安装在RedHat Linux 6.1下测试通过。 要用“root”用户进行安装。 wu-ftp的版本号是2.6.0。 编译和安装 把软件包(tar.gz)解压缩: [root@deep]# cp wu-ftpd-version.tar.gz /var/tmp [root@deep]# cd /var/tmp [root@deep]# tar xzpf wu-ftpd-version.tar.gz 编译和优化 转到wu-ftpd的新目录下,运行下面的命令: 编辑“ftpcount.c”文件(vi +241 src/ftpcount.c),改变下面这一行:

linux课程设计-Linux下FTP服务器的搭建

河南中医学院 《Linux操作系统》课程设计报告 题目:Linux下FTP服务器的搭建 所在院系:信息技术学院 专业年级: 完成学生: 指导教师:赵 完成日期: 2016年 06 月 24 日

目录 目录 (2) 1. 课程设计题目概述 (3) 2. 研究内容与目的 (4) 3. 研究方法 (5) 4. 课题实现 (6) 5. 课题研究结论 (12) 6. 总结 (13)

1. 课程设计题目概述 INTERNET上最早使用的协议之一。尽管World Wide Web(WWW)已经替代了FTP的大多 机可以给服务器发出命令来下载文件,上传文件,创建或改变服务器上的目录。原来的FTP 学。主要使用它进行"上载"。即向服务器传输文件。由于FTP协议的传输速度比较快,我们在制作诸如"软件下载"这类网站时喜欢用FTP来实现,同时我们这种服务面向大众,不需要身份认证,即"匿名FTP服务器"。Linux是一个强大的操作系统,以Linux环境搭建的各种服务器一直受到广大用户的好评,安全和快捷的优点使其优于其他的操作系统,这就需要我们在Linux下搭建一个FTP服务器。 本课题介绍Linux下搭建FTP服务器的具体步骤流程,研究liunx下ftp服务器的性能,功能需求,并进行最后的测试实现,演示文件的上传,下载。 2. 研究内容与目的 Linux下搭建ftp服务用vsftpd(very secure ftp daemon),因为ftp协议是采用明码传输的,没有安全性可言,vsftpd是一个提供较安全的ftp服务软件,测试Centos 7.ftp 的使用过程中,必须首先登陆,在远程主机上获得相应的权限以后,才可以上传和下载文件。就是说,想要在哪一台计算机传送文件,就必须具有哪一台计算机的适当权限。换句话说,除非有用户ID和口令,否则无法传送文件。这种情况违背了Internet的开放性,Internet 上的ftp不止千万,不可能要求每个用户在每一台主机上都拥有账号,因此就衍生出了匿名ftp. ftp有两种使用模式:主动和被动。主动模式要求客户端和服务器端同时打开并且监听一个端口建立链接。在这种情况下,客户端由于安装了防火墙会产生一些问题。所以,创立了被动模式,被动模式只要求服务器端产生了一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。 Vsftpd也有很多优点: (1)是一个安全,稳定,高速的FTP服务器。 (2)可以设定多个基于IP的虚拟FTP服务器。

Linux下FTP服务器的安装和配置(详细)

Linux下FTP服务器的安装和配置 在Internet上FTP(File Transfer Protocol,文件传输协议)扮演着十分重要的角色。我们可以通过FTP与远程机器传输交换文件数据,下载或上传最新的软件。基本的FTP服务器根据服务的对象可以分为两种,一种是Unix(当然也包括Linux)系统基本的FTP服务器,使用者是服务器上合法的用户;而另一种是匿名FTP服务器(Anonmous FTP Service),任何人只要使用anonmous 或ftp帐号并提供电子邮件地址作为口令就可以使用FTP服务。 对于系统中合法的用户,其登录目录为他们的home目录;如果是匿名用户登录的话,登录后会到/home/ftp这个目录中,该除非我们在该目录中存放下载文件,否则匿名FTP使用者将不能做任何事情。在本章,我们将详细地介绍FTP 服务器的安装、配置以及服务器的维护。 安装FTP服务器 在Linux的发行套件中都有FTP服务器的软件包wu-ftpd(Washington University FTP server),这是目前最流行的一种免费FTP服务器软件,目前绝大多数的FTP站点都是由wu-ftpd来架设的,而wu-ftp如此流行的原因是因为它强大的功能,例如: ·可控制不同网域的机器对 FTP服务器的存取权限和访问时段。 ·使用者在下载文件时,可自动对文件进行压缩或解压缩工作。 ·可以记录文件上传或下载的过程。 ·可以限制最高访问人数,以维持系统的最佳运行效率。 ·可显示相关的信息,以便用户了解当前的接收状态。 ·可暂时关闭FTP服务器,以便系统维护。 在安装系统时如果选择了wu-ftpd软件包,就会自动安装。但如果我们想要使用最新的FTP软件包的话,可以到全世界各大FTP站点下载。目前最新的版本是wu-ftpd-2.5.0,得到了wu-ftpd-2.5.0.tar.gz后,请按照我们下面的步骤进行安装。 1.将wu-ftpd- 2.5.0.tar.gz复制到临时目录中并解压缩: # tar zxvf wu-ftpd-2.5.0.tar.gz

在Linux中配置FTP服务器

上海建桥学院 本科实验报告 课程名称:服务器配置实践 学号: 1520959 姓名:欧超 专业:数字媒体技术 班级:2 指导老师:李雄 信息技术学院 2017年9月1日

学号- 1520959姓名-欧超 任务5 在Linux中配置FTP服务器 一、要求 1.掌握FTP服务器在Linux中的配置 2.了解VSFTPD服务器配置的步骤 二、目的 搭建与配置VSFTPD服务器,实现在Linux操作系统下配置和管理VSFTPD服务器。 三、内容 按照教材或查询相关内容,了解Linux下的FTP服务器基本概念,理解如何对VSFTPD 服务器进行配置。通过对vsftpd.conf进行配置,实现FTP服务器在Internet建立,并用 传输一个文件来证明FTP服务器能够工作。 四、步骤,提交方式 1)检查服器所处的网络环境,并配置或记录IP地址172.16.54.132 (dns:202.96.209.5 gateway:172.16.54.1 mask:255.255.255.0 ) 2)检查VSFTPD服务器有没有安装,如果已经安装,做以下步骤。 3)准备一个IP地址172.16.54.32,创建一个FTP服务器根目录C:/ouchao,检查端口 21和20是否被占用。 4)打开vsftpd.conf,创建FTP站点(功能包括:FTP的IP,FTP的端口,配置数据端口, 配置下载,配置超时选项,匿名登录,不设密码,匿名根目录[学号],显示登录信息[学 号,姓名等等]),用截图和说明。 5)重启VSFTPD。 6)用浏览器或FTP客户端软件测试网站,证明FTP服务器创建是否成功。 7)采用字体:宋体,字体大小:10.5,行距:1.0,打印提交。 (截图和说明)

Linux配置FTP服务器

Linux 架设FTP 服务器 实例 FTP 服务器是学院校园网重要功能之一,学院准备搭建FTP服务器,对于所有的学生均以真实账号登录,允许下载相关信息及学习资料,禁止上传,但操作目录只限于/students 下。所有老师也以真实账号登录服务器。操作目录也只限于/teachers下,允许老师可以上传,下载文件、创建目录以及删除文件等操作。 三、实训过程 为了实现真实账号登录FTP服务器,首先要禁止匿名用户登录。其次,使用chroot功能将所有学号如20080901,20080902……等账号锁定在/students目录下。将所有教或号如:20001,2002……锁定在/teachers目录下。如果需要删除文件的还需要注意本地权限,PS:该题的难点在于要求不同的用户登录不同的文件夹 2.实训步骤 1)在根目录(/)下分别创建两个目录students和teachers。 ●输入命令:mkdir /students :mkdir /teachers 2)建立学号和密码 ●输入命令:useradd stu1 :useradd stu2 :useradd stu3 ●密码命令:passwd stu1 :passwd stu2 :passwd stu3(密码自定义)

3)建立教工号账号和密码输入命令:useradd tea1 :useradd tea2 :useradd tea3 密码命令:passwd tea1 :passwd tea2 :passwd tea3

4)编辑vsftpd.conf文件,并作相应修改。 若想实现不同用户进入不同的目标文件夹,则只需添加以下一条语句 原理:说明用户的配置文件在“=”号后的文件夹内 输入命令:user_config_dir=/etc/vsftpd 5)在目标文件夹中建立本地用户文件, PS:每一个用户都要 输入命令:vi /etc/vsftpd/stu1 :vi /etc/vsftpd/stu2 :vi /etc/vsftpd/stu3 :vi /etc/vsftpd/tea1 :vi /etc/vsftpd/tea2 :vi /etc/vsftpd/tea3 将文件目标文件夹位置添加在文件中。 输入语句:local_root=/students PS:每一个用户都要

相关主题
文本预览
相关文档 最新文档