溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

發(fā)布時(shí)間:2020-04-14 01:05:06 來(lái)源:網(wǎng)絡(luò) 閱讀:6925 作者:chenshengang 欄目:系統(tǒng)運(yùn)維

                          vsftpd在企業(yè)網(wǎng)中的實(shí)施案例

環(huán)境:

       VMware workstation 10

       centos6.4操作系統(tǒng)

SFTP是一個(gè)基于GPL發(fā)布的類Unix系統(tǒng)上使用的FTP服務(wù)器軟件,它的全稱是Very Secure FTP.

安全性是編寫VSFTP的初衷,除了這與生俱來(lái)的安全特性以外,高速與高穩(wěn)定性也是VSFTP的兩個(gè)重要特點(diǎn)。

在速度方面,使用ASCII代碼的模式下載數(shù)據(jù)時(shí),VSFTP的速度是Wu-FTP的兩倍,如果Linux主機(jī)使用2.4.*的內(nèi)核,在千兆以太網(wǎng)上的下載速度可達(dá)86MB/S。

在穩(wěn)定方面,VSFTP就更加的出色,VSFTP在單機(jī)(非集群)上支持4000個(gè)以上的并發(fā)用戶同時(shí)連接,根據(jù)Red Hat的Ftp服務(wù)器的數(shù)據(jù),VSFTP服務(wù)器可以支持15000個(gè)并發(fā)用戶


安裝vsftp


[root@localhost ~]# rpm -qa |grep ftp

gvfs-obexftp-1.4.3-15.el6.i686

[root@localhost ~]# mount /dev/cdrom /media/cdrom

mount: block device /dev/sr0 is write-protected, mounting read-only

可以查看這個(gè)包的信息

[root@localhost Packages]# rpm -qip gvfs-obexftp-1.4.3-15.el6.i686.rpm


安裝服務(wù)端


[root@localhost Packages]# rpm -ivh /media/cdrom/Packages/vsftpd-2.2.2-11.el6_3.1.i686.rpm

Preparing...                ########################################### [100%]

 1:vsftpd                 ########################################### [100%]


安裝有關(guān)客戶端 (該實(shí)驗(yàn)也可以在相同主機(jī)上)

[root@localhost Packages]# ll  /media/cdrom/Packages/ |grep ftp

-r--r--r--. 2 root root    56856 Nov  9  2012 ftp-0.17-53.el6.i686.rpm

-r--r--r--. 2 root root    72784 Jul 31  2012 gvfs-obexftp-1.4.3-15.el6.i686.rpm

-r--r--r--. 2 root root   752916 Jul  2  2011 lftp-4.0.9-1.el6.i686.rpm

-r--r--r--. 2 root root    31508 Sep 25  2011 tftp-0.49-7.el6.i686.rpm

-r--r--r--. 2 root root    39276 Sep 25  2011 tftp-server-0.49-7.el6.i686.rpm

-r--r--r--. 2 root root   160540 Feb 19  2013 vsftpd-2.2.2-11.el6_3.1.i686.rpm


[root@localhost Packages]# rpm -ivh /media/cdrom/Packages/ftp-0.17-53.el6.i686.rpm

Preparing...                ########################################### [100%]

 1:ftp                    ########################################### [100%]

[root@localhost Packages]# rpm -ivh /media/cdrom/Packages/lftp-4.0.9-1.el6.i686.rpm

Preparing...                ########################################### [100%]

 1:lftp                   ########################################### [100%]


新增加一塊硬盤sdb


Disk identifier: 0x000238d5


 Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1          39      307200   83  Linux

Partition 1 does not end on cylinder boundary.

/dev/sda2              39        1175     9128960   83  Linux

/dev/sda3            1175        1306     1048576   82  Linux swap / Solaris


Disk /dev/sdb: 1073 MB, 1073741824 bytes

255 heads, 63 sectors/track, 130 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000


在新加的磁盤能看到之后,接下來(lái)分別是分區(qū),格式化,和掛載(臨時(shí)或永久性)編輯/etc/fstab

[root@localhost ~]# vim /etc/fstab

如圖表示/dev/sdb1/  掛載到mnt/part1 文件類型為自動(dòng)識(shí)別,并且以u(píng)srquota來(lái)指明啟動(dòng)文件系統(tǒng)時(shí)支持磁盤配額模式。0 0 表示參數(shù)默認(rèn) 0表示dump(備份)頻率。0表示不備份,1表示每天,2表示不定期

另一個(gè)0表示是否進(jìn)行fsck的開機(jī)磁盤完整性檢查


vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


然后當(dāng)我們以-a參數(shù)掛載時(shí),此文件會(huì)被主動(dòng)測(cè)試掛載(auto參數(shù)作用)

[root@localhost ~]# mkdir /mnt/part1

[root@localhost ~]# mount -a

因?yàn)橐谠摯疟P上做磁盤配置,所以要生成磁盤配額文件,我們可能要先安裝配額產(chǎn)生要用的命令包


[root@localhost part1]# rpm -qa |grep quota

quota-3.17-18.el6.i686

先關(guān)閉selinux否則會(huì)報(bào)錯(cuò):如下


quotacheck: Cannot create new quotafile /mnt/part1/aquota.user.new: Permission denied

quotacheck: Cannot initialize IO on new quotafile: Permission denied

[root@localhost part1]# ll

total 12

drwx------. 2 root root 12288 Feb 15 01:29 lost+found


[root@localhost part1]# cd

[root@localhost ~]# cd /mnt/part1

[root@localhost part1]# setenforce 0


[root@localhost part1]# quotacheck -augvc

-a表示該盤中所有的(所以要在相關(guān)分區(qū)的掛載點(diǎn)下執(zhí)行),-u計(jì)算用戶在該盤所占的空間,-g計(jì)算組的,-v詳細(xì)信息,-c忽略原有的


quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quota to avoid running quotacheck after an unclean shutdown.

quotacheck: Scanning /dev/sdb1 [/mnt/part1] done

quotacheck: Cannot stat old user quota file: No such file or directory

quotacheck: Old group file not found. Usage will not be substracted.

quotacheck: Checked 3 directories and 2 files

quotacheck: Old file not found.

[root@localhost part1]# ll

total 19

-rw-------. 1 root root  6144 Feb 15 03:18 aquota.user

drwx------. 2 root root 12288 Feb 15 01:29 lost+found


因aquota.user為二進(jìn)制文件所以,我們想編輯他的話要用額外命令來(lái)編輯它,edquota -u 表示針對(duì)某一個(gè)用戶的, -g某一個(gè)組的,-p表示拷貝


[root@localhost part1]# useradd user1

[root@localhost part1]# passwd user1

Changing password for user user1.

New password:

BAD PASSWORD: it is too short

BAD PASSWORD: is too simple

Retype new password:

passwd: all authentication tokens updated successfully.

[root@localhost ~]# edquato -u user1

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

如圖中所示該文件中的soft表示軟件限制,即它是警告級(jí)別的限制,達(dá)到該值時(shí),用戶每次登錄時(shí)都會(huì)收到警告,而hard為硬件限制,即達(dá)到該值時(shí)硬盤會(huì)自動(dòng)鎖住,而一般系統(tǒng)在出現(xiàn)soft警告時(shí)會(huì)出現(xiàn)一個(gè)grace time,一般為7天,7天未做處理也會(huì)鎖住,如圖分別有blocks 限制和inodes限制

blocks 為0表示已用的塊為0 inodes也是


[root@localhost part1]# useradd user2

[root@localhost part1]# passwd user2

Changing password for user user2.

New password:

BAD PASSWORD: it is too short

BAD PASSWORD: is too simple

Retype new password:

passwd: all authentication tokens updated successfully.

[root@localhost part1]# edquota -p user1 -u user2

[root@localhost part1]# edquota -u user2


[root@localhost part1]# quotaon /dev/sdb1

加入開機(jī)自動(dòng)檢測(cè)中

[root@localhost part1]# echo "quotaon  /dev/sdb1" >>/etc/rc.d/rc.local


[root@localhost part1]# mkdir public

[root@localhost part1]# ll

total 22

-rw-------. 1 root root  7168 Feb 15 04:10 aquota.user

drwx------. 2 root root 12288 Feb 15 01:29 lost+found

drwxr-xr-x. 2 root root  1024 Feb 15 04:15 public


當(dāng)我們新建一個(gè)目錄時(shí)默認(rèn)的本地權(quán)限中其他人(other)就是沒(méi)有寫入權(quán)限的,所以,接下來(lái)我們要做的就是怎么講public作為匿名登錄的目錄


[root@localhost part1]# vim /etc/vsftpd/vsftpd.conf

改為如圖內(nèi)容


vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


[root@localhost part1]# service vsftpd restart

Shutting down vsftpd:                                      [  OK  ]

Starting vsftpd for vsftpd:                                [  OK  ]

[root@localhost part1]# cd ./public/

