文件服務(wù)器搭建

前言

在我們下載一些開(kāi)發(fā)軟件時(shí),常吃『瑁可以看到如圖的網(wǎng)頁(yè)形式井氢,事實(shí)上訪問(wèn)的就是文件服務(wù)器,我們將使用vsftpd + Nginx在Linux下搭建一個(gè)簡(jiǎn)單的文件服務(wù)器

為什么要使用文件服務(wù)器岳链?

  1. 主要用于服務(wù)器集群架構(gòu)中花竞,比如使用nginx+tomcat做集群與負(fù)載均衡時(shí),如果將文件直接上傳到tomcat上掸哑,那么由于有多個(gè)tomcat约急,假設(shè)A上傳圖片到了tomcat1上,那么分配到其他tomcat的用戶就訪問(wèn)不到了苗分,而文件服務(wù)器就可以解決集群環(huán)境下圖片的訪問(wèn)問(wèn)題厌蔽。
  2. 通過(guò)Nginx的一些配置也能提高線上圖片的訪問(wèn)速度,并且線上文件服務(wù)器通常會(huì)單獨(dú)使用一臺(tái)云主機(jī)與應(yīng)用服務(wù)器相隔離摔癣,這樣也能緩解應(yīng)用服務(wù)器圖片訪問(wèn)及上傳下載的壓力躺枕。

vsftpd簡(jiǎn)介

簡(jiǎn)介

vsftpd是"very secure FTP daemon"的縮寫(xiě),是一個(gè)完全免費(fèi)的供填、開(kāi)放源代碼的ftp服務(wù)器軟件拐云。

特點(diǎn)

vsftpd是一款在Linux發(fā)行版中最受推崇的FTP服務(wù)器程序,小巧輕快近她,安全易用叉瘩,支持虛擬用戶、支持帶寬限制等功能粘捎。

vsftpd安裝

安裝

安裝命令:yum -y install vsftpd
可通過(guò) rpm -qa| grep vsftpd 命令檢查是否已經(jīng)安裝vsftpd
默認(rèn)配置文件在 /etc/vsftpd/vsftpd.conf

創(chuàng)建虛擬用戶
# 在根目錄或者用戶目錄下創(chuàng)建ftp文件夾薇缅,這里選擇在根目錄
mkdir /ftpfile
# 添加用戶
useradd ftpuser -d /ftpfile -s /sbin/nologin
# 修改ftpfile文件夾權(quán)限
chown -R ftpuser.ftpuser /ftpfile
# 重設(shè)ftpuser密碼
passwd ftpuser
配置
cd /etc/vsftpd
# 創(chuàng)建文件chroot_list
vim chroot_list
# 添加內(nèi)容:ftpuser,保存退出
vim /etc/selinux/config
# 修改SELINUX=disabled
setenforce 0
修改主配置

修改主配置文件:vim /etc/vsftpd/vsftpd.conf
1.搜索banner找到如下注釋攒磨,取消ftpd_banner注釋泳桦,新增加三行配置

# You may fully customise the login banner string:
ftpd_banner=Welcome to silly FTP service.

local_root=/ftpfile
anon_root=/ftpfile
use_localtime=yes

2.繼續(xù)搜索chroot_list,取消如下兩行配置的注釋

chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list

3.搜索anon娩缰,將如下的配置項(xiàng)值修改為NO

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO

4.在最底端添加被動(dòng)傳輸?shù)亩丝诰淖畲蠛妥钚《丝谥担趂tp上傳文件傳輸時(shí)需要使用的拼坎,雖然采用默認(rèn)的端口范圍也可以浮毯,但是防火墻的設(shè)置就不能太嚴(yán)格,所以線上環(huán)境為了安全考慮建議加上端口配置泰鸡,方便防火墻配置债蓝。

tcp_wrappers=YES
# 添加端口配置
pasv_min_port=61001
pasv_max_port=62000
防火墻配置
vim /etc/sysconfig/iptables
# 添加vsftpd的端口配置
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT

-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --sport 20 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -p TCP --sport 21 -j ACCEPT
啟動(dòng)服務(wù)

重啟防火墻:service iptables restart
啟動(dòng)vsftpd:service vsftpd start
/ftpfile目錄上傳一些測(cè)試文件及目錄,方便驗(yàn)證查看盛龄。

驗(yàn)證

在windows下驗(yàn)證:打開(kāi)瀏覽器饰迹,以ftp協(xié)議訪問(wèn)芳誓,如:ftp://192.168.0.108/,訪問(wèn)時(shí)會(huì)彈出窗口讓我們輸入ftp的用戶名和密碼啊鸭,輸入正確的帳號(hào)后看到如圖界面則代表訪問(wèn)成功锹淌。

在linux下的驗(yàn)證:輸入命令 ftp ip 連接服務(wù)器,需要輸入ftp的用戶和密碼莉掂,通過(guò)ls命令或者dir命令查看文件服務(wù)器的文件列表,輸入exit退出千扔。

通過(guò)ftp客戶端軟件驗(yàn)證:例如cuteftp憎妙、filezilla、viperftp曲楚、flashftp厘唾、leapftp等進(jìn)行連接ftp服務(wù)器,進(jìn)行文件上傳龙誊、下載驗(yàn)證抚垃。

文件服務(wù)器搭建

環(huán)境說(shuō)明

CentOS安裝參考:Linux安裝
虛擬機(jī)使用參考:虛擬機(jī)的使用
nginx安裝參考:Linux下安裝Nginx

host配置

由于我們是在本機(jī)進(jìn)行搭建,所以需要配置host虛擬域名映射趟大,如果是線上環(huán)境有真實(shí)域名鹤树,請(qǐng)忽略此步。
修改瀏覽器所在的主機(jī)的host文件逊朽,這里修改的是windows的host文件:C:\Windows\System32\drivers\etc
在末尾添加一行配置:192.168.0.108 img.silly.com

nginx配置

1.修改nginx主配置文件nginx.conf

vim /usr/local/nginx/conf/nginx.conf
# 在注釋內(nèi)容上面添加如下內(nèi)容
include vhost/*.conf;
# another virtual host

2.在Nginx安裝目錄的conf目錄下新建一個(gè)vhost目錄罕伯,然后在vhost目錄下新建配置文件,文件名需要以.conf結(jié)尾

cd /usr/local/nginx/conf/
mkdir vhost
cd vhost/
vim img.silly.com.conf

配置文件添加如下內(nèi)容

server {
    listen 80;
    autoindex on;
    server_name img.silly.com;
    access_log /usr/local/nginx/logs/access.log combined;
    index index.html index.htm index.jsp index.php;

    location / {
        root /ftpfile/;
        add_header Access-Control-Allow-Origin *;
    }
}
環(huán)境驗(yàn)證

啟動(dòng)nginx叽讳,即執(zhí)行命令:${nginx}/sbin/nginx追他,打開(kāi)瀏覽器,訪問(wèn)自己上傳的任意一張圖片岛蚤,如:http://img.silly.com/mountain.jpg邑狸,訪問(wèn)ok則說(shuō)明環(huán)境搭建成功。

后序

我們?cè)贘ava項(xiàng)目開(kāi)發(fā)中會(huì)使用apache的一些ftp開(kāi)源包涤妒,然后我們用里面的工具進(jìn)行上傳圖片的時(shí)候单雾,會(huì)調(diào)用ftp服務(wù),將圖片上傳到ftp服務(wù)器上她紫,這時(shí)候我們就能拿到上傳圖片的文件名铁坎,而圖片服務(wù)器對(duì)應(yīng)的二級(jí)域名我們可以在項(xiàng)目中配置,所以上傳圖片的完整URL就能拿到了犁苏,那么前端就可以通過(guò)域名url展示圖片了硬萍。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市围详,隨后出現(xiàn)的幾起案子朴乖,更是在濱河造成了極大的恐慌祖屏,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件买羞,死亡現(xiàn)場(chǎng)離奇詭異袁勺,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)畜普,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門期丰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人吃挑,你說(shuō)我怎么就攤上這事钝荡。” “怎么了舶衬?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵埠通,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我逛犹,道長(zhǎng)端辱,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任虽画,我火速辦了婚禮舞蔽,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘码撰。我一直安慰自己喷鸽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布灸拍。 她就那樣靜靜地躺著做祝,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鸡岗。 梳的紋絲不亂的頭發(fā)上混槐,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音轩性,去河邊找鬼声登。 笑死,一個(gè)胖子當(dāng)著我的面吹牛揣苏,可吹牛的內(nèi)容都是我干的悯嗓。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼卸察,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼脯厨!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起坑质,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤合武,失蹤者是張志新(化名)和其女友劉穎临梗,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體稼跳,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡盟庞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了汤善。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片什猖。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖红淡,靈堂內(nèi)的尸體忽然破棺而出不狮,到底是詐尸還是另有隱情,我是刑警寧澤锉屈,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布荤傲,位于F島的核電站垮耳,受9級(jí)特大地震影響颈渊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜终佛,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一俊嗽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧铃彰,春花似錦绍豁、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至邪铲,卻和暖如春芬位,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背带到。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工昧碉, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人揽惹。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓被饿,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親搪搏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子狭握,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354