bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

十、FTP服務器配置和管理-創新互聯

10.1、FTP服務簡介

創新互聯建站主營尼開遠網站建設的網絡公司,主營網站建設方案,App定制開發,尼開遠h5成都微信小程序搭建,尼開遠網站營銷推廣歡迎尼開遠等地區企業咨詢

 FTP是Internet上使用非常廣泛的一種通信協議,用于在不同的主機之間進行文件傳輸。Linux系統下常用的FTP服務器軟件包括有wu-ftpd;vsftpd(Very Secure ftp Daemon);proftpd;pureftpd等。客戶端軟件有

 CLI:ftp;lftp;(wget ,lftpget)下載工具,非交互式

 GUI: gftpd ;FlashFXP;Cuteftp;Filezilla

 FTP采用C/S的工作模式,通過TCP協議建立客戶端和服務器之間的連接。但與其他大多數的應用協議不同,FTP協議在客戶端和服務器之間建立了兩套通信鏈路,分別是控制鏈路和數據鏈路。其中,控制鏈路負責FTP會話過程中FTP命令的發送和接收,數據鏈路則負責數據的傳輸。FTP客戶端與服務器之間的通信過程如下所示:

1、用戶使用FTP協議的客戶機程序,連接到遠程的FTP服務器程序上

2、用戶使用客戶端程序進行FTP文件的上傳或下載,FTP客戶端程序通過控制鏈路向FTP發送相應的控制命令

3、服務器程序接收并執行用戶所發出的命令

4、FTP服務器將執行結果返回到客戶端

 默認情況下,FTP服務器程序使用兩個預分配端口號20和21,分別用于傳輸數據鏈路和控制鏈路。但是傳輸數據又可以分為主動模式與被動模式,其數據傳輸端口有所不同。

 主動模式工作的原理:FTP客戶端連接到FTP服務器的21端口,發送用戶名和密碼登錄,登錄成功后要list列表或者讀取數據時,客戶端隨機開放一個端口(1024以上),發送PORT命令到FTP服務器 ,告訴服務器客戶端采用主動模式并開放端口;FTP服務器收到PORT主動模式命令和端口號后,通過服務器的20端口和客戶端開放的端口連接,發送數據,原理如下圖:

十、FTP服務器配置和管理

 被動模式工作原理:FTP客戶端連接到FTP服務器的21端口,發送用戶名和密碼登錄,登錄成功后要list列表或者讀取數據時,發送PASV命令到FTP服務器, 服務器在本地隨機開放一個端口(1024以上 ),然后把開放的端口告訴客戶端,客戶端再連接到服務器開放的端口進行數據傳輸,原理如下圖:

十、FTP服務器配置和管理

參考:https://my.oschina.net/binny/blog/17469

 10.2、vsftpd服務器的安裝與配置

 vsftpd可以通過rpm包或者源碼安裝,通過rpm安裝只需使用yum命令即可,這里介紹源碼安裝。其官方地址為http://vsftpd.beasts.org/,這里以3.0.2版本介紹vsftpd的安裝與配置。

文件的組成:

/etc/vsftpd: 配置文件目錄

/etc/rc.d/init.d/vsftpd: 服務腳本

/usr/sbin/vsftpd: 主程序

/var/ftp:數據文件目錄(匿名用戶訪問目錄)