[root@localhost public]# touch f1.txt

[root@localhost public]# touch f2.txt


[root@localhost public]# setenforce 0

[root@localhost public]# service iptables stop

iptables: Flushing firewall rules:                         [  OK  ]

iptables: Setting chains to policy ACCEPT: filter          [  OK  ]

iptables: Unloading modules:                               [  OK  ]



在ftp的ftpuser和user_list文件中也可以編輯和登錄用戶有關(guān)的權(quán)限設(shè)置,在tcp_wrapper上做來(lái)源控制(vim /etc/hosts.allow,/etc.hosts.deny)


將用戶的默認(rèn)登錄目錄改為該用戶的家目錄

[root@localhost home]# mv user1 /mnt/part1/

[root@localhost home]# mv user2 /mnt/part1/

[root@localhost home]# vim /etc/passwd

[root@localhost home]# cd /mnt/part1/

[root@localhost part1]# mkdir ./home

[root@localhost part1]# mv user1 user2 ./home


登錄測(cè)試,如圖(注意此時(shí)即使是在本機(jī)上登錄,如果是使用ip登錄,而不是回環(huán)地址的話,一樣是登錄不上的,這是默認(rèn)設(shè)置的原因)

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

有關(guān)命令

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

無(wú)寫入權(quán)限

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

[root@localhost home]# useradd -D

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

[root@localhost home]# useradd -D -b /mnt/part1/home

[root@localhost home]# useradd user3

[root@localhost home]# grep user3 /etc/passwd

user3:x:503:504::/mnt/part1/home/user3:/bin/bash


vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

這樣以后新加的用戶就會(huì)自動(dòng)將家目錄移至以上所示目錄下,并默認(rèn)登錄到這

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)



測(cè)試磁盤配額

因?yàn)榍懊嬖O(shè)置的只有10M(實(shí)際達(dá)不到10M),所以我們很容易看到磁盤的限額情況

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


還要把這個(gè)文件刪除,以留出空間測(cè)試后面的,所以再用dd產(chǎn)生文件要在其他目錄下

其他結(jié)果及步驟如下

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)



以管理員身份查看磁盤配額

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


[root@localhost public]# vim /etc/vsftpd/vsftpd.conf

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


[root@localhost public]# service vsftpd restart

Shutting down vsftpd:                                      [  OK  ]

Starting vsftpd for vsftpd:                                [  OK  ]


[root@localhost public]# dd if=/dev/zero of=f3 bs=1M count=1

1+0 records in

1+0 records out

1048576 bytes (1.0 MB) copied, 0.0178166 s, 58.9 MB/s

[root@localhost public]# mv f3 ../home/user1

[root@localhost public]# cd /tmp

[root@localhost tmp]# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220 (vsFTPd 2.2.2)

Name (127.0.0.1:root): user1

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> dir

227 Entering Passive Mode (127,0,0,1,127,184).

150 Here comes the directory listing.

-rw-r--r--    1 0        0         1048576 Feb 16 02:09 f3

226 Directory send OK.

ftp> get f3

local: f3 remote: f3

227 Entering Passive Mode (127,0,0,1,116,177).

150 Opening BINARY mode data connection for f3 (1048576 bytes).

226 Transfer complete.

1048576 bytes received in 0.998 secs (1050.89 Kbytes/sec)



[root@localhost public]# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220 (vsFTPd 2.2.2)

Name (127.0.0.1:root): anonymous

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> get f3

local: f3 remote: f3

227 Entering Passive Mode (127,0,0,1,149,174).

150 Opening BINARY mode data connection for f3 (131072 bytes).

226 Transfer complete.

131072 bytes received in 0.656 secs (109.79 Kbytes/sec)


最大連接數(shù)測(cè)試(3)如圖

[root@localhost public]# vim /etc/vsftpd/vsftpd.conf

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

[root@localhost public]# service vsftpd restart

Shutting down vsftpd:                                      [  OK  ]

Starting vsftpd for vsftpd:                                [  OK  ]

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


每個(gè)ip的最大連接數(shù)測(cè)試(2)如下

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

[root@localhost public]# ftp 192.168.2.199

Connected to 192.168.2.199 (192.168.2.199).

421 There are too many connections from your internet address.

ftp> bye


支持配置目錄的概念(針對(duì)每一個(gè)用戶),在里面的針對(duì)用戶的配置,將覆蓋先前的系統(tǒng)配置,如annoymous

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)

[root@localhost public]# cd /etc/vsftpd/

[root@localhost vsftpd]# mkdir dir

