请教:登录ftp服务器无法以目录形式打开 ,“查看”菜单下面没有“在windows浏览器中打开FTP项,如何解决
修改注册表,开始----运行----输入regedit,打开注册表,一次展开HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InternetExplorer\MAIN\FeatureControl\FEATURE_INTERNET_SHELL_FOLDERS将 iexplorerexe 项的值由0改为1,然后重新开起IE再访问就可以了。这里需要注意的一点是,如果更改了注册表依然不能解决,可以查看一下IE工具中----internet选项----高级下“启用FTP文件夹视图”是否打钩,如果没有,把钩选上应该就可以解决了。
你可以重新安装一下IIS,不过在安装的时候要这样:打开那个“详细信息”什么的
然后你可以看到你将要安装的IIS中包含的选项,找到那个FTP,在它前面那个复选框中打上对号,就可以拉
最后你载安装就可以了啊
怎么装知道吧,是不是很麻烦啊,我是最讨厌装那个东西啊
好了,不多说了啊
拜拜了老兄
Liux系统下有好几款很不错的ftp服务,各有特点,适应于不同的应用场合。一般在各种Linux的发行版中,默认带有的ftp软件是vsftp,本文是针对CentOs7系统下搭建vsftpd服务为例。
1 首先确定系统中已经安装了vsftpd软件,查看命令:
rpm -q vsftpd
rpm -qa |grep vsftpd
2 安装vsftpd(以yum安装为例)
yum install -y vsftpd
3关闭selinux和iptables(也可配置防火墙相关访问策略,反之系统阻断),设置vsftpd开机自启
永久关闭selinux
vi /etc/sysconfig/selinux
将配置SELinux=enforcing改为SELinux=disabled
保存退出并重启服务器
验证是否关闭命令:getenforce
关闭防火墙
centos 7 操作命令:systemctl stop firewalldservice
centos 6 操作命令:service stop iptables
设置vsftpd开机自启
centos 7 操作命令:systemctl enable vsftpdservice
centos 6 操作命令:chkconfig vsftpd on
4vsftpd的配置
ftpusers 该文件用来指定哪些用户不能访问ftp服务器。
user_list 该文件用来指定的默认账户在默认情况下也不能访问ftp服务器。
vsftpdconf vsftpd的主要配置文件,路径:
/etc/vsftpd/vsftpdconf
# vsftpdconf的配置
# 是否允许匿名登录
anonymous_enable=NO
# 是否允许本地用户登录
local_enable=YES
# 是否允许本地用户对FTP服务器文件具有写权限
write_enable=YES
# 本地用户主目录
local_root=/var/ftp
# 匿名用户主目录
anon_root=/var/ftp/pub
# 是否允许匿名用户上传文件,如允许,须将全局的
write_enable=YES
anon_upload_enable=YES
# 是否允许匿名用户创建新文件夹
anon_mkdir_write_enable=YES
# 容许匿名用户除了新建和上传外的其他权限
anon_other_write_enable=YES
# 本地用户掩码
local_umask=022
# 设置匿名登入者新增或上传档案时的umask值
anon_umask=022
# 是否激活目录欢迎信息功能
dirmessage_enable=YES
xferlog_enable=YES
# 主动模式数据传输20端口
connect_from_port_20=NO
xferlog_std_format=YES
# 是否监听ipv4
listen=YES
# listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
# 是否设置被动模式
pasv_enable=YES
# 被动模式传输使用端口
pasv_min_port=20020
pasv_max_port=20020
# 被动模式返回给客户端的ip地址(服务器内网穿透时使用)
pasv_address=0000( 服务器外网ip )
# 设置用户访问目录,默认只允许用户自己的ftp目录
# 需要同时设置allow_writeable_chroot,允许受限用户的写权限,不然会报错
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
5创建例外用户文件
#哪怕没有例外用户也必须创建
vim /etc/vsftpd/chroot_list
只想让指定账户不限制在其主目录,其它账户都限制在主目录。
对于chroot_local_user与chroot_list_enable的组合效果,可以参考下表:
6 创建ftp新用户
#新增一个test(用户名),并指定上传目录在/home/ftp/test下
useradd -g root -d /home/ftp/test -s /sbin/nologin test
# 如果后期想变更此用户的上传到(/XXX/ftp/test),请使用下面的命令:
usermod -d /XXX/ftp/test test
# 设置用户密码
passwd test
因为安全问题,vaftpd不允许匿名用户在ftp主目录上传,可以新建一个子目录,设置权限为777
7 关于local_umask和anon_umask掩码
掩码决定了上传文件的权限,掩码为022代表上传后的文件权限为
666-022=644 -> rw-r--r--
掩码即为要去除的权限为,默认设为033即可。
8 启动vsftp服务
#centos7 操作命令
启动: systemctl start vsftpdservice
停止: systemctl stop vsftpdservice
重启: systemctl restart vsftpdservice
查看状态: systemctl status vsftpdservice
#centos6 操作命令
启动: service vsftpd start
停止: service vsftpd stop
重启: service vsftpd restart
查看状态: service vsftpd status
先说关键的部分,你在内网的机子上先架设一个FTP服务器,再在这个机子上运行花生壳,最后在你的宽带路由器或者网关服务器上做端口映射,如果是宽带路由器的话,做一个转发就可以了。把21端口转发到你的FTP的IP的21端口。
现在就可以外网访问了。
Serv-U 是目前众多的FTP 服务器软件之一。通过使用Serv-U,用户能够将任何一台PC 设置成一个FTP 服务器,这样,用户或其他使用者就能够使用FTP 协议,通过在同一网络上的任何一台PC与FTP 服务器连接,进行文件或目录的复制,移动,创建,和删除等。这里提到的FTP 协议是专门被用来规定计算机之间进行文件传输的标准和规则,正是因为有了象FTP 这样的专门协议,才使得人们能够通过不同类型的计算机,使用不同类型的操作系统,对不同类型的文件进行相互传递。
虽然目前FTP 服务器端的软件种类繁多,相互之间各有优势,但是Serv-U 凭借其独特的功能得以展露头脚。具体来说,Serv-U 能够提供以下功能:
符合windows 标准的用户界面友好亲切,易于掌握。
支持实时的多用户连接,支持匿名用户的访问;通过限制同一时间最大的用户访问人数确保PC 的正常运转。
安全性能出众。在目录和文件层次都可以设置安全防范措施。能够为不同用户提供不同设置,支持分组管理数量众多的用户。可以基于IP 对用户授予或拒绝访问权限。
支持文件上传和下载过程中的断点续传。
支持拥有多个IP 地址的多宿主站点。
能够设置上传和下载的比率,硬盘空间配额,网络使用带宽等,从而能够保证用户有限的资源不被大量的FTP 访问用户所消耗。
可作为系统服务后台运行。
可自用设置在用户登录或退出时的显示信息,支持具有UNIX 风格的外部链接。
上面列出的只是Serv-U 众多功能中的一部分,具体的使用将在下文中进行详细的介绍,这里要说明的 时,Serv-U 在保持功能全面,强大的基础上,提供的完全易于使用的操作界面,可以说一切尽在掌握。
使用说明
用户在使用Serv-U 的过程中可能会碰到的所有设置问题都可以通过Serv-U 窗口中的菜单选项实现。如果用户在安装Serv-U 之后,启动Serv-U 时,屏幕上没有显示出Serv-U 的控制窗口的话,可以用鼠标右键点击位于任务条系统托盘中的Serv-U 图标(一个大写的字母“U”),然后选择弹出菜单中的第一项“Show Window”,这样屏幕上就会显示出Serv-U 的控制窗口。
设置FTP服务器
位于Serv-U 控制窗口中的“SETUP”菜单中的第一项“FTP-SERVER”用来对FTP 服务器进行总体上的设置。在选择之后出现的窗口中的第一项“FTP PORT NUMBER”用来设置FTP服务器使用的端口号,FTP服务器将会通过该端口收听所有来访用户的信息。一般情况下,FTP 服务器的默认端口号为21,但是用户可以根据自己的情况自由的进行更改,只要能够保证所采用的端口号与其它网络应用不冲突即可。这里需要说明的一点是,使用用户自己选择的服务器端口可以起到很好的安全防范作用,这时,只有用户自己和其他知道该端口号的用户才能够成功的实现与服务器的连接。因此,建议用户在设置F TP 服务器的时候使用自己选定的端口,而不要只是简单的使用默认值。
随后用户需要设置服务器所能提供的最大速度。一般情况下,用户可以将这项空出,那么服务器将会利用所有可能的带宽为客户提供服务。能够为用户提供最大的访问速度当然很好,但是过多的F TP 用户可能会蚕食掉一切可能的带宽,从而使其它的网络应用几乎不可能实现。因此,合理的控制FTP 服务器所能够占用的最大带宽还是很重要的。
下一项是设置服务器允许的最大用户访问量。在此,用户可以限制同一时间内访问FTP 服务器的最大人数。如果把该项设为0,那么FTP 服务器将会拒绝任何用户访问要求;如果将该项空出,那么Serv-U 将不会对访问人数进行控制,直到耗尽所有的系统资源。如果用户希望自己的FTP 服务器能够保持正常运转的话,那么最好对来访的用户数量进行合理的限制。一般情况下,即使老式的486 机器,在使用Serv-U之后,也能够在同一时间内为20多名用户提供访问支持。
在此之后的一系列复选项中的第一项为“启动安全功能”。如果用户没有选择该项,那么任何人通过网络都可以直接进入FTP 服务器,对服务器中的任何文件进行随意地复制,改动,甚至删除。除了那些拥有小范围内的个人网络,不希望每次登录都重复输入用户名、密码等烦杂手续的人之外,用户一定要确保已经选中了该选项,即启动了服务器的安全防范功能。
下一项“ENCRYPT PASSWORDS”在默认情况下也被自动选中。这样,Serv-U 将会使用与UNIX 操作系统相同的加密机制加密并保存用户的密码。如果用户不选择对密码进行加密,那么所有用户输入的口令将会以明文的方式保存在位于S erv-U 安装目录下的Serv-Uini 文件中。
随后一项用来设定是否需要匿名访问用户输入密码。默认情况下,该项为空白,这样那些使用匿名帐号访问FTP 服务器的用户将不被要求输入口令。需要注意的是这里对匿名用户密码的检测非常简单,只要匿名用户输入符合邮件地址格式的任意字符串即可,S erv-U 不会进一步的判断用户输入的邮件地址是否真正存在。
下一项为预防反超时措施。如果用户选择了该选项,Serv-U 将会采用新的记时方式,那些希望通过定期向服务器发送命令来防止出现超时操作的用户将不再得逞。
随后的选项被用来设定是否删除没有完整上传的文件,如果用户不使用该删除功能,那么当有用户在向FTP 服务器上传文件的过程中出现错误而没有实现文件的完整上传时,Serv-U 将会在硬盘上保留已上传的内容,从而实现上传文件的断点续传。
下面我们要讨论的是跨FTP 攻击。通常状况下,当使用FTP 协议进行文件的传输时,客户端首先向FTP 服务器发出一个“PORT”命令,该命令中包含该用户的IP地址和将被用来进行数据传输的端口号。服务器在收到该命令后,利用命令所提供的用户地址信息建立与用户的连接。大多数情况下,上述过程不会出现任何问题,但是,当客户端是一名恶意用户时,可能会通过在P ORT 命令中加入特定的地址信息,使FTP 服务器与其它非客户端的机器建立连接。虽然这名恶意用户可能本身无权直接访问某一特定机器,但是如果FTP 服务器有权访问该机器的话,那么恶意用户通过FTP 服务器作为中介,仍然能够最终实现与目标服务器的连接。这就是我们所提到的跨服务器攻击。为了防止上述情况的发生,用户可以选择“防止跨F TP 服务器攻击”的选项,这样Serv-U在与任何来访用户建立连接之前,首先要核实该用户提供的地址信息是否为其真实地址。任何事情都是两方面的。我们已经知道通过使用S erv-U 可以防止发生跨FTP服务器的攻击,但是,同时我们也放弃了在FTP服务器和FTP 服务器之间实现数据传输的功能。这是因为Serv-U 只会与那些所提供的地址与地址提供者的实际地址相符的用户建立连接,用户将不能远程控制在两台不同的FTP 服务器之间进行文件传输。
最后的两个选项用来限制用户在FTP 服务器上的最大停留时间,以及规定服务器中文件和目录名的大小写。
该窗口中的其它相关选项我们将会在稍后进行详细介绍。
用户帐号管理
用户使用FTP 服务器的一个最基本的任务就是添加和管理用户信息。通过选择“SETUP”菜单中的“USERS”打开Serv-U 的用户管理窗口。该窗口可以分为左右两大部分。其中左边的窗口用来显示目前所有已经注册的FTP服务器的用户。任意选中其中一个用户,其详细的配置信息将会相应的显示在窗口的右边。如果是首次启动S erv-U,那么仅会显示一个名为“DEFAULT”的系统默认帐号。
下面详细介绍一下建立新用户帐号的全过程.
首先单击窗口最右边的“NEW”按钮,在随后的弹出窗口中输入需要建立的用户名。这时,输入的用户名就会出现在窗口右边的用户名一栏中。用户还可以在该栏中对所建立的帐号名称进行修改。
随后用户可以输入该帐号将要归属的用户组的组名或建立一个新的组。所谓组是人们为了便于管理数量庞大的用户群而推出的概念。我们可以把众多的单个用户划分到不同的组里进行统一的管理。因为属于同一个组的用户都具有一些共同的属性,例如用户密码,根目录等,所以用户只需要对个别具有特殊属性的帐号进行个别设置即可,这样就极大的简化了对用户帐号的管理和维护工作。需要注意的一点是,“A nonymous”这个特殊的用户帐号不属于任何一个用户组。
在随后的密码栏中需要输入帐号的口令,如果用户在服务器的设置中选择了加密密码的选项(见前文),那么所输入的密码将自动以加密方式储存。关于密码很重要的一点是只有输入的前8 位字符有效,希望能够引起广大Serv-U 使用者的注意。另外,如果用户在建立新的帐号时没有输入相应的密码,那么并不意味着该用户帐号没有密码,Serv-U 将会尝试着寻找是否该用户帐号属于某一个用户组并且该用户组具有统一的密码。如果Serv-U 没有找到相应的用户组密码的话,将会拒绝该用户帐号的访问。如果用户确实希望不规定某个帐号的密码,只要在相应帐号的密码一栏中输入“$ #@60;$#@60;None$#@62;$#@62;”即可。上述情况的一个例外是Anonymous 用户帐号,该帐号没有密码,Serv-U 只要求用户输入符合邮件地址格式的任意字符串即可。
在“HOME”一栏中,设置FTP 用户的根目录,即用户在成功登录之后所自动位于的起始目录。每一个用户帐号都要有自己的根目录,否则Serv-U 将拒绝该用户帐号的访问。当然,如果该帐号属于某个组,而该用户组已经设定了共同的根目录,那么用户就不必对该用户组内的每个帐号进行重复设置。用户在输入根目录的地址时应当注意必须使用完全路径,包括盘符。
在“NOTE”一栏中,用户可以选择输入一些对帐号起辅助说明的文字以备将来参考之用。
在用户窗口右边最大的一栏用来设定帐号的访问权限,从而决定用户可以访问哪些文件,并以何种方式访问这些。Serv-U 按照文件和目录两大类别对用户的访问权限进行了划分。具体来说包括:
对文件的访问权限:
READ:允许用户下载文件;
WRITE:允许用户上传文件,但无权对文件进行更改,删除,或重命名;
APPEND:允许用户对已有的文件进行附加,拥有APPEND权限的用户自动拥有WRITE
权限;
DELETE:允许用户对文件进行改动,重命名,或删除。拥有DELETE权限的用户自动拥
有WRITE 和APPEND 权限;
EXECUTE:允许用户通过FTP 运行可执行文件。例如,用户可以远程运行DOS或Windows
程序。
对目录的访问权限:
LIST:允许用户取得目录列表;
MAKE:允许用户在根目录下建立新的子目录;
REMOVE:允许用户删除根目录下的子目录。
INHERIT:选中该选项之后,对某一目录设置的访问权限将自动被该目录下的所有子目录
继承。
在完成上述所有设置之后,点击“STORE”按钮,新建立的用户帐号将被保存在FTP 服务器中。
该窗口中的其它选项将会在稍后进行详细的介绍。
实时监控
用户在完成FTP服务器的基本配置之后,就可以向外界提供FTP文件传输服务了。我想很多用户都希望在提供FTP 服务的过程中,能够实时地对访问自己服务器的用户进行监控,从而一方面既能够对整个服务过程做到心中有数,另一方面还可以在可能出现意外问题之前,采取及时的防范和补救措施。在这一方面,相信S erv-U 能够充分满足大家的需求。
首先,让我们看一下如何利用Serv-U 实现实时的用户监控。
选择“FILE”菜单中的“USER INFO”选项。在弹出窗口中的上半部分将会显示出所有当前正在与服务器连接的用户。用鼠标点击其中的任一用户将会在窗口的下半部分出现该用户的详细信息。
在窗口的右下方有一个“SPY ON USER”按钮,点击之后出现的窗口将会显示出特定用户向FTP服务器发出以及FTP 服务器响应的所有命令。该窗口将会跟踪所选用户的所有命令,对了解特定用户在访问FTP 服务器的过程中的所有行为提供了可的依据。
在该按钮下方还有一个名为“KILL USER”的按钮,如果用户发现某个来访用户的行为可疑,可能会对FTP 服务器的正常工作带来危害的话,可以通过使用该按钮立即中断与该用户的连接,将该用户踢出FTP 服务器。
需要注意的一点是,虽然Serv-U 能够提供实时的用户监控信息,但是需要耗用很大一部分的系统资源。如果用户发现系统性能出现明显下降的话,可以通过窗口右侧的“F REEZE LIST”按钮暂时冻结窗口信息的动态显示,从而释放出宝贵的系统资源。
设置服务器端日志记录
除了能够实时的进行监控之外,Serv-U还提供了强大的日志记录功能,从而方便用户记录和总结一段时期内Serv-U的运行情况。
选择“FILE”菜单下的“LOGGING”,弹出日志设置窗口,用户可以选择对哪些事件进行记录,以及将记录信息保存到何处。
在该窗口的右侧,用户可以选择对不同的事件进行记录,其中包括系统信息,安全信息等,同时用户还可以设置是将所记录 畔⑾允驹赟erv-U 的主窗口内,还是保存到某一指定文件内。出于耗用系统资源和备份信息的需要,建议用户把日志信息保存到指定的文件内。
需要说明的一点是Serv-U 的日志记录文件采用统一的格式,具体如下:
[n] DATE TIME - (xxxx) MESSAGE
最前面的数字“n”代表所记录信息的类别,分别为:
n=1:系统信息(错误信息等);
n=2:用户发出的FTP 命令;
n=3:文件下载;
n=4:文件上传;
n=5:安全信息(用户登录信息等)
n=6:服务器响应的FTP 命令;
n=7:WinSock使用记录;
n=8:DLL文件访问记录
另外,括号中的“XXXX”是Serv-U 赋予每一个来访用户的一个唯一的数字标识。
5.设置登录和退出信息
细心的用户可能会发现在登录或退出某个FTP站点时,经常会出现一个窗口,显示一些包括系统设置,欢迎访问等在内的信息。那么如何在S erv-U 下实现这一功能呢?
首先,用户需要把要显示给用户的信息保存在一个文本文件中,然后选择“SETUP”菜单中的“MESSAGES”,在弹出的窗口中进行设置。
在位于窗口最上方的下来框中,用户需要选择将要使用登录和退出信息的IP地址。因为Serv-U 支持一台机器拥有多个IP,所以用户需要选择相应的IP地址。在下面的两个选项中分别输入用户事先已经建立好的包含登录和退出信息的文本文件的地址。
使用外部连接
所谓外部连接是指那些显示在某一目录下指向位于该目录之外的某一文件或目录的连接。在用户端看来,外部连接所指向的文件或目录就位于当前目录之下,但实际上他们只是一些起连接作用的虚拟指针。使用外部连接的一个最大好处就是能够把来访用户可能需要的所有资源都集中到一个目录之中,这样用户就可以通过不同的外部连接访问实际上位于不同磁盘或不同目录的分散信息。
为了充分利用Serv-U 提供的外部连接功能,用户首先需要生成一个文本文件保存所有可能会用到的外部连接。文件的具体格式如下:
LINK NAME | SOURCENAME
其中的“LINK NAME”是显示在用户当前目录下的外部连接的名称,而“SOURCENAME”则是该外部连接实际指向的磁盘或目录。
例如我们在一个名为“LINKTXT”的文件中写入如下一条:
CD-ROM | F:\
这样在用户的当前目录中就会出现“CD-ROM”字样,点击之后,就可以直接访问FTP 服务器的光驱。
在配置好外部连接的文本文件之后,选择“FTLE”菜单中的“FTP SERVER”,在弹出的窗口中找到“PRIMARY FIEL CONTAINING LINK”,然后输入上述文本文件的完全路径。在“PRIMARY FIEL CONTAINING LINK”下方有一个“SECONDARY FILE CONTAINING LINK”,该项是用来设定起辅助作用的外部连接文件,可以参照上述方法生成。
设置上传和下载比例
如果用户希望自己FTP 站点的使用者不仅仅使用自己提供的资源,还能够上传一些有价值的东西供大家共享的话,可以通过使用Serv-U提供的“上传和下载比例”这一功能实现。
用户可以在“FILE”菜单中的“FTP-SERVER”,“USERS”和“GROUPS”的弹出窗口中找到名为“U/D RATIOS”的功能按钮,点击之后出现设置窗口。用户可以限制每个FTP 站点的使用者每上传一个文件后可以下载的文件数。例如,如果将某个用户的上传和下载比例设置为1/3,那么该用户每上传一个文件,就可以从F TP 站点下载3个文件。
Serv-U 支持在单个会话过程或全部会话过程的范围内,按照具体传输的文件数目或文件的大小,限制用户的上传和下载比例。
使用磁盘限额
随着用户数量的增加,一个非常实际的问题就是如何既能够确保每个用户都有足够的硬盘空间可用,同时又防止FTP 服务器吞食整个机器的硬盘资源。同样,在这个问题上Serv-U提供了有力的解决方案。
用户可以分别在“FILE”菜单中的“USERS”和“GROUPS”选项的弹出窗口中找到名为“QUATO”的功能按钮。点击之后出现设置窗口,用户可以首先检测某个用户帐号当前所使用的硬盘空间,然后根据具体的情况分别设置不同的用户帐号所能支配的最大硬盘空间,从而有效的解决硬盘空间不足的问题。
基于IP地址授予或拒绝访问权限
选择“FILE”菜单中的“IP ACCESS”选项,在弹出的窗口中进行设置。
用户可以在窗口的左边设置不同的访问规则,而当前所有的访问规则将会显示在右边的列表中。
Serv-U 提供了两种基本的访问规则,分别为“拒绝访问”规则和“允许访问”规则。在“拒绝访问”规则下,所有来自用户输入的IP地址的访问者都将被拒绝访问,而来自其它I P地址的用户都将被授予访问权限。同理,如果用户选择了“允许访问”规则,那么所有来自用户输入的IP地址的访问者都将被授予访问权限,而来自其它I P 地址的用户将无权访问FTP 服务器。
通过以上功能,用户可以针对不同的IP地址,设置不同的权限,从而有效的保障FTP 服务器免受非法访问者的侵害。
三.小节
Serv-U 是一款使用简单,功能强大,易学易用的FTP 服务器端软件。相信广大用户结合以上的介绍,再加上个人的实践,一定会在最短的时间内构建起自己的功能强大的FTP服务器。
如果您还有什么不明白的,可以咨询一下星硕互联,希望能对您有帮助、
1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。
2、在linux命令行下输入shell指令:ps -ef | grep ftp。
3、最后,按下回车键执行shell指令,此时会看到ftp进程被成功查询到,说明ftp功能是开启状态。
Linux中测试搭建 FTP 服务器,刚安装完 vsftpd 测试登录时就提示“-bash: ftp: command not found”,说明需要安装FTP客户端。安装此ftp-017-511el6x86_64rpm包即可访问。FTP客户端安装配置下载FTP-017-511el6x86_64rpm,
下载地址有:HTTP://rpmpbonenet/indexphp3/stat/4/idpl/15988817/dir/scientific_linux_6/com/ftp-017-511 el6x86_64rpmhtml;
上传ftp-017-511el6x86_64rpm文件到usr/local/src文件下,执行以下操作
[root@localhost src]# rpm -ivh ftp-017-511el6x86_64rpm
在此 linux下输入FTP就不会报错了。
1首先应开启linuxh环境下的FTP service,过程如下:
http://wwwwitechcomcn/news/Article_ShowaspArticleID=48
或者输入命令: /etc/rcd/initd/vsftpd start
/etc/rcd/initd/ vsftpd restart
若要关闭这个服务:/etc/rcd/initd/ vsftpd stop
2配置文件:
进入/etc配置vsftpdftpusers和vsftpduser_list,用vi打开他们,将这两个文件里的root给去掉,保存退出。
3此时可以打开flshFXP,快速连接,输入IP地址、用户名及密码就可以连接linux系统的FTP服务器了,及可进行windows与linux系统的文件传输
vsftpd的配置
在Red Hat Linux 90里的vsftpd共有3个配置文件,它们分别是:
vsftpdftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。
vsftpduser_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd conf配置文件里启用userlist_enable=NO选项时才允许访问。
vsftpdconf:位于/etc/vsftpd目录下。它是一个文本文件,我们可以用Kate、Vi等文本编辑工具对它进行修改,以此来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。
(1)用户登录控制
anonymous_enable=YES,允许匿名用户登录。
no_anon_password=YES,匿名用户登录时不需要输入密码。
local_enable=YES,允许本地用户登录。
deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。
banned_email_file=/etc/vsftpdbanned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpdbanned_emails)。
(2)用户权限控制
write_enable=YES,开启全局上传权限。
local_umask=022,本地用户的上传文件的umask设为022(系统默认是077,一般都可以改为022)。
anon_upload_enable=YES(这步的配置很重要不然会发现不能通过FTP软件向LINUX上传文件,能下载)允许匿名用户具有上传权限,很明显,必须启用write_enable=YES,才可以使用此项。同时我们还必须建立一个允许ftp用户可以读写的目录(前面说过,ftp是匿名用户的映射用户账号)。
anon_mkdir_write_enable=YES,允许匿名用户有创建目录的权利。
chown_uploads=YES,启用此项,匿名上传文件的属主用户将改为别的用户账户,注意,这里建议不要指定root账号为匿名上传文件的属主用户!
chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。
chroot_list_enable=YES,可以用一个列表限定哪些本地用户只能在自己目录下活动,如果chroot_local_user=YES,那么这个列表里指定的用户是不受限制的。
chroot_list_file=/etc/vsftpdchroot_list,如果chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpdchroot_list)。
nopriv_user=ftpsecure,指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的独立用户。这是vsftpd系统推荐选项。
async_abor_enable=YES,强烈建议不要启用该选项,否则将可能导致出错!
ascii_upload_enable=YES;ascii_download_enable=YES,默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的请求,启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。
注意:启用ascii_download_enable选项会让恶意远程用户们在ASCⅡ模式下用SIZE/big/file这样的指令大量消耗FTP服务器的I/O资源。
这些ASCⅡ模式的设置选项分成上传和下载两个,这样我们就可以允许ASCⅡ模式的上传(可以防止上传脚本等恶意文件而导致崩溃),而不会遭受拒绝服务攻击的危险。
(3)用户连接和超时选项
idle_session_timeout=600,可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。
data_connection_timeout=120,设定默认的数据连接超时时间。
(4)服务器日志和欢迎信息
dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。
ftpd_banner=Welcome to blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。
配置ftp有三种模式,但是这里字数有限,下面这个是匿名的。详细的你可以看下最后那个连接
vsftpd服务程序中匿名开放是一种最不安全的验证模式,任何人都可以无需密码验证就登陆到FTP服务端主机,这种模式一般只用来保存不重要的公开文件,尤其是在生产环境中更要注意不放敏感文件,当然也非常推荐用咱们第八章中学习的防火墙管理工具(例如Tcp_wrappers)将vsftpd服务程序的允许访问主机范围设置为企业内网,这样还算能够保证基本的安全性。
vsftpd服务程序默认已经开启了匿名访问模式,咱们需要做的就是进一步允许匿名用户的上传、下载文件的权限,以及让匿名用户能够创建、删除、更名文件的权限,这些权限对于匿名用户来讲非常的危险,咱们只是为了练习Linux系统中vsftpd服务程序的配置能力,十分不推荐在生产环境中使用,匿名用户的权限参数及介绍:
参数
作用
anonymous_enable=YES
允许匿名访问模式。
anon_umask=022
匿名用户上传文件的umask值。
anon_upload_enable=YES
允许匿名用户上传文件
anon_mkdir_write_enable=YES
允许匿名用户创建目录
anon_other_write_enable=YES
允许匿名用户修改目录名或删除目录
[root@linuxprobe ~]# vim /etc/vsftpd/vsftpdconf
anonymous_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_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=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
确认参数填写正确后保存并退出vsftpd服务程序的主配置文件,还需要重启vsftpd服务程序来让新的配置服务参数生效,并且同学们在生产环境中或者红帽RHCSA、RHCE、RHCA认证考试中也请记得一定要把配置过的服务程序加入到开机启动项中,以保证下次服务器重启后依然能够为用户正常提供ftp文件传输服务:
[root@linuxprobe ~]# systemctl restart vsftpd
[root@linuxprobe ~]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpdservice' '/etc/systemd/system/multi-usertargetwants/vsftpdservice
这样咱们就可以在客户端上面使用ftp命令连接到远程的FTP服务器上面了,FTP服务的匿名开放模式的帐号统一为anonymous,密码为空。匿名模式登陆到FTP服务器后默认所在位置为/var/ftp目录,咱们可以切换至里面的pub目录中,然后尝试创建一个新的目录文件来检验是否已经有了写入权限:
[root@linuxprobe ~]# ftp 1921681010
Connected to 1921681010 (1921681010)
220 (vsFTPd 302)
Name (1921681010:root): anonymous
331 Please specify the password
Password:此处敲击回车即可
230 Login successful
Remote system type is UNIX
Using binary mode to transfer files
ftp> cd pub
250 Directory successfully changed
ftp> mkdir files
550 Permission denied
刚刚咱们已经把iptables防火墙策略清空,而且也在vsftpd服务程序的主配置文件中添加了允许匿名用户创建目录和写入文件的权限,那么为什么还会被拒绝呢?建议同学们先不要往下面看,思考后用自己的方法尝试解决下这个问题,长期这样您的Linux系统排错能力就一定会练出来的。
回想起前面操作的细节,咱们FTP服务的匿名开放模式是默认登陆到了/var/ftp目录中,查看下这个目录的权限后才发现原来只有root管理员用户才有写入权限的,怪不得会提示写入出错呢,咱们只需要把目录的所有者身份改成系统帐户ftp即可,这样就应该可以了吧~
[root@linuxprobe ~]# ls -ld /var/ftp/pub
drwxr-xr-x 3 root root 16 Jul 13 14:38 /var/ftp/pub
[root@linuxprobe ~]# chown -Rf ftp /var/ftp/pub
[root@linuxprobe ~]# ls -ld /var/ftp/pub
drwxr-xr-x 3 ftp root 16 Jul 13 14:38 /var/ftp/pub
[root@linuxprobe ~]# ftp 1921681010
Connected to 1921681010 (1921681010)
220 (vsFTPd 302)
Name (1921681010:root): anonymous
331 Please specify the password
Password:此处敲击回车即可
230 Login successful
Remote system type is UNIX
Using binary mode to transfer files
ftp> cd pub
250 Directory successfully changed
ftp> mkdir files
550 Create directory operation failed
又报错了!!此时再次使用ftp命令登入到FTP服务器主机后依然会提示写入操作失败,但细心的同学一定发现报错信息已经产生了变化,在刚刚没有写入权限的时候提示说权限拒绝(Permission denied)所以咱们怀疑是权限的问题,但现在是提示创建目录的操作失败(Create directory operation failed)那么咱们同学应该也能马上意识到是SELinux服务在限制这个操作了吧,查看下所有与ftp相关的SELinux域策略有那些吧:
[root@linuxprobe ~]# getsebool -a | grep ftp
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir --> off
根据策略的名称和经验可以猜测出是哪一条规则策略,咱们在设置的时候请记得使用-P参数来让配置过的策略永久生效,保证在服务器重启后依然能够顺利写入文件,咱们可以分别尝试下创建目录文件、对文件进行改名以及删除目录文件等等操作。最后,恭喜同学们完成了这个实验课程,建议您在进行一次实验课程前还原虚拟机到最初始的状态,以免多个配置参数之间产生冲突。
[root@linuxprobe ~]# setsebool -P ftpd_full_access=on
[root@linuxprobe ~]# ftp 1921681010
Connected to 1921681010 (1921681010)
220 (vsFTPd 302)
Name (1921681010:root): anonymous
331 Please specify the password
Password:此处敲击回车即可
230 Login successful
Remote system type is UNIX
Using binary mode to transfer files
ftp> cd pub
250 Directory successfully changed
ftp> mkdir files
257 "/pub/files" created
ftp> rename files database
350 Ready for RNTO
250 Rename successful
ftp> rmdir database
250 Remove directory operation successful
ftp> exit
221 Goodbye
楼主可以看下http://wwwlinuxprobecom/chapter-11html#112_Vsftpd查看下详情,有图会比较方便理解
网站模板库 » 请教:登录ftp服务器无法以目录形式打开 ,“查看”菜单下面没有“在windows浏览器中打开FTP项,如何解决
0条评论