/etc/pam.d/vsftpd: 認證文件 pam(Plugable Authentication Module)插件式認證模塊

 模塊化庫文件:/lib64/security/pam*.so

 認證配置文件:/etc/pam.conf和/etc/pam.d/*

基本配置:/etc/vsftpd/vsftpd.conf

[root@mylinux vsftpd-3.0.2]# useradd nobody              #默認配置需要使用的用戶 [root@mylinux vsftpd-3.0.2]# mkdir /usr/share/empty      #默認配置需要使用的目錄 [root@mylinux vsftpd-3.0.2]# mkdir /var/ftp              #匿名用戶需要使用的目錄 [root@mylinux vsftpd-3.0.2]# useradd -d /var/ftp/ ftp [root@mylinux vsftpd-3.0.2]# chown root.root /var/ftp/ [root@mylinux vsftpd-3.0.2]# chmod  og-w /var/ftp/ [root@mylinux app]# tar xf vsftpd-3.0.2.tar.gz  [root@mylinux app]# cd vsftpd-3.0.2 [root@mylinux vsftpd-3.0.2]# make && make install [root@mylinux vsftpd-3.0.2]# cp vsftpd.conf /etc/         #復制配置文件到
  • 啟動和關閉vsftpd

 vsftpd支持兩種啟動方式:xinetd和standalone。其中,xinetd是通過xinetd進程來啟動和關閉vsftpd服務,這是vsftpd默認啟動方式。standalone方式則是采用獨立進程啟動和關閉,與普通程序的啟動方式一樣。

xinetd方式:

 采用這種方式時,vsftpd不能單獨管理,當vsftpd需要重啟時,也必須重啟整個xinetd服務器。

standalone方式:

 使用這種方式時,vsftpd服務將作為單獨的進程來啟動和關閉,配置standalone啟動方式步驟為:

[root@mylinux vsftpd-3.0.2]# vim /etc/xinetd.d/vsftpd   #將diabale選項改為yes     service ftp     {             socket_type             = stream             wait                    = no             user                    = root             server                  = /usr/local/sbin/vsftpd     #       server_args             =     #       log_on_success          += DURATION USERID     #       log_on_failure          += USERID             nice                    = 10             disable                 = yes     } [root@mylinux vsftpd-3.0.2]# vim /etc/vsftpd.conf             #指定standalone啟動方式     listen=YES [root@mylinux vsftpd-3.0.2]# chkconfig vsftpd --level 3 off   #關閉自啟動服務 [root@mylinux vsftpd-3.0.2]# /usr/local/sbin/vsftpd &         #啟動 [1] 1926

登錄ftp:

[root@mylinux vsftpd-3.0.2]# ftp localhost       #登錄本機 Trying ::1... ftp: connect to address ::1Connection refused Trying 127.0.0.1... Connected to localhost (127.0.0.1). 220 (vsFTPd 3.0.2) Name (localhost:root): anonymous                 #匿名用戶登錄 331 Please specify the password. Password:                                        #輸入密碼,匿名用戶可以無需密碼 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 227 Entering Passive Mode (127,0,0,1,143,37). 150 Here comes the directory listing. 226 Directory send OK. ftp> quit                                        #退出 221 Goodbye. [root@mylinux vsftpd-3.0.2]#
  • vsftpd.conf配置文件

  vsftpd服務器的配置主要通過其主配置文件/etc/vsftpd.conf來完成。該文件以'#'作為注釋,每個選項一行,格式為'選項=值'。

常用選項:

匿名用戶的配置:

 anonymous_enable=YES登陸權限

 anon_upload_enable=YES上傳權限

 anon_other_write_enable=YES刪除權限

 anon_mkdir_write_enable=YES創建目錄

 啟用寫入功能時,ftp用戶對相應的本地文件系統也有相應的寫入權限;生效的權限取決于文件系統權限和服務權限的交集。

禁錮用戶于其家目錄中:

 chroot_local_user={Yes|No}

 chroot_list_enable={YES|NO}         只禁錮列表中的用戶在家目錄

 chroot_list_file=/etc/vsftpd/chroot_list   禁錮用戶列表

歡迎信息的定義:

 ftp_banner=some string

  或者banner_file=/path/to/some_banner_file(文件中寫歡迎信息)

 dirmessage_enable=yes(切換目錄時,目錄下的歡迎信息)

  在ftp可訪問的目錄下創建.messages文件

控制登錄用戶的機制:

 /etc/vsftpd/ftpusers中的用戶都不允許使用ftp服務, 這是在/etc/pam.d/vsftpd中定義。

user_list配置文件有兩種用法:

 黑名單:

  userlist_enable=YES

   userlist_deny=YES

 白名單:

  userlist_enable=YES

  userlist_deny=NO

連接限制:

 max_clients: 大并發連接數

 max_per_ip: 每IP可同時發起并發請求

傳輸速率:

 anon_max_rate: 匿名用戶的大傳輸速率,單位是“字節/秒”;

 local_max_rate: 本地用戶的大傳輸速率,單位是“字節/秒”

上傳文件的umask:

 anno_umask: 匿名用戶上傳文件的umask;

 local_umask: 本地用戶上傳文件的umask;

修改匿名用戶上傳文件的屬主和屬組:

 chown_uploads=YES

 chown_username=someuser

ftp的系統用戶:

 匿名用戶 --> 系統用戶: anonymous_enable

 系統用戶:local_enable

 虛擬用戶:所有的虛擬用戶會映射會一個系統用戶,訪問時的文件目錄是為此系統用戶的家目錄。

用戶的存放位置:

 hash編碼的文件:奇數行為用戶名,偶數行為密碼

 關系型數據庫:pam-mysql實現認證

10.2、vsftpd基于pam-mysql的認證方式

1、安裝mysql和pam_mysql

[root@localhost home]# yum -y install vsftpd mysql-server mysql-devel pam_mysql

2、準備數據庫及相關表

mysql> create database vsftpd; mysql> grant select on vsftpd.* to vsftpd@localhost identified by 'mylinux'; mysql> grant select on vsftpd.* to vsftpd@127.0.0.1 identified by 'mylinux'; mysql> flush privileges; mysql> use vsftpd; mysql> create table users (     -> id int AUTO_INCREMENT NOT NULL,     -> name char(20) binary NOT NULL,     -> password char(48) binary NOT NULL,     -> primary key(id)     -> );

3、添加測試的虛擬用戶,為了安全起見應該使用PASSWORD函數加密后存儲。

mysql> insert into users(name,password) values('tom',password('123456')); mysql> insert into users(name,password) values('jerry',password('123456'));

4、建立pam認證所需文件#vi /etc/pam.d/vsftpd.mysql

auth required /lib/security/pam_mysql.so user=vsftpd passwd=mylinux host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 account required /lib/security/pam_mysql.so user=vsftpd passwd=mylinux host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

 pam_mysql.so基于unix sock連接mysql服務器時可能會出問題,此時,建議授權一個可遠程連接的mysql并訪問vsftpd數據庫的用戶。

5、修改vsftpd的配置文件,使其適應mysql認證,建立虛擬用戶映射的系統用戶及對應的目錄

[root@localhost home]# useradd -s /sbin/nologin -d /var/ftproot vuser [root@localhost home]# chmod go+rx /var/ftproot

確保/etc/vsftpd.conf中已經啟用了以下選項

anonymous_enable=YES local_enable=YES write_enable=YES anon_upload_enable=NO anon_mkdir_write_enable=NO chroot_local_user=YES

而后添加以下選項

guest_enable=YES guest_username=vuser

并確保pam_service_name選項的值如下所示

pam_service_name=vsftpd.mysql

6、啟動vsftpd服務

[root@localhost home]# service vsftpd start Starting vsftpd for vsftpd: [  OK  ] [root@localhost home]# chkconfig vsftpd on

7、配置虛擬用戶具有不同的訪問權限

配置vsftpd為虛擬用戶使用配置文件目錄

# vim vsftpd.conf

添加

user_config_dir=/etc/vsftpd/vusers_config

創建所需要目錄,并為虛擬用戶提供配置文件

# mkdir /etc/vsftpd/vusers_config/ # cd /etc/vsftpd/vusers_config/ # touch tom jerry

 配置虛擬用戶的訪問權限,虛擬用戶對vsftpd服務的訪問權限是通過匿名用戶的相關指令進行的。如果需要讓tom用戶具有上傳文件的權限,可以修改/etc/vsftpd/vusers/tom文件,在里面添加如下選項即可。

anon_upload_enable={YES|NO} anon_mkdir_write_enable={YES|NO} anon_other_write_enable={YES|NO}

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

新聞標題:十、FTP服務器配置和管理-創新互聯
文章URL:http://vcdvsql.cn/article46/phohg.html

成都網站建設公司_創新互聯,為您提供小程序開發外貿建站關鍵詞優化域名注冊電子商務品牌網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站網頁設計