[root@localhost vsftpd]# vim ./dir

[root@localhost vsftpd]# cd ./dir

[root@localhost dir]# vim user1

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


[root@localhost dir]# vim user2

vsftpd在企業(yè)網(wǎng)中的實(shí)施案例(CentOS)


[root@localhost tmp]# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220 (vsFTPd 2.2.2)

Name (127.0.0.1:root): user2

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> dir

227 Entering Passive Mode (127,0,0,1,146,163).

150 Here comes the directory listing.

-rw-r--r--    1 0        0          131072 Feb 16 05:04 f3

226 Directory send OK.

ftp> get f3

local: f3 remote: f3

227 Entering Passive Mode (127,0,0,1,147,100).

150 Opening BINARY mode data connection for f3 (131072 bytes).

226 Transfer complete.

131072 bytes received in 33.4 secs (3.93 Kbytes/sec)

ftp> bye


[root@localhost tmp]# rm f3 (注意磁盤空間)

rm: remove regular file `f3'? y


[root@localhost tmp]# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220 (vsFTPd 2.2.2)

Name (127.0.0.1:root): user2

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> dir

227 Entering Passive Mode (127,0,0,1,183,105).

150 Here comes the directory listing.

-rw-r--r--    1 0        0          131072 Feb 16 05:04 f3

226 Directory send OK.

ftp> get f3

local: f3 remote: f3

227 Entering Passive Mode (127,0,0,1,173,103).

150 Opening BINARY mode data connection for f3 (131072 bytes).

226 Transfer complete.

131072 bytes received in 0.0655 secs (2000.89 Kbytes/sec)

ftp> bye


還可以通過(guò)上述配置文件來(lái)界定被動(dòng)訪問(wèn)的最小最大端口(便于防火墻的端口控制)

pasv_max_port=

pasv_min_port=


知識(shí)補(bǔ)充:

(比特(bit,簡(jiǎn)稱b也叫位),8個(gè)bit一組構(gòu)成1個(gè)byte(叫字節(jié))。一般鍵盤上的每個(gè)字符占用2個(gè)字節(jié),一個(gè)漢字一般占用4個(gè)字節(jié)。再往上就是1024進(jìn)位了,1024字節(jié)=1kb

1024kb=1mb

1024mb=1G  

注意:MiB和MB,KiB和KB等的區(qū)別:

1KB(kilobyte)=1000byte,    1KiB(kibibyte)=1024byte

1MB(megabyte)=1000000byte, 1MiB(mebibyte)=1048576byte


硬盤生產(chǎn)商是以GB(十進(jìn)制,即10的3次方=1000,如1MB=1000KB)計(jì)算的,而電腦(操作系統(tǒng))是以GiB(2進(jìn)制,即2的10次方,如1MiB=1024KiB)計(jì)算的,但國(guó)內(nèi)用戶一般理解為1MB=1024KB, 所以為了便于中文化的理解,翻譯MiB為MB也是可以的。

同樣根據(jù)硬盤廠商與用戶對(duì)于1MB大小的不同理解,所以好多160G的硬盤實(shí)際容量按計(jì)算機(jī)實(shí)際的1MB=1024KB算都不到160G,這也可以解釋為什么新買的硬盤“缺斤短兩”并沒(méi)有它所標(biāo)示的那么大。

寬帶網(wǎng)絡(luò)中,運(yùn)營(yíng)商們所說(shuō)的1M帶寬是指1Mbps(megabits per second,兆比特每秒)。bps是bit per Second的縮寫,也就是每秒多少“位”(bit)的意思。是用來(lái)計(jì)算資料傳輸速率的單“位”。舉例來(lái)說(shuō),電信局通常說(shuō)的1M的寬,所使用的單位就是bps,我們都知道一個(gè)字節(jié)等于8位,而我們電腦的存儲(chǔ)單位使用的是字節(jié),也就是理論上每秒可以向硬盤下載1X1024/8=128KB/sec的數(shù)據(jù)。但這也只是理論上的速度。實(shí)際上則要再扣約12%的數(shù)據(jù)頭信息(包Ethernet Header,IP Header,TCP Header,ATM Header等),各種各樣的控制訊號(hào)。所以傳輸速度上限應(yīng)112KB/sec左右,而不應(yīng)該望文生義地理解為“每秒鐘可以傳送1M字節(jié)的數(shù)據(jù)。所以千萬(wàn)不要迷信廣告,傳輸單位的寫法上,B和b分別代表Bytes和bits,兩者定義不同,差距是8倍)


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI