Linux ftp 安装及相关命令

1、VSFTP简介

  VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。

  安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。

  在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。

2、VSFTP安装及配置

    安装该软件需要使用最高用户(root)进行安装,否则不能进行。

2.1 安装

  首先用命令检查VSFTP是否已经安装。

chkconfig –list | grep vsftpd

  显示结果如下,没有任何反应,说明没有安装VSFTP。

   方法1:如果下载的rpm文件

    直接在该文件所在的目录下 键入: rpm -ivh vsftpd-1.1.3-8.i386.rpm ,等待安装即完成。

  方法2:使用yum命令直接安装

yum –y install vsftpd

  上图中表示正在下载,需要耐心等一下,如果网络不畅通,也可能需要下载失败,不过不要担心,只要在重新提交一次命令就行。

  从上面的结果中看出,已经成功安装。然后为它创建日志文件:

touch /var/log/vsftpd.log

  这样简单的两个命令就完成了vsftp的安装,但是如果你现在想这样ftp://your_ip来访问的话,那还不行,还需要配置权限!

2.2 启动与配置自启动

  再次使用"chkconfig –list | grep vsfpd"来查看vsftpd服务启动项情况;

  如果看到的是如下显示的结果:

  服务全部都是关闭(off)的,注意这里的关闭(off)表示的是服务器启动的时候是否会自启动服务,我们使用如下命令来配置其自启动:

chkconfig vsftpd on

  或者

chkconfig –level 2345 vsftpd on

  执行结果如下:

  查看与管理ftp服务:

启动ftp服务:service vsftpd start

查看ftp服务状态:service vsftpd status

重启ftp服务:service vsftpd restart

关闭ftp服务:service vsftpd stop

2.3 配置vsfpd服务

  编辑/etc/vsftpd/vsftpd.conf文件,配置vsftp服务:

vim /etc/vsftpd/vsftpd.conf

  上图中先显示出"/etc/vsftpd"下面有哪些文件,然后在用"vim"编辑器进行修改。

   先按键盘上的"a"就可以进行编辑了,按照下面进行操作。

anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许

xferlog_file=/var/log/vsftpd.log #设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来

#idle_session_timeout=600 --> idle_session_timeout=600 //会话超时,客户端连接到ftp但未操作,默认被注释掉,可根据个人情况修改

#async_abor_enable=YES --> async_abor_enable=YES //支持异步传输功能,默认是注释掉的,去掉注释

#ascii_upload_enable=YES --> ascii_upload_enable=YES //支持ASCII模式的下载功能,默认是注释掉的,去掉注释

#ascii_download_enable=YES --> ascii_download_enable=YES //支持ASCII模式的上传功能,默认是注释掉的,去掉注释

#ftpd_banner=Welcome to blah FTP service //FTP的登录欢迎语,本身是被注释掉的,去不去都行

#chroot_local_user=YES --> chroot_local_user=YES

//禁止本地用户登出自己的FTP主目录,本身被注释掉,去掉注释

  下面几个都是已经去掉的,只是写出来,明白其用意。

local_enable=YES //允许本地用户访问,默认就是YES,不用改

write_enable=YES //允许写入,默认是YES,不用改

local_umask=022 //上传后文件的权限掩码,不用改

dirmessage_enable=YES //开启目录标语,默认是YES,开不开无所谓,我是默认就行

xferlog_enable=YES //开启日志,默认是YES,不用改

connect_from_port_20=YES //设定连接端口20

xferlog_std_format=YES //设定vsftpd的服务日志保存路径,不用改

pam_service_name=vsftpd //设定pam服务下vsftpdd的验证配置文件名,不用改

userlist_enable=YES //拒绝登录用户名单,不用改

TCP_wrappers=YES //限制主机对VSFTP服务器的访问,不用改(通过/etc/hosts.deny和/etc/hosts.allow这两个文件来配置)

    按照上面修改完之后,按键盘"Esc"退出编辑,再按":",并在后面输入"wq",进行保存并退出。

2.4 配置iptables防火墙

  按照以上步骤还不能运行,用下面命令可以查看一下防火墙允许的端口号,我们知道ftp的端口号是"20、21",从结果中可以看出,并没有。

service ipstables status

   这时需要对"/etc/sysconfig/iptables"进行配置:

vim /etc/sysconfig/iptables

  上图中先列出以"iptables"模糊比配的文件,然后在用上面的命名对"iptables"文件进行添加下面的内容。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

  具体的添加操作命令和前面对"/etc/vsftpd/vsftpd.conf"的操作一样。

2.5 设置selinux问题

  SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux史上最杰出的新安全子系统。SELinux 是 2.6 版本的 Linux 内核中提供的强制访问控制 (MAC)系统。对于目前可用的 Linux 安全模块来说,SELinux 是功能最全面,而且测试最充分的,它是在 20 年的 MAC 研究基础上建立的。SELinux 在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念SELinux提供了比传统的UNIX权限更好的访问控制。

  正式如此,所以此时还不能访问FTP服务器。用下面命令查询:

getsebool -a | grep ftp

  可以通过下面命令把上图中红色圈住的两个的值设置为"on"。

setsebool -P ftp_home_dir 1

setsebool -P allow_ftpd_full_access 1

2.6 重启相关服务

  最后就是把"vsftpd"和"iptables"两个服务重新启动一下。

service vsftpd restart

  如果出现下图,说明刚才没有把vsftpd服务启动起来。

service vsftpd start

  最后把防火墙重新启动一下。

service iptables restart

  到此为止FTP服务器就搭建完毕了,下面可以通过"FlashFXP.exe"软件进行访问了。

 

3、FlashFXP使用

 

3.1 FlashFXP简介

  FlashFXP是一款功能强大的FXP/FTP软件,集成了其它优秀的FTP软件的优点,如CuteFTP的目录比较,支持彩色文字显示;如BpFTP支持多目录选择文件,暂存目录;又如LeapFTP的界面设计。支持目录(和子目录)的文件传输,删除;支持上传,下载,以及第三方文件续传;可以跳过指定的文件类型,只传送需要的本件;可自定义不同文件类型的显示颜色;暂存远程目录列表,支持FTP代理及Socks 3&4;有避免闲置断线功能,防止被FTP平台踢出;可显示或隐藏具有"隐藏"属性的文档和目录;支持每个平台使用被动模式等。

 

  上图为FlashFXP开启界面,左面是显示的"本地文件系统",后面是显示"服务器文件系统",点击右侧上面的闪电图标,按照下图选择"Quick Connect"。

  点击之后出现下图,并按照下图进行填写。例如:

 

3.2 示例上传

 

   链接成功后,会显示上面的内容,可以尝试把左边的一个文件拖到右边,就能上传了,我们现在试一下。

  最后登录一下看看是否在linux下面有这个文件。

   从上图中发现了我们刚才上传的文件"SqlHelper1.cs"文件,好了,到此为止,我们的Linux下的FTP服务器基本完成了, 但是离真正的FTP服务器还差的很远,因为我们只是用于"远程上传"点文件,所以基本能满足我们的需要。

猜你喜欢

转载自www.linuxidc.com/Linux/2017-11/148214.htm
今日推荐