一、为什么需要ftp?

分布式环境一般都有一个专门的图片服务器存放图片。我们使用虚拟机搭建一个专门的服务器来存放图片。在此服务器上安装一个nginx来提供http服务,安装一个ftp服务器来提供图片上传服务。

首先,传统的图片管理方式:

分布式图片管理:

PS:这两张图片,让我想起来当时做单点登录的时候,将用户信息保存到memcache中去一样。就是想到了而且,没有什么确证的逻辑关系。

二、安装

上篇文章介绍到安装软件的几种不同方式,这次,我依然采用自己最为喜欢的yum方式安装。备注:请先获取root权限

1,首先:yum -y install vsftpd

2,其次:更改vsftpd.conf配置文件信息vi /etc/vsftpd/vsftpd.conf

<span style="font-family:KaiTi_GB2312;font-size:18px;"># Allow anonymous FTP? (Beware - allowed by default if you comment this out).
#anonymous_enable=YES
#
# Uncomment this to allow local users to log in.
local_enable=YES
# </span>

取消匿名登录:将anonymous_enable改为NO,或者注释掉

然后,文档的最后面改为:

<span style="font-family:KaiTi_GB2312;font-size:18px;"># sockets, you must run two copies of vsftpd with two configuration files.
# Make sure, that one of the listen options is commented !!
#listen_ipv6=YES pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
local_root=/var/public_root
tcp_wrappers=YES</span>

3,增加ftp用户

这里设置账户名为HHX,密码为HHX

设置用户:useradd HHX -s /sbin/nologin

设置密码:passwd HHX

4. 编辑user_list文件,允许HHX用户访问FTP

vi /etc/vsftpd/user_list
<span style="font-family:KaiTi_GB2312;font-size:18px;"># 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.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
HHX</span>

5,建立根目录,设置访问权限

<span style="font-family:KaiTi_GB2312;font-size:18px;">[root@localhost ~]# mkdir /var/public_root
[root@localhost ~]# chown -R HHX /var/public_root
[root@localhost ~]# chmod -R 755 /var/public_root</span>

6,开启vsftp服务

service vsftpd start

备注:正常情况下,现在使用ftp客户端就可以连接上了,如果连接不上的话,请注意以下两点的更改:

1,修改selinux

执行以下命令查看状态:
[root@bogon ~]# getsebool -a | grep ftp  
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
[root@bogon ~]# 
执行上面命令,再返回的结果看到两行都是off,代表,没有开启外网的访问
[root@bogon ~]# setsebool -P allow_ftpd_full_access on
[root@bogon ~]# setsebool -P ftp_home_dir on

2,修改主、被动模式

打开vsftpd.conf文件,在后面添加上

pasv_min_port=30000
pasv_max_port=30999

然后,更改防火墙vim /etc/sysconfig/iptables

将22 -j ACCEPT另起一行,将22换成21

然后再起一行,将22换成30000:30999,然后:wq!强制保存退出。重启iptables,重启服务器。完工!

三、总结

ftp的安装就这么结束了,下一篇博客,介绍Nginx作为http服务器和ftp作为文件服务器是怎么联合使用的。在安装这个的时候,或者使用yum进行安装的时候,会遇到一些问题,但是不要惊慌,一个个的解决,都会变好的。最常见的问题就是无法解析host,这时候去查一查,然后加上nameserver组就好了。有时候就是在连接的时候,访问列表错误,这时候一般是需要更改主被动访问模式。总之:耐心点!

【T电商2】ftp服务器搭建的更多相关文章

  1. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

  2. FTP服务器搭建及操作(一)

    FTP服务器搭建及操作(一) FTP搭建 PHP FTP操作 搭建方法参照(windows):http://www.cnblogs.com/lidan/archive/2012/06/04/25351 ...

  3. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  4. ftp服务器搭建及简单操作

    ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...

  5. Linux CentOS 6.5 下 vsftpd ftp服务器搭建

    Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122   操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...

  6. FTP-Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  7. (转)【Java FTP及FTP服务器搭建】

    转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...

  8. ftp服务器搭建(windows)+实现ftp图片上传对接

    ftp服务器搭建(windows): vsftpd简介: vsftpd是“very secure FTP daemon”的缩写,是一个完全免费的.开放源代码的ftp服务器软件. 下载地址: http: ...

  9. Linux之匿名FTP服务器搭建

    FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...

  10. Linux 之 FTP服务器搭建

    FTP服务器搭建 参考教程:[千峰教育] 1.关闭防火墙: service iptables stop 2.关闭Selinux setenforce 0 3.安装所需要依赖及编译工具 yum inst ...

随机推荐

  1. Jmeter—1 安装

    1  Jmeter运行需要java环境.首先需要安装JDK. 图标是这样的:  2 下载apache-jmeter包. jmeter官网:http://jmeter.apache.org/ 3  解压 ...

  2. Javascript实现CheckBox的全选与取消全选的代码(转)

    js函数 复制代码 代码如下: <script type="text/javascript"> function checkAll(name) { var el = d ...

  3. PCL中point cloud的数据类型

    出处: http://wiki.ros.org/pcl/Overview 1.数据类型 1.1 ROS中point cloud数据类型 sensor mesgs::PointCloud sensor ...

  4. gradle 本地 配置

    distributionUrl=file:///D:/react/gradle-2.4-all.zip 记住差一点都会报错 编译运行Android 我们进入AwesomeProject目录, $ cd ...

  5. xmind的第八天笔记

  6. javascript confirm()函数的用法

    javascript confirm()函数的用法 confirm():确认消息对话框.用于允许用户做选择的动作.弹出的对话框中包含一确定按钮和一取消按钮. confirm(str) 参数说明: st ...

  7. 转:Task任务调度实现生产者消费者模式

    我们经常会遇到生产者消费者模式,比如前端各种UI操作事件触发后台逻辑等.在这种典型的应用场景中,我们可能会有4个业务处理逻辑(下文以P代表生产者,C代表消费者): 1. FIFO(先进先出)      ...

  8. iOS红马甲项目Bug总结(2)

    背景:iOS调用相机和访问图库 一.调用相机或图库: -(void)imgviewClick { ALAuthorizationStatus author = [ALAssetsLibrary aut ...

  9. [USACO08DEC] Trick or Treat on the Farm

    题目描述 每年万圣节,威斯康星的奶牛们都要打扮一番,出门在农场的N个牛棚里转 悠,来采集糖果.她们每走到一个未曾经过的牛棚,就会采集这个棚里的1颗糖果. 农场不大,所以约翰要想尽法子让奶牛们得到快乐. ...

  10. Oracle学习系列6

    Oracle学习系列6 ************************************************************************************ 删除约 ...