小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Docker | 搭建一個ftp服務(wù)器

 忠波irlphwt1ng 2019-12-15

目錄


前期準(zhǔn)備

名稱地址說明
阿里云服務(wù)器阿里云翼計劃系統(tǒng)鏡像選擇Ubuntu1604 server版
Xshell+XftpXshell和Xftp免費試用分別用于ssh、ftp連接服務(wù)器

安裝docker

  • 更新軟件源
    apt update

  • 更新軟件
    apt upgrade -y

  • 使用官方安裝腳本自動安裝最新版docker客戶端docker-ce
    curl -fsSL https://get. | bash -s docker --mirror Aliyun

  • 查看docker-ce版本
    docker --version


配置docker鏡像加速器

  • 創(chuàng)建docker文件夾
    mkdir -p /etc/docker

說明:

  • 一般安裝docker后會默認(rèn)存在

  • 創(chuàng)建daemon.json

tee /etc/docker/daemon.json <<-'EOF'

{
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

EOF

提示:

  • 加速地址可以更換為下面的

國內(nèi)鏡像源地址
官方中國區(qū)https://registry.
網(wǎng)易http://hub-mirror.c.163.com
USTChttps://docker.mirrors.ustc.edu.cn
阿里云
DaoCloudhttps://www./mirror
  • 重新載入加速器
    systemctl daemon-reload

  • 重啟docker
    systemctl restart docker


安裝vsftpd

參閱:

  • 搜索vsftpd鏡像
    docker search vsftpd

  • pull最新版鏡像到本地
    docker pull fauria/vsftpd

  • 運行docker鏡像并創(chuàng)建對應(yīng)的Container
    包含用戶名和密碼
    docker run -d -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -v /Ftpfile:/home/vsftpd -e FTP_USER=user -e FTP_PASS=userpwd -e PASV_ADDRESS=<宿主機(jī)ip> -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd
    不包含用戶名和密碼
    docker run -d -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -v /Ftpfile:/home/vsftpd -e PASV_ADDRESS=<宿主機(jī)ip> -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd

提示:

  • PASV_ADDRESS需改為自己的宿主機(jī)ip

  • -p 進(jìn)行端口綁定映射

  • -v 進(jìn)行文件目錄的映射

  • FTP_UESR 和FTP_PASS如果設(shè)定了會在container的
    /etc/vsftpd/virtual_users.txt里面

  • PASV_ADDRESS指的的宿主機(jī)地址

  • PASV_MIN_PORT和PASV_MAX_PORT映射的是被動模式下端口使用范圍

  • 必須在服務(wù)器的防火墻中開啟20、21、22和21100/21110端口

  • 進(jìn)入vsftpd鏡像對應(yīng)的container中
    docker exec -i -t vsftpd bash

  • 編輯配置文件寫入用戶名和密碼
    vi /etc/vsftpd/virtual_users.txt

提示:

  • 注意使用vi編輯指令,其中奇數(shù)行為用戶名,臨近的下一個偶數(shù)行為密碼,創(chuàng)建container時參數(shù)未加入用戶名和密碼,系統(tǒng)會默認(rèn)創(chuàng)建admin和隨機(jī)密碼.

  • 添加新用戶的文件夾,以用戶名命名
    mkdir -p /home/vsftpd/<新用戶名>

  • hash處理登錄的驗證信息并寫入數(shù)據(jù)庫
    /usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

  • 退出container
    exitCtrl+D

  • 重啟container
    docker restart vsftpd

  • 驗證ftp
    ftp://<宿主機(jī)ip>

提示:

  • 一般新搭建的ftp里面的內(nèi)容為空,出現(xiàn)上圖結(jié)果即搭建成功


Docker常用命令

命令作用
docker search <鏡像名>搜索在線可用鏡像名
docker pull <鏡像名:tag>從官網(wǎng)拉取鏡像
docker images -a查詢所有的鏡像,默認(rèn)是最近創(chuàng)建的排在最上
docker ps查看正在運行的容器
docker ps -a查看所有容器
docker rmi -f <鏡像ID>刪除單個鏡像
docker start <容器名or ID>啟動某個容器
docker stop <容器名or ID>停止某個容器
docker kill <容器名or ID>殺掉某個容器
docker logs {容器ID或容器名稱}查詢某個容器的所有操作記錄。
docker commit <容器ID> <鏡像名稱>制作鏡像 使用以下命令,根據(jù)某個“容器 ID”來創(chuàng)建一個新的“鏡像”
docker run -d -p 58080:8080 --name javaweb wsl/javaweb:0.1 /root/run.sh啟動一個容器,其中-d:表示以“守護(hù)模式”執(zhí)行/root/run.sh腳本; -p:表示宿主機(jī)與容器的端口映射,此時將容器內(nèi)部的 8080 端口映射為宿主機(jī)的 58080 端口,這樣就向外界暴露了 58080 端口,可通過 Docker 網(wǎng)橋來訪問容器內(nèi)部的 8080 端口了。 -name:為容器命名
service docker start啟動docker服務(wù)的命令

參閱:


FTP管理

1. CMD訪問FTP

  • 調(diào)用ftp
    ftp

  • 訪問ftp服務(wù)器(其中需要輸入用戶名和密碼)
    open <宿主機(jī)ip>

  • 查看遠(yuǎn)程根目錄下文件情況,默認(rèn)為空
    ls

  • 上傳D盤test文件下的文件到ftp服務(wù)器(put或mput指令)
    lcd D:\test
    put a.txt

  • 再次查看
    lsdir

  • 下載ftp服務(wù)器的文件到D盤test文件下(get或mget指令)

單次下載
lcd D:\test
get test.zip

提示:

  • get <文件名1> <文件名2>等價于下載文件1并重命名為文件名2

批量下載
lcd D:\test
mget a.txt test.zip

提示:

  • 默認(rèn)情況下,prompt是打開的;在傳輸多個文件期間,ftp 的提示將允許您選擇性地檢索或存儲文件;如果 prompt 是關(guān)閉的,則 mget 和 mput 將傳輸所有文件

  • prompt關(guān)閉/開啟prompt,一般選擇關(guān)閉

  • cmd的ftp命令行

help

部分命令

參閱:


2. Ubuntu訪問FTP

  • 與第一種CMD訪問是基本一樣的.

Q&A
第一種情況

Q:ls/dir無法使用

A:passive


3. FTP客戶端訪問FTP

  • Filezilla

  • Xftp

  • Winscp

  • .......


優(yōu)化FTP

注意:

  • 修改完后重啟vsftpd服務(wù)

  • docker restart vsftpd

1. 支持中文字符集

  • 進(jìn)入docker的vsftpd容器
    docker exec -i -t vsftpd bash
    vi /etc/profile

export LANG=en_US.utf8

source /etc/profile

參閱:

2. 允許 FTP 匿名登陸

vi /etc/vsftpd/vsftpd.conf

3. 設(shè)置歡迎詞,最大連接數(shù)

vi /etc/vsftpd/vsftpd.conf

##  歡迎詞
ftpd_banner=welcome to here!  
##  最大同時訪問用戶數(shù)
Max_clients=50     

4. 添加用戶到黑名單中

vi /etc/vsftpd/ftpusers

<userName>

默認(rèn)

5. 只允許user_list的用戶登錄

第一種
vi /etc/vsftpd/vsftpd.conf

userlist_deny=NO

vi /etc/vsftpd/user_list

<userName>

第二種
vi /etc/vsftpd/vsftpd.conf

userlist_deny=NO
userlist_file=/etc/ftpuser/user_list

vi /etc/ftpuser/user_list

<userName>

默認(rèn)

6. 限速

vi /etc/vsftpd/vsftpd.conf

##  注冊的用戶下載速度 200k 
Local_max_rate=200000 
##  匿名用戶下載速度20K
Anon_max_rate=20000 

7. 因人限速

vi /etc/vsftpd/vsftpd.conf

##  用戶的配置文件
User_config_dir=/etc/vsftpd

vi /etc/vsftpd/user1

 Local_max_rate = 3000

vi /etc/vsftpd/user2

Local_max_rate = 30000

提示:

  • user1和user2需要添加到virtual_users.txt并存儲到數(shù)據(jù)庫中

  • vi /etc/vsftpd/virtual_users.txt

  • /usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

8. 建立虛擬的用戶可以登陸 FTP ,但不能登陸我的 linux 系統(tǒng)【待認(rèn)證】

  • 建立虛擬用戶
    vi /etc/vsftpd/virtual_users.txt

  • 生產(chǎn)vsftpd 的認(rèn)證數(shù)據(jù)庫
    /usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

  • 改數(shù)據(jù)庫權(quán)限
    chmod 600 /etc/vsftpd/virtual_users.db

  • 虛擬用戶及所要訪問的目錄并設(shè)置相應(yīng)的權(quán)限

vi /etc/vsftpd/vsftpd.conf
guest_enable=YES
anon_world_readable_only=NO

9. 虛擬用戶管理

user1 有瀏覽目錄、上傳、改名、刪除等權(quán)限
user2 有瀏覽目錄、上傳權(quán)限
user3 有瀏覽目錄、下載的權(quán)限(且只能在 /misc/abc 目錄下,速度為 20k )

  • 編輯 vsftpd 的主配置文件
    vi /etc/vsftpd/vsftpd.conf

User_config_dir=/etc/vsftpd

user1
vi /etc/vsftpd/user1

// 開放讀的權(quán)限(如果沒有添加此項,用戶看到的目錄是隱藏的)      
Anon_world_readable_only=NO
Anon_upload_enable=YES 
Anon_mkdir_write_enable=YES 
Anon_other_write_enable=YES 

user2
vi /etc/vsftpd/user2

// 開放讀的權(quán)限(如果沒有添加此項,用戶看到的目錄是隱藏的) 
Anon_world_readable_only=NO    
Anon_upload_enable=YES

user3
vi /etc/vsftpd/user3

// 開放讀的權(quán)限(如果沒有添加此項,用戶看到的目錄是隱藏的) 
Anon_world_readable_only=NO   
// 設(shè)置目錄為本地
Local_root=/misc/abc
Anon_max_rate=20000 

10. 設(shè)置匿名的用戶可以上傳以及刪除的權(quán)限

vi /etc/vsftpd/vsftpd.conf

Anon_upload_enable=YES 
Anon_mkdir_write_enable=YES 
Anon_other_write_enable=YES
  • 改變 pub 目錄的權(quán)限
    chmod - R 777 /var/ftp/pub

參閱:

11. 定義ftp網(wǎng)頁樣式【待解決】

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多