Linux運維學習之一 ftp伺服器搭建

2021-07-28 02:46:20 字數 3103 閱讀 6691

rsvnc協議:遠端同步協議

ftp協議:檔案傳輸協議

基於tcp的套接子的監聽於21.

此協議在使用過程中建立兩個通道,乙個為命令通道,乙個偽資料通道。

命令通道從建立一直道結束,資料通道會在傳輸前建立,傳輸完畢後斷開,下次在建立與斷開。

客戶端:在命令通道的埠上+1找到乙個空閒的埠,鏈結伺服器端的隨機埠。

傳輸格式:

文字格式

二進位制資料流

service:

proftpd

pureftp

vsftpd: redhat add centos自帶,安全行比較好,功能不太多

servu:位於win上的

client:

gui:

gftp

cli:命令列模式

ftp,lftp

使用者認證:

系統使用者:

虛擬使用者:檔案位置:hash和mysql

匿名使用者

資料傳輸安全:

軟體檔案:

/etc/pam.d/vsftpd:認證檔案

pam:外掛程式式認證模組

模組:/lib64/security/pam*.so

配置檔案:/etc/pam.conf和/etc/pam.d/*

/etc/vsftpd/vsftpd.conf:主配置檔案

/var/ftp/pub:資料共享

主配置檔案:

anonymous_enable=yes 匿名登入

local_enable=yes 本地使用者登入

將本地使用者禁錮在家目錄,以家目錄偽跟,禁錮所有使用者。

chroot_local_user=

可以將某些使用者禁錮在自己的家目錄下:

chroot_list_enable= 啟用列表

chroot_list_file=/etc/vsftpd/chroot_list 此檔案中為要禁錮在家目錄下的使用者。

匿名使用者配置:

anonymous_enabke=yes|no 是否進行匿名登入

anon_upload_enable=yes|no 是否可以進行上傳

anon_other_write_enable=yes|no 是否能夠刪除等檔案

anon_mkdir_write_enable=yes|no 是否能夠建立目錄

注意:在啟用寫的功能時,ftp使用者能福進行寫的許可權,完全取決與檔案系統許可權和服務許可權的交集。

配置登入ftp伺服器的歡迎語

banner_file=filenamme

或ftpd_banner=歡迎語

若上述兩者都配置了,banner_file有效

限制使用者登入

第一種:/etc/vsftpd/ftpusers中的使用者不允許登入

第二種:/etc/vsftpd/user_list有兩中功能

1,黑名單

配置檔案中

userlist_enable=yes

userlist_deny=yes;

2,白名單

userlist_enable=yes

userlist_deny=no

max_clients:最大併發鏈結數

max_per_ip:每個ip的鏈結請求數

傳輸速率:

anon_max_rate:匿名使用者的最大傳輸速率,單位為位元組每秒

local_max_rate:

上檔案的許可權:

anno_umask;匿名使用者

local_umask:本地使用者

匿名使用者上傳檔案的屬主屬組:

chown_uplodd=yes

chown_username=user_name

虛擬使用者:

每乙個虛擬使用者會對映乙個系統使用者,訪問的檔案目錄為系統的家目錄

基於關係型資料庫的認證

1,編譯安裝pam_mysql或者yum

2,./confingur --with-mysql=mysql安裝路徑 --with-openssl

3,make && make install

4,準備虛擬使用者

a,建立資料庫

b,給某一使用者賦予新建立資料庫的全部許可權

c,建立表id,name,passwd

d,建立使用者

5,配置檔案:

在/etc/pam.d/下建立vsfypd_mysql檔案

加入:auto required /lib/sercurity/pam_mysql.so(庫檔案) user="mysql_user" passwd=「user_passwd」 host=「mysql_host」 db=「database」 table=」表" usercolumn=」使用者名字端" passwdcolumn="密碼字段" mcrypt=0(表示不加密)

account require 與上述配置一樣

配置/etc/vsftpd.conf確保以下啟用

anonymous_enable=yes

local_enable=yes

write_enable=yes

anon_uplocad_enable=no

anon_mkdir_write_enable=no

chroot_local_user=yes

新增一下選項:

guest_enable=yes

guest_username=yes

pam_service_name=在/etc/pam.d/下建立vsfypd_mysql檔案

6,建立虛擬使用者對映系統使用者

useradd -s /sbin/nologin -d /var/ftproot(對映使用者家目錄) username

chmod go+rx 家目錄

7,虛擬使用者設定不同的許可權:

在vsftpd的配置檔案中新增

user_config_dir=/etc/vsftpd/dir_name

在/ect/vsftpd/dir_name目錄下建立檔案

touch 虛擬使用者名稱

加入許可權

anon_upload_enable=yes //此時虛擬使用者只有上傳許可權

Linux運維學習筆記之一 運維的原則和學習方法

一 簡單 易用 高效 二 修改前做備份 1 以便回滾 2 以便事後比對改過的內 三 最小化原則 1 安裝系統最小化 2 開啟服務最小化 3 操作最小化 rm fr test.txt 多了r,只是刪除檔案,應為rm f test.txt 4 登陸最小化 平時沒有需求不用root登入,要用普通使用者登入...

運維核心之一 CMDB

現在行行用電腦,處處需網路,做個判斷還得需要大資料。任何乙個公司,必須要有乙個強大的it支撐。現在每乙個企業隨著業務的發展,it也東西也越來越多,突然有一天,你發現it環境越發的複雜。工作量越來越大。於是,我們就開始想,以不能少讓人幹點活兒,大家紛紛走上運維自動化的道路了。可是如何走上自動化運維的道...

linux運維學習筆記一

一 磁碟命令 df h 檢視磁碟空間 free h 檢視記憶體使用情況 二 檔案命令 head 檔名 檢視檔案前n行 tail f 檔名 動態檢視檔案 檢視檔案後n行 less 檔名 more 檔名 wc 檔名 統計檔案資訊 du sh 檢視檔案或目錄占用磁碟空間大小 find name type ...