CentOS7.0下安装FTP服务的方法
时间:2018-02-24 16:38 来源:linux.it.net.cn 作者:IT
一个小插曲,安装一个FTP服务,便于和远程服务器的文件沟通。后续我们会讲到如何使用Capistrano配合git完成服务器的代码部署以及发布流程。现在,代码先走FTP吧,挺稳。
FTP简介
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。
在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。
用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
FTP安装
首先检查一下你的远程服务器是否已经安装了FTP服务。
1
#rpm -qa | grep vsftpd
如果啥都没显示,恭喜你,没有安装ftp服务,你可以安心的进行下面的动作了。如果有vsftpd的版本,那该干啥干啥去,这章不适合你!!!
那我们首先安装vsftpd。
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。
运行下面的命令就可以完成vsftpd的安装
1
#yum -y install vsftpd
安装完成再次利用上面的rpm命令检查一下是否完成安装,如果完成安装,那就可以继续。
开启vsftpd服务
1
#service vsftpd start
检查vsftpd服务
1
#service vsftpd status
注意,ftp服务使用的是21端口,有时候也使用20端口。我们之前设置的iptables防火墙服务阻止了这一端口,所以也要添加下面的代码到/etc/sysconfig/iptables里去。
1
A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
重启防火墙服务
1
#systemctl restart iptables.service
好的,到这里,我们的默认ftp服务就已经开始运作啦,让我们来测试一下吧。
1
#ftp localhost
用户名称那一栏输入anonymous(匿名)
得到下面的信息就标识你的vsftp服务安装已完成。
在ftp>后面输入bye,先暂时和ftp告别,因为我们还有一些事没干呢。
配置vsftpd服务
打开vsftpd服务的配置文件
1
#vim /etc/vsftpd/vsftpd.conf
改变这几个属性的值,具体是啥意思呢,当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。为了以后好控制,我们先打开这几个配置。
保存退出,我们新建一个chroot_list文件
1
#touch /etc/vsftpd/chroot_list
重启vsftp服务
1
#service vsftpd restart
新增ftp用户
1
#/usr/sbin/adduser -d /usr/www/ftptest -g ftp -s /sbin/nologin vftpuser
新增用户vftpuser,用户的主目录是/usr/www/ftptest目录,用户组是ftp,不能登录的账户。
设置vftpuser密码
1
#passwd vftpuser
修改/usr/www/ftptest的目录权限
1
#chmod 755 /usr/www/ftptest/
重启vsftp服务
1
#/sbin/service vsftpd restart
设置权限
查看SElinux策略内ftp相关权限
1
#getsebool -a | grep ftp
打开ftp权限
1
#setsebool allow_ftpd_full_access 1
重启vsftp服务
1
#/sbin/service vsftpd restart
现在,可以在本机ftp远程服务器啦。不过,枫爷推荐大家一款比较实用的ftp软件:filezilla。相当好用,至于怎么用,大家自行百度即可。
可能遇到的问题
问题1:SElinux未关闭导致无法访问,可以尝试将selinux策略先行关闭。
1
#vim /etc/selinux/config
将SELINUX一栏设置为disable即可
问题2:filezilla打开时会报以下的错误
打开你的站点管理,点击进入传输设置
按照图中的配置配置传输模式,即可完成链接。
(责任编辑:IT)
一个小插曲,安装一个FTP服务,便于和远程服务器的文件沟通。后续我们会讲到如何使用Capistrano配合git完成服务器的代码部署以及发布流程。现在,代码先走FTP吧,挺稳。 FTP简介 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。 在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。 用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。 FTP安装 首先检查一下你的远程服务器是否已经安装了FTP服务。
如果啥都没显示,恭喜你,没有安装ftp服务,你可以安心的进行下面的动作了。如果有vsftpd的版本,那该干啥干啥去,这章不适合你!!! 那我们首先安装vsftpd。 vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。 运行下面的命令就可以完成vsftpd的安装
安装完成再次利用上面的rpm命令检查一下是否完成安装,如果完成安装,那就可以继续。 开启vsftpd服务
检查vsftpd服务
注意,ftp服务使用的是21端口,有时候也使用20端口。我们之前设置的iptables防火墙服务阻止了这一端口,所以也要添加下面的代码到/etc/sysconfig/iptables里去。
重启防火墙服务
好的,到这里,我们的默认ftp服务就已经开始运作啦,让我们来测试一下吧。
用户名称那一栏输入anonymous(匿名) 得到下面的信息就标识你的vsftp服务安装已完成。
在ftp>后面输入bye,先暂时和ftp告别,因为我们还有一些事没干呢。 配置vsftpd服务 打开vsftpd服务的配置文件
改变这几个属性的值,具体是啥意思呢,当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。为了以后好控制,我们先打开这几个配置。 保存退出,我们新建一个chroot_list文件
重启vsftp服务
新增ftp用户
新增用户vftpuser,用户的主目录是/usr/www/ftptest目录,用户组是ftp,不能登录的账户。 设置vftpuser密码
修改/usr/www/ftptest的目录权限
重启vsftp服务
设置权限 查看SElinux策略内ftp相关权限
打开ftp权限
重启vsftp服务
现在,可以在本机ftp远程服务器啦。不过,枫爷推荐大家一款比较实用的ftp软件:filezilla。相当好用,至于怎么用,大家自行百度即可。 可能遇到的问题 问题1:SElinux未关闭导致无法访问,可以尝试将selinux策略先行关闭。
将SELINUX一栏设置为disable即可
问题2:filezilla打开时会报以下的错误
打开你的站点管理,点击进入传输设置
按照图中的配置配置传输模式,即可完成链接。 (责任编辑:IT) |