【T电商2】ftp服务器搭建
一、为什么需要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
<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
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服务器搭建的更多相关文章
- 记一次ftp服务器搭建走过的坑
记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...
- FTP服务器搭建及操作(一)
FTP服务器搭建及操作(一) FTP搭建 PHP FTP操作 搭建方法参照(windows):http://www.cnblogs.com/lidan/archive/2012/06/04/25351 ...
- 《Linux下FTP服务器搭建及FTP使用》
.LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...
- ftp服务器搭建及简单操作
ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...
- Linux CentOS 6.5 下 vsftpd ftp服务器搭建
Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...
- FTP-Linux中ftp服务器搭建
一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...
- (转)【Java FTP及FTP服务器搭建】
转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...
- ftp服务器搭建(windows)+实现ftp图片上传对接
ftp服务器搭建(windows): vsftpd简介: vsftpd是“very secure FTP daemon”的缩写,是一个完全免费的.开放源代码的ftp服务器软件. 下载地址: http: ...
- Linux之匿名FTP服务器搭建
FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...
- Linux 之 FTP服务器搭建
FTP服务器搭建 参考教程:[千峰教育] 1.关闭防火墙: service iptables stop 2.关闭Selinux setenforce 0 3.安装所需要依赖及编译工具 yum inst ...
随机推荐
- NSIS 的简介
NSIS (Nullsoft Scriptable Install System)是一个Open Source的Windows系统下安装程序制作程序.它提供了安装.卸载.系统设置.文件解压缩等功能.这 ...
- Android Framework层Power键关机流程(一,Power长按键操作处理)
一:Android处理Power按键长按操作 在Framework层中,Android4.x对Power键(KeyEvent.KEYCODE_POWER)的操作,我们从PhoneWindowManag ...
- STL 库中的陷阱----一个难以察觉的 bug
请找出下面程序的 bug? int maxProfit2(vector<int> &prices) { int local[3] = {0}; int global[3] = {0 ...
- memcache详解
MemCache是一个自由.源码开放.高性能.分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度. Me ...
- OD调试篇12
Delphi的逆向 先看看今天需要破解的程序. 打开程序先出现了一个nag窗口,然后是unregistered未注册的提示,以及关于里的需要注册. 拖进die看了看 就是delphi写的.那 ...
- 关于 Unix 用户权限及进程权限及 Saved set-user-id
最近在看APUE,看到3.14节,fcntl的时候#include <fcntl.h>int fcntl(int fd, int cmd, .../* int arg */);出错返回-1 ...
- StringMisc
//StringMisc.java // This program demonstrates the length, charAt and getChars // methods of the Str ...
- java端口扫描(原创)
项目需要扫描占用的端口来判断服务是否启动,通过查资料发现大多数方法都是ServerSocket socket = new ServerSocket(port);代码如下: package com.fr ...
- 《统计推断(Statistical Inference)》读书笔记——第6章 数据简化原理
在外行眼里统计学家经常做的一件事就是把一大堆杂七杂八的数据放在一起,算出几个莫名其妙的数字,然后再通过这些数字推理出貌似很靠谱的结论,简直就像是炼金术士用“贤者之石”把一堆石头炼成了金矿.第六章,应该 ...
- JS获取屏幕,浏览器,网页高度宽度
网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetW ...