Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
隨著網(wǎng)絡(luò)的廣泛連接和數(shù)據(jù)的海量增長(zhǎng),我們面臨著越來越多的安全風(fēng)險(xiǎn)。
國(guó)家有關(guān)部門為了進(jìn)一步保護(hù)加強(qiáng)信息安全,在《中華人民共和國(guó)網(wǎng)絡(luò)安全法》中規(guī)定,網(wǎng)絡(luò)運(yùn)營(yíng)者應(yīng)當(dāng)按照網(wǎng)絡(luò)安全等級(jí)保護(hù)制度的要求,履行安全保護(hù)義務(wù),保障網(wǎng)絡(luò)免受干擾、破壞或者未經(jīng)授權(quán)的訪問,防止網(wǎng)絡(luò)數(shù)據(jù)泄露或者被竊取、篡改。
在等級(jí)保護(hù)規(guī)范《GBT 25070-2019 信息安全技術(shù)網(wǎng)絡(luò)安全等級(jí)保護(hù)安全設(shè)計(jì)技術(shù)要求》中,明確要求用戶數(shù)據(jù)完整性保護(hù),可采用常規(guī)校驗(yàn)機(jī)制,檢驗(yàn)存儲(chǔ)的用戶數(shù)據(jù)的完整性,以發(fā)現(xiàn)其完整性是否被破壞。
企業(yè)網(wǎng)站是企業(yè)的重要數(shù)字門戶,網(wǎng)頁(yè)防篡改正是為了防止網(wǎng)站內(nèi)容被惡意篡改破壞,確保網(wǎng)站數(shù)據(jù)的真實(shí)性和完整性,滿足等級(jí)保護(hù)用戶數(shù)據(jù)完整性保護(hù)要求。
同時(shí),網(wǎng)頁(yè)防篡改也有助于維護(hù)企業(yè)網(wǎng)站聲譽(yù)、保障業(yè)務(wù)正常運(yùn)行、避免法律責(zé)任。
網(wǎng)頁(yè)防篡改技術(shù)分析
網(wǎng)頁(yè)被篡改原因分析
網(wǎng)頁(yè)被篡改通常有以下幾種方式:
通過服務(wù)器漏洞: 攻擊者利用服務(wù)器操作系統(tǒng)或應(yīng)用程序(如 Web 服務(wù)器軟件)的安全漏洞,獲取對(duì)服務(wù)器的非法訪問權(quán)限,進(jìn)而修改網(wǎng)頁(yè)文件。
賬號(hào)密碼被竊?。? 如果網(wǎng)站管理員或相關(guān)賬號(hào)的密碼強(qiáng)度不夠或被泄露,攻擊者獲取到這些賬號(hào)后,可以登錄到后臺(tái)管理系統(tǒng)進(jìn)行網(wǎng)頁(yè)篡改。
惡意軟件感染: 服務(wù)器或網(wǎng)站所在的系統(tǒng)感染了惡意軟件,這些惡意軟件可能會(huì)修改網(wǎng)頁(yè)文件。
網(wǎng)絡(luò)連接被劫持: 攻擊者通過網(wǎng)絡(luò)劫持技術(shù),在數(shù)據(jù)傳輸過程中篡改網(wǎng)頁(yè)內(nèi)容。
內(nèi)部人員篡改: 網(wǎng)站內(nèi)部的工作人員由于各種原因,故意篡改網(wǎng)頁(yè)內(nèi)容。
要防止網(wǎng)頁(yè)被篡改,需要 加強(qiáng)服務(wù)器安全防護(hù)、定期更新軟件、使用強(qiáng)密碼、加強(qiáng)網(wǎng)絡(luò)安全監(jiān)控 等措施。
網(wǎng)頁(yè)防篡改主流方案
對(duì)于已經(jīng)被入侵的系統(tǒng),如何防止網(wǎng)頁(yè)被篡改,主要有以下技術(shù)手段:
系統(tǒng)文件過濾驅(qū)動(dòng): 在操作系統(tǒng)內(nèi)核層對(duì)文件操作進(jìn)行監(jiān)控和過濾,實(shí)時(shí)阻止非法的文件寫入和修改。
事件觸發(fā)機(jī)制: 設(shè)定特定事件(如文件修改事件)觸發(fā)檢測(cè)和保護(hù)動(dòng)作。
數(shù)字水印技術(shù): 在網(wǎng)頁(yè)中嵌入數(shù)字水印,一旦網(wǎng)頁(yè)被篡改,水印信息會(huì)發(fā)生變化,從而被檢測(cè)到。
加密技術(shù): 對(duì)網(wǎng)頁(yè)文件進(jìn)行加密,使攻擊者難以直接修改加密后的內(nèi)容。
完整性校驗(yàn)技術(shù): 如哈希算法,計(jì)算網(wǎng)頁(yè)文件的特征值,通過對(duì)比特征值來判斷是否被篡改。
本文將介紹在 Amazon Web Services 上,如何使用系統(tǒng)能力以及 Amazon Web Services 提供的服務(wù)能力,實(shí)現(xiàn)網(wǎng)頁(yè)防篡改。
Amazon EC2 篡改防護(hù)
如果我們的網(wǎng)站業(yè)務(wù)直接部署于 Amazon EC2 系統(tǒng)中,為了確保內(nèi)容不被篡改,最簡(jiǎn)單的辦法就是讓系統(tǒng)內(nèi)文件只讀。 但是只讀后文件無法更新,所以,我們還需要對(duì)應(yīng)的更新方案。
對(duì)于掛載后,我們也需要持續(xù)的監(jiān)控文件是否有變化。如果有,要及時(shí)發(fā)現(xiàn)。
下面我們分別針對(duì) Linux 與 Windows 系統(tǒng)進(jìn)行介紹。
Amazon EC2 Linux 篡改防護(hù)
Amazon EC2 Linux 系統(tǒng)預(yù)防篡改
Amazon EC2 Linux 系統(tǒng)創(chuàng)建內(nèi)容盤。
1.在 Amazon Web Services 控制臺(tái),我們先創(chuàng)建一塊新的 Amazon EBS 硬盤,具體操作流程參考創(chuàng)建 Amazon EBS 卷。 https://docs.amazonaws.cn/zh_cn/ebs/latest/userguide/ebs-creating-volume.html
2.創(chuàng)建成功后,將創(chuàng)建的 Amazon EBS 硬盤,附加到我們的內(nèi)容服務(wù)器,具體流程參考將 Amazon EBS 卷掛載到實(shí)例。 https://docs.aws.amazon.com/zh_cn/ebs/latest/userguide/ebs-attaching-volume.html
3.掛載完成后,還需要在 Linux 系統(tǒng)內(nèi)對(duì) Amazon EBS 卷進(jìn)行分區(qū)、格式化、掛載等操作,具體流程請(qǐng)參考使 Amazon EBS 卷可供使用。 https://docs.amazonaws.cn/zh_cn/ebs/latest/userguide/ebs-using-volumes.html
4.之后,我們就可以使用 Amazon EBS 卷進(jìn)行讀寫操作,編輯我們的網(wǎng)站內(nèi)容,編輯完成后,即可對(duì)該 Amazon EBS 卷進(jìn)行快照操作,創(chuàng)建快照的操作參考創(chuàng)建 Amazon EBS 快照。 https://docs.aws.amazon.com/zh_cn/ebs/latest/userguide/ebs-creating-snapshot.html
5.創(chuàng)建好的快照,就是我們后面網(wǎng)站內(nèi)容的“模版”,通過該快照創(chuàng)建 Amazon EBS,實(shí)現(xiàn)內(nèi)容的發(fā)布。
Amazon EC2 Linux 系統(tǒng)只讀掛載。
1.通過之前創(chuàng)建好的快照,創(chuàng)建 Amazon EBS 卷,過程可以參考官方文檔從快照創(chuàng)建卷。 https://docs.amazonaws.cn/zh_cn/ebs/latest/userguide/ebs-creating-volume.html#ebs-create-volume-from-snapshot
2.然后,與前文一致,將 Amazon EBS 卷掛載到實(shí)例。
3.掛載完成后,在 Linux 系統(tǒng)內(nèi),我們還需要進(jìn)行加載。為了保護(hù)內(nèi)容,我們采用只讀掛載的方式。
1.# 確保目錄存在
2.sudo mkdir -p /mnt/protect-content
3.# 確保沒有掛載其他盤
4.sudo umount /mnt/protect-content
5.# `/dev/nvm1p1` 更換為實(shí)際device node
6.sudo mount -o ro /dev/nvm1p1 /mnt/protect-content
4.掛載完成,只讀的內(nèi)容即可供外部訪問。由于是只讀掛載,內(nèi)容不可被修改。
Amazon EC2 Linux 系統(tǒng)內(nèi)容更新。
未來,我們肯定希望對(duì)內(nèi)容進(jìn)行更新。更新的流程,與創(chuàng)建內(nèi)容、只讀掛載發(fā)布類似。
1.通過快照創(chuàng)建 Amazon EBS 卷。
2.正??勺x寫方式掛載到內(nèi)容編輯服務(wù)器,在服務(wù)器內(nèi)進(jìn)行內(nèi)容編輯。
3.編輯完成,重新制作 Amazon EBS 卷快照。
4.使用新的 Amazon EBS 卷快照,生成新的 Amazon EBS 卷。
5.將原來的 Amazon EBS 卷從實(shí)例分離,參考將 Amazon EBS 卷與實(shí)例分離。 https://docs.amazonaws.cn/zh_cn/ebs/latest/userguide/ebs-detaching-volume.html
6.只讀方式,掛載新的 Amazon EBS 卷
7.刪除原來的 Amazon EBS 卷,參考刪除 Amazon EBS 卷。 https://docs.amazonaws.cn/zh_cn/ebs/latest/userguide/ebs-deleting-volume.html
Amazon EC2 Linux 系統(tǒng)偵測(cè)篡改事件
Inotify 是一種 Linux 內(nèi)核機(jī)制,用于監(jiān)視文件系統(tǒng)中的事件。它允許應(yīng)用程序監(jiān)視文件或目錄的創(chuàng)建、刪除、修改、屬性更改,以及移動(dòng)或重命名等事件。
Inotify 提供了一種高效且可擴(kuò)展的方式,來監(jiān)視文件系統(tǒng)活動(dòng),并使其成為各種應(yīng)用程序的寶貴工具。
Inotify 有多種應(yīng)用場(chǎng)景,包括:
文件系統(tǒng)監(jiān)控: inotify 可用于監(jiān)視文件系統(tǒng)活動(dòng),例如文件創(chuàng)建、刪除、修改和重命名。這對(duì)于備份應(yīng)用程序、病毒掃描程序和其他需要監(jiān)視文件系統(tǒng)活動(dòng)的應(yīng)用程序很有用。
桌面通知: inotify 可用于在文件或目錄發(fā)生更改時(shí)向用戶發(fā)送桌面通知。這對(duì)于文件共享應(yīng)用程序、同步工具和其他需要通知用戶文件系統(tǒng)活動(dòng)的應(yīng)用程序很有用。
實(shí)時(shí)事件處理: inotify 可用于實(shí)時(shí)處理文件系統(tǒng)事件。這對(duì)于日志記錄應(yīng)用程序、審計(jì)工具和其他需要實(shí)時(shí)響應(yīng)文件系統(tǒng)活動(dòng)的應(yīng)用程序很有用。
Inotify 的特性,使得它在文件保護(hù)、防篡改方面,是最適合的工具。
下面的示例代碼,可用于監(jiān)控 Linux 文件變化,在變化的時(shí)候通知我們,讓我們能第一時(shí)間反應(yīng)、處理:
1.#include <stdio.h>
2.#include <stdlib.h>
3.#include <sys/inotify.h>
4.#include <unistd.h>
5.#include <fcntl.h>
6.#include <string.h>
7.
8.#define EVENT_SIZE? ( sizeof(struct inotify_event) )
9.#define EVENT_BUF_LEN ( 1024 * ( EVENT_SIZE + 16 ) )
10.
11.void handle_event(struct inotify_event *event) {
12.? if (event->len) {
13.? ? // Check for specific events (modify, create, delete)
14.? ? if (event->mask IN_MODIFY) {
15.? ? ? printf("File %s in directory was modified.\n", event->name);
16.? ? } else if (event->mask IN_CREATE) {
17.? ? ? printf("File %s was created in directory.\n", event->name);
18.? ? } else if (event->mask IN_DELETE) {
19.? ? ? printf("File %s was deleted from directory.\n", event->name);
20.? ? }
21.? }
22.}
23.
24.int main(int argc, char *argv[]) {
25.? if (argc !=2) {
26.? ? printf("Usage: %s <directory>\n", argv[0]);
27.? ? exit(1);
28.? }
29.
30.? // Open the inotify instance
31.? int fd=inotify_init();
32.? if (fd==-1) {
33.? ? perror("inotify_init");
34.? ? exit(1);
35.? }
36.
37.? // Add a watch on the specified directory
38.? int wd=inotify_add_watch(fd, argv[1], IN_MODIFY | IN_CREATE | IN_DELETE);
39.? if (wd==-1) {
40.? ? perror("inotify_add_watch");
41.? ? exit(1);
42.? }
43.
44.? char buffer[EVENT_BUF_LEN];
45.
46.? // Continuously read events
47.? while (1) {
48.? ? int nread=read(fd, buffer, EVENT_BUF_LEN);
49.? ? if (nread==-1) {
50.? ? ? perror("read");
51.? ? ? exit(1);
52.? ? }
53.
54.? ? int i=0;
55.? ? while (i < nread) {
56.? ? ? struct inotify_event *event=(struct inotify_event *) buffer[ i ];
57.? ? ? // Check if event refers to the watched directory (avoid subdirectories)
58.? ? ? if (strcmp(event->name, "")==0) {
59.? ? ? ? continue; // Skip events for the directory itself (empty name)
60.? ? ? }
61.? ? ? handle_event(event);
62.? ? ? i +=EVENT_SIZE + event->len;
63.? ? }
64.? }
65.
66.? // Close inotify instance (would never be reached in this example)
67.? close(fd);
68.
69.? return 0;
70.}
滑動(dòng)查看更多
通過編譯,執(zhí)行該代碼,即可實(shí)現(xiàn)網(wǎng)頁(yè)文件內(nèi)容變更通知:
1.# 編譯代碼
2.gcc -o inotify inotify.c
3.# 運(yùn)行監(jiān)控
4../inotify <dir>
Amazon EC2 Windows 篡改防護(hù)
Amazon EC2 Windows 系統(tǒng)預(yù)防篡改
Amazon EC2 Windows 只讀掛載防篡改與 Linux 基本一致,差異部分在于如何只讀掛載 Amazon EBS 卷。
1.# 關(guān)閉自動(dòng)掛載
2.mountvol.exe /N
3.# 進(jìn)入分區(qū)管理
4.diskpart
5.# 列出磁盤
6.list volume
7.# 根據(jù)上面列出的,選擇分區(qū),替換<X>
8.select volume <X>
9.# 設(shè)置分區(qū)屬性, readonly
10.attributes volume set readonly
11.# 查看結(jié)果
12.detail volume
滑動(dòng)查看更多
其他的,與前文 Linux 系統(tǒng)內(nèi)容類似。
Amazon EC2 Windows 系統(tǒng)偵測(cè)篡改事件
與 Linux 類似,Windows .NET SDK 提供了 FileSystemWatcher 這個(gè)接口。
它是 Windows 中用于監(jiān)視文件系統(tǒng)活動(dòng)的 API。它允許應(yīng)用程序監(jiān)視文件或目錄的創(chuàng)建、刪除、修改、重命名等事件。
我們可以參考官網(wǎng)的例子,編寫對(duì)應(yīng)的應(yīng)用來監(jiān)控變化。 https://learn.microsoft.com/en-us/dotnet/api/system.io.filesystemwatcher?view=net-8.0redirectedfrom=MSDN
也可以直接使用一些現(xiàn)有的開源工具, 比如 https://github.com/thekid/inotify-win
Inotify-win 實(shí)現(xiàn)了類似 Linux inotify 的功能,通過以下命令,即可實(shí)現(xiàn)文件目錄的監(jiān)控通知:
1.inotifywait.exe -r -m <dir>
Amazon S3 篡改防護(hù)
Amazon S3 網(wǎng)站方案
Amazon S3 簡(jiǎn)介
Amazon Simple Storage Service(Amazon S3)是一種對(duì)象存儲(chǔ)服務(wù),提供行業(yè)領(lǐng)先的可擴(kuò)展性、數(shù)據(jù)可用性、安全性和性能。
各種規(guī)模和行業(yè)的客戶都可以使用 Amazon S3 存儲(chǔ)和保護(hù)任意數(shù)量的數(shù)據(jù),用于數(shù)據(jù)湖、網(wǎng)站、移動(dòng)應(yīng)用程序、備份和恢復(fù)、歸檔、企業(yè)應(yīng)用程序、IoT 設(shè)備和大數(shù)據(jù)分析。
可以使用 Amazon S3 托管靜態(tài)網(wǎng)站,還可以將 Amazon S3 與內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)(如 Amazon CloudFront)結(jié)合使用來交付網(wǎng)頁(yè)。
Amazon S3 作為 Website 先決條件
在將自定義域配置為在 Amazon Web Services 中國(guó)(寧夏)區(qū)域托管 Amazon S3 靜態(tài)網(wǎng)站之前,必須滿足以下先決條件。
取得 ICP 備案
如果域名通過 Amazon Web Services 中國(guó)(寧夏)區(qū)域中,由寧夏西云數(shù)據(jù)科技有限公司(NWCD)運(yùn)營(yíng)的服務(wù)器進(jìn)行公共訪問,必須通過 NWCD 申請(qǐng) ICP 備案。
配置 Amazon S3 靜態(tài)網(wǎng)站
1.創(chuàng)建域存儲(chǔ)桶和可選的子域存儲(chǔ)桶:
對(duì)于域存儲(chǔ)桶,啟用靜態(tài)網(wǎng)站托管,然后上傳網(wǎng)站內(nèi)容。啟用靜態(tài)網(wǎng)站托管后,域存儲(chǔ)桶會(huì)被分配一個(gè) Amazon S3 網(wǎng)站端點(diǎn),例如 www.example.com.cn.s3-website.cn-north-1.amazonaws.com.cn,使用此網(wǎng)站端點(diǎn)配置 Amazon Route 53 自定義域。
對(duì)于子域存儲(chǔ)桶,在靜態(tài)網(wǎng)站托管下,為對(duì)象配置重定向請(qǐng)求,以重定向至上傳到域存儲(chǔ)桶的網(wǎng)站內(nèi)容。
域存儲(chǔ)桶包含構(gòu)成網(wǎng)站的文件,子域存儲(chǔ)桶會(huì)將請(qǐng)求重新路由到域存儲(chǔ)桶。例如,如果客戶進(jìn)入 www.example.com.cn,子域存儲(chǔ)桶會(huì)將請(qǐng)求轉(zhuǎn)發(fā)到域存儲(chǔ)桶:example.com.cn。
2.清除所有四種 Amazon S3 屏蔽公共訪問權(quán)限設(shè)置,以便可以添加允許對(duì)存儲(chǔ)桶進(jìn)行公共讀取訪問的存儲(chǔ)桶策略。
3.添加允許對(duì)存儲(chǔ)桶進(jìn)行公共讀取訪問的存儲(chǔ)桶策略,將網(wǎng)站暴露給外部進(jìn)行訪問。
使用 Amazon Route 53 配置自定義域
完成在 Amazon S3 中配置靜態(tài)網(wǎng)站后,就有了網(wǎng)站端點(diǎn),假設(shè)為 www.example.com.cn.s3-website.cn-north-1.amazonaws.com.cn(www.example.com.cn),可以將自定義域名映射到此端點(diǎn),并通過自定義域訪問網(wǎng)站。
要為域和子域配置別名記錄,請(qǐng)按照以下步驟操作:
1.通過以下網(wǎng)址打開 Amazon Route 53 控制臺(tái): https://console.aws.amazon.com/route53/
2.請(qǐng)選擇托管區(qū)域。
3.在托管區(qū)域列表中,請(qǐng)選擇與域名匹配的托管區(qū)域的名稱。
4.要為托管區(qū)創(chuàng)建別名記錄,請(qǐng)選擇創(chuàng)建記錄。
5.請(qǐng)選擇切換到向?qū)А?
6.選擇簡(jiǎn)單路由,然后選擇下一步。
7.選擇定義簡(jiǎn)單記錄。
對(duì)于記錄名稱,接受默認(rèn)值。
對(duì)于記錄類型,選擇 CNAME 將流量路由到另一個(gè)域名和某些 Amazon Web Services 資源。
對(duì)于值/流量路由至,選擇根據(jù)記錄類型選擇 IP 地址或其他值。在文本框中,輸入 Amazon S3 網(wǎng)站端點(diǎn):s3-website.cn-north-1.amazonaws.com.cn。
選擇定義簡(jiǎn)單記錄。
8.通過自定義域名(例如 http://example.com.cn)訪問網(wǎng)站,以驗(yàn)證網(wǎng)站和重定向是否有效。
通過 Amazon CloudFront 建立加速緩存
Amazon CloudFront 是 Amazon Web Services 上的 CDN 服務(wù),它可以將 Amazon S3 設(shè)置為分發(fā)的對(duì)象,將 Amazon S3 上的資源,通過 Amazon Web Services 分布在邊緣節(jié)點(diǎn)將內(nèi)容提供給用戶。
同時(shí),Amazon CloudFront 還提供了 Amazon S3 不支持的 HTTPS 協(xié)議,讓前端應(yīng)用更加安全。然而由于 Amazon Web Services 中國(guó)(寧夏)區(qū)域的一些特殊情況,在此使用 Amazon S3 + Amazon CloudFront,需要一些不同于 Global 的額外配置。
1. 建立 Amazon S3 數(shù)據(jù)桶。
注意:需要設(shè)置阻止公開訪問。
2. 建立 Amazon Route 53。
紅框內(nèi)輸入已備案的域名。
3. 建立 Amazon CloudFront 分配。
源選擇存放前端資源的 Amazon S3 桶,桶中如果沒有子文件夾,則留空源路徑輸入框,來源訪問選擇“遺留訪問身份”,點(diǎn)擊“建立新的 OAI”,下面選擇“否,我將更新存儲(chǔ)桶策略”。
在備用域名中,添加剛才在 Amazon Route 53 添加的域名,默認(rèn)根對(duì)象填寫 index.html (根 HTML 文件文件名)。
建立完成后,進(jìn)入“源”標(biāo)簽頁(yè),記下 Origin access 的值,如圖紅框所示:
4. 更新 Amazon S3 桶策略并保存。
代碼如下(替換{$ORIGIN_ACCESS_ID}和BUCKET_ARN/*):
1.{
2.? ? "Version": "2012-10-17",
3.? ? "Statement": [
4.? ? ? ? {
5.? ? ? ? ? ? "Effect": "Allow",
6.? ? ? ? ? ? "Principal": {
7.? ? ? ? ? ? ? ? "AWS": "arn:aws-cn:iam::cloudfront:user/CloudFront Origin Access Identity {$ORIGIN_ACCESS_ID}"
8.? ? ? ? ? ? },
9.? ? ? ? ? ? "Action": "s3:GetObject",
10.? ? ? ? ? ? "Resource": “BUCKET_ARN/*"
11.? ? ? ? }
12.? ? ]
13.}
滑動(dòng)查看更多
5. 回到 Amazon Route 53,增加別名。
如果實(shí)用子域名,則需要新增 CNAME 記錄,并在 Amazon CloudFront 的備用域名中,輸入該記錄的完整域名。
全部完成后,等待片刻,即可去設(shè)定的域名測(cè)試效果。
Amazon S3 網(wǎng)站預(yù)防內(nèi)容篡改
Amazon S3 對(duì)象版本
Amazon S3 中的版本控制,是在相同的存儲(chǔ)桶中保留對(duì)象的多個(gè)版本的方法。對(duì)于存儲(chǔ)桶中存儲(chǔ)的每個(gè)對(duì)象,可以使用 Amazon S3 版本控制功能來保留、檢索和還原它們的各個(gè)版本,從而達(dá)到防止被篡改的效果。
啟用了版本控制的存儲(chǔ)桶,可以恢復(fù)因意外或被外部惡意刪除操作而被篡改的對(duì)象。例如,如果刪除對(duì)象,Amazon S3 會(huì)插入刪除標(biāo)記,而不是永久刪除該對(duì)象。
存儲(chǔ)桶擁有者和所有獲得授權(quán)的 Amazon IAM 用戶,都可以啟用版本控制。
版本 ID
如果為存儲(chǔ)桶啟用版本控制,Amazon S3 會(huì)自動(dòng)為要存儲(chǔ)的對(duì)象生成唯一版本 ID。例如,在一個(gè)存儲(chǔ)桶中,可以擁有兩個(gè)具有相同鍵(對(duì)象名稱)的對(duì)象,但版本 ID 不同,例如 photo.gif(版本 111111)和 photo.gif(版本 121212)。
無論 Amazon S3 版本控制是否啟用,每個(gè)對(duì)象都有一個(gè)版本 ID。
如果未啟用 Amazon S3 版本控制,Amazon S3 將版本 ID 的值設(shè)置為 null。如果啟用 Amazon S3 版本控制,Amazon S3 會(huì)為對(duì)象分配版本 ID 值。此值將該對(duì)象與同一個(gè)鍵的其他版本區(qū)分開來。
在現(xiàn)有存儲(chǔ)桶上啟用 Amazon S3 版本控制時(shí),已存儲(chǔ)在存儲(chǔ)桶中的對(duì)象將保持不變。版本 ID(null)、內(nèi)容和權(quán)限保持不變。啟用 Amazon S3 版本控制后,添加到存儲(chǔ)桶的每個(gè)對(duì)象都會(huì)獲得一個(gè)版本 ID,該 ID 將此版本與同一個(gè)鍵的其他版本區(qū)分開來。
版本控制工作流程
當(dāng)在啟用版本控制的存儲(chǔ)桶中,通過 PUT 放入對(duì)象時(shí),不會(huì)覆蓋非當(dāng)前版本。如下圖所示,當(dāng)將 photo.gif 的新版本 PUT 到一個(gè)已經(jīng)包含同名對(duì)象的存儲(chǔ)桶中時(shí),會(huì)發(fā)生以下行為:
原始對(duì)象(ID=111111)保留在存儲(chǔ)桶中。
Amazon S3 生成一個(gè)新的版本 ID(121212),并將這個(gè)較新版本的對(duì)象添加到存儲(chǔ)桶中。
使用此功能,如果對(duì)象被意外覆蓋或刪除,則可以檢索對(duì)象的先前版本。
當(dāng) DELETE 對(duì)象時(shí),所有版本都將保留在存儲(chǔ)桶中,而 Amazon S3 將插入刪除標(biāo)記,如下圖所示:
刪除標(biāo)記將成為對(duì)象的當(dāng)前版本。默認(rèn)情況下,GET 請(qǐng)求將檢索最新存儲(chǔ)的版本。在當(dāng)前版本為刪除標(biāo)記時(shí),執(zhí)行 GET Object 請(qǐng)求將返回 404 Not Found 錯(cuò)誤,如下圖所示:
但是,可以通過指定對(duì)象版本 ID,通過 GET 獲取非當(dāng)前版本的對(duì)象。在下圖中,GET 特定對(duì)象版本 111111。即使該對(duì)象版本不是當(dāng)前版本,Amazon S3 也會(huì)返回它。
有關(guān)更多信息,請(qǐng)參閱從啟用了版本控制的存儲(chǔ)桶中檢索對(duì)象版本。 https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/RetrievingObjectVersions.html
可以通過指定要?jiǎng)h除的版本來永久刪除對(duì)象。只有 Amazon S3 存儲(chǔ)桶的擁有者或者授權(quán)的 Amazon IAM 用戶,才能永久刪除某個(gè)版本。如果 DELETE 操作指定了 versionId,則會(huì)永久刪除該對(duì)象版本,Amazon S3 不會(huì)插入刪除標(biāo)記。
可以通過配置存儲(chǔ)桶,來啟用多重身份驗(yàn)證(MFA)刪除,從而提升安全性。 對(duì)存儲(chǔ)桶啟用 MFA 刪除時(shí),存儲(chǔ)桶擁有者,必須在任何請(qǐng)求中包含兩種形式的身份驗(yàn)證,以刪除版本或更改存儲(chǔ)桶的版本控制狀態(tài)。
在存儲(chǔ)桶上啟用版本控制
在 Amazon S3 存儲(chǔ)桶上,啟用或禁用版本控制:
1.登錄到 Amazon Web Services Management Console。
2.在存儲(chǔ)桶列表中,請(qǐng)選擇要為其啟用版本控制的存儲(chǔ)桶的名稱。
3.請(qǐng)選擇屬性。
4.在存儲(chǔ)桶版本控制下,請(qǐng)選擇編輯。
5.請(qǐng)選擇 Suspend (暫停) 或 Enable (啟用),然后選擇 Save changes (保存更改)。
Amazon S3 使用對(duì)象鎖
一次寫入多次讀
Amazon S3 Object Lock 是 Amazon S3 的一項(xiàng)功能, 允許使用一次寫入、多次讀?。╓ORM)模式存儲(chǔ)對(duì)象, 可以在數(shù)據(jù)寫入后不得更改或刪除的情況下,使用 WORM 保護(hù),使用此功能無需支付額外費(fèi)用。
Amazon S3 Object Lock 提供兩種管理對(duì)象保留的方法, 第一種是保留期,第二種是合法保留。
保留期規(guī)定了對(duì)象保持鎖定狀態(tài)的固定時(shí)間段。在此期間,對(duì)象受 WORM 保護(hù),不能被覆蓋或刪除。保留期的單位可以是天數(shù),也可以是年數(shù),最短為 1 天,沒有最長(zhǎng)限制。
合法保留提供的保護(hù)與保留期相同,但沒有過期日期。相反,合法保留會(huì)一直存在,直到明確將其移除。
使用 Amazon S3 對(duì)象鎖,可以防止對(duì)象在固定時(shí)間內(nèi)被刪除或覆蓋,或直到合法保留被移除。一個(gè)對(duì)象版本可以同時(shí)具有保留期和合法保留。
Amazon S3 偵測(cè)對(duì)象內(nèi)容變更
在對(duì)對(duì)象做了相應(yīng)的安全保護(hù)手段之后,最后我們還需要具備偵測(cè)的能力,即當(dāng)對(duì)象真的被篡改之后,可以收到相應(yīng)的通知,以及時(shí)采取后續(xù)策略。
我們可以利用 Amazon S3 的事件功能結(jié)合 Amazon SNS 服務(wù),將通知發(fā)送到運(yùn)維或相關(guān)人員的郵箱、微信等其他應(yīng)用。
目前, Amazon S3 可以發(fā)布用于以下事件的通知:
新的對(duì)象創(chuàng)建事件
對(duì)象移除事件
還原對(duì)象事件
低冗余存儲(chǔ) (RRS) 對(duì)象丟失事件
復(fù)制事件
Amazon S3 生命周期到期事件
Amazon S3 生命周期轉(zhuǎn)換事件
Amazon S3 Intelligent-Tiering 自動(dòng)歸檔事件
對(duì)象標(biāo)記事件
對(duì)象 ACL PUT 事件
本文以對(duì)象被移除并發(fā)布郵件通知為例進(jìn)行說明。
對(duì)象內(nèi)容變化監(jiān)控架構(gòu):
當(dāng)托管在 Amazon S3 當(dāng)中的靜態(tài)網(wǎng)頁(yè)被移除時(shí)(篡改),配置好的 Amazon S3 事件會(huì)偵測(cè)到這個(gè)動(dòng)作,并且通過 Amazon SNS 服務(wù)將通知發(fā)送給訂閱好的郵箱。
實(shí)現(xiàn)過程
1.上傳托管的靜態(tài)文件。
2.創(chuàng)建 Amazon SNS 通知主題。
這里需要注意的是,為了讓 Amazon S3 event 具有可以調(diào)用 Amazon SNS API 的權(quán)限,需要配置 topic 的 access policy,按照如下樣例進(jìn)行配置:
1.{
2.? ? "Version": "2012-10-17",
3.? ? "Id": "example-ID",
4.? ? "Statement": [
5.? ? ? ? {
6.? ? ? ? ? ? "Sid": "Example SNS topic policy",
7.? ? ? ? ? ? "Effect": "Allow",
8.? ? ? ? ? ? "Principal": {
9.? ? ? ? ? ? ? ? "Service": "s3.amazonaws.com"
10.? ? ? ? ? ? },
11.? ? ? ? ? ? "Action": [
12.? ? ? ? ? ? ? ? "SNS:Publish"
13.? ? ? ? ? ? ],
14.? ? ? ? ? ? "Resource": "SNS-topic-ARN",
15.? ? ? ? ? ? "Condition": {
16.? ? ? ? ? ? ? ? "ArnLike": {
17.? ? ? ? ? ? ? ? ? ? "aws:SourceArn": "arn:aws:s3:*:*:bucket-name"
18.? ? ? ? ? ? ? ? },
19.? ? ? ? ? ? ? ? "StringEquals": {
20.? ? ? ? ? ? ? ? ? ? "aws:SourceAccount": "bucket-owner-account-id"
21.? ? ? ? ? ? ? ? }
22.? ? ? ? ? ? }
23.? ? ? ? }
24.? ? ]
25.}
滑動(dòng)查看更多
3.使用郵箱訂閱主題,完成后的郵箱會(huì)收到郵件確認(rèn),點(diǎn)擊鏈接后完成訂閱主題。
4.在屬性標(biāo)簽配置 Amazon S3 事件,創(chuàng)建事件通知。
5.配置事件通知參數(shù)。
選擇之前創(chuàng)建的 Amazon SNS 主題。
6.測(cè)試刪除文件后,是否能捕獲通知。
總結(jié)
本文介紹在 Amazon Web Services 上,如何在 Amazon EC2 Linux/Windows 系統(tǒng)、Amazon S3 網(wǎng)站托管,實(shí)現(xiàn)網(wǎng)頁(yè)防篡改。
在 Amazon EC2 系統(tǒng)中,可以通過 Amazon EBS Snapshot 只讀掛載實(shí)現(xiàn),同時(shí),通過 inotify 機(jī)制實(shí)現(xiàn)監(jiān)控;在 Amazon S3,可以通過對(duì)象鎖、對(duì)象版本實(shí)現(xiàn)只讀,通過 Amazon Lambda 實(shí)現(xiàn) Amazon S3 變更事件的通知與自動(dòng)化處理。
月21日,F(xiàn)edEx渠道附加費(fèi)再次漲價(jià)
近日,聯(lián)邦快遞宣布將開始新一輪附加費(fèi)加價(jià),包括額外操作費(fèi),高峰附加費(fèi)和住宅交付費(fèi)的增加,涉及的渠道包括FedEx Express、Ground、International Ground以及Express Package Services。所有附加費(fèi)的生效日期均為2021年6月21日,截止日期將另行通知。
預(yù)計(jì)到2022年跨境電商貨量占全球航空貨量20%
麥肯錫咨詢公司最新發(fā)布的報(bào)告顯示,預(yù)計(jì)到2022年,跨境電商貨量將占全球航空貨量的20%,這相當(dāng)于是2017年水平的2倍。隨著航空和海運(yùn)逐步暢通,供應(yīng)鏈趨于穩(wěn)定,跨境電商勢(shì)頭不減,預(yù)計(jì)70%-80%的跨境電商件主要由航空運(yùn)輸。
另?yè)?jù)國(guó)際航空運(yùn)輸協(xié)會(huì)數(shù)據(jù)顯示,2021年的航空貨運(yùn)需求將預(yù)計(jì)增長(zhǎng)13.1%,總貨運(yùn)量將達(dá)到6310萬噸,幾乎接近疫情前的6350萬噸的峰值。
亞馬遜日本站賣家需檢查商品信息中的 HTML 標(biāo)記
據(jù)悉,當(dāng)買家使用非 HTML 設(shè)備瀏覽商品時(shí),為了確保買家的安全并提供更好的通用性,2021年6月27日之后,亞馬遜將不再支持在詳情頁(yè)面上使用 HTML 標(biāo)記。亞馬遜表示,不建議在詳情頁(yè)面上使用任何 HTML 內(nèi)容,這一點(diǎn)在商品詳情頁(yè)面規(guī)則中已經(jīng)闡明。
由于亞馬遜在 2021年6月27日之后以后會(huì)停止對(duì) HTML 標(biāo)記的支持,屆時(shí)包含 HTML 標(biāo)記的所有詳情頁(yè)面(商品描述)功能將無法在詳情頁(yè)面上顯示 HTML 格式。如果商品描述的其中一行使用了 HTML 標(biāo)記,則該行可能會(huì)被刪除,也可能不顯示 HTML 格式,具體取決于 HTML 標(biāo)記的使用情況。
如果賣家要對(duì)任何包含 HTML 標(biāo)記的 ASIN 商品信息進(jìn)行更新,請(qǐng)?jiān)谠撊掌谥疤幚?,不管是通過賣家平臺(tái)還是按平時(shí)更新 ASIN 詳情的途徑均可。
亞馬遜新規(guī):企業(yè)購(gòu)賣家可創(chuàng)建自動(dòng)定價(jià)規(guī)則了!
亞馬遜歐洲站發(fā)布公告稱Amazon Business賣家可為“商業(yè)價(jià)格”和“數(shù)量折扣”創(chuàng)建自動(dòng)定價(jià)規(guī)則,新的自動(dòng)定價(jià)規(guī)則可將折扣設(shè)置為標(biāo)準(zhǔn)價(jià)格的百分比。
企業(yè)商品定價(jià)規(guī)則確定了在更新標(biāo)準(zhǔn)(消費(fèi)者)價(jià)格時(shí),企業(yè)商品價(jià)格和數(shù)量折扣將發(fā)生的變化。
例如,可以創(chuàng)建一條規(guī)則,規(guī)定企業(yè)商品價(jià)格比標(biāo)準(zhǔn)價(jià)格低 5%。當(dāng)更新此規(guī)則中 SKU 的標(biāo)準(zhǔn)價(jià)格時(shí),企業(yè)商品價(jià)格都將自動(dòng)更新為比最新標(biāo)準(zhǔn)價(jià)格低 5%。
6月1日起eBay將調(diào)整SpeedPAK中國(guó)大陸、中國(guó)香港始發(fā)運(yùn)費(fèi)
5月28日消息,eBay發(fā)布公告稱,自北京時(shí)間2021年6月1日起,SpeedPAK將調(diào)整從中國(guó)大陸、中國(guó)香港地區(qū)出運(yùn)的SpeedPAK以下路向的運(yùn)費(fèi)。
eBay表示,后續(xù)將公布其它路向的價(jià)格調(diào)整情況,請(qǐng)賣家密切關(guān)注。更多運(yùn)費(fèi)和服務(wù)介紹詳情,賣家可通過橙聯(lián)官網(wǎng)進(jìn)行查詢。
前,據(jù)數(shù)據(jù)統(tǒng)計(jì),亞馬遜云服務(wù)在公共云基礎(chǔ)設(shè)施市場(chǎng)中占有高達(dá) 50% 的份額,排名第一。不過,在收獲全球企業(yè)及用戶信任之際,亞馬遜也接連受到諸多創(chuàng)業(yè)公司的質(zhì)疑,其中包括了如阿姆斯特丹的軟件創(chuàng)業(yè)公司Elastic、MongoDB(利用文檔形式來組織數(shù)據(jù)的流行技術(shù))公司等,其紛紛表示,基于開源,亞馬遜以技術(shù)形式形成了壟斷,而這究竟是怎么一回事?
作者 | Daisuke Wakabayashi、Taylor Clauson
編譯 | 彎月,責(zé)編 | 屠敏
以下為編譯文章:
Elastic 是一家阿姆斯特丹的軟件創(chuàng)業(yè)公司,其業(yè)務(wù)發(fā)展速度非常迅速,員工人數(shù)已達(dá)100名。后來,亞馬遜突然出現(xiàn)了。
2015年10月,亞馬遜的云計(jì)算部門宣布他們發(fā)布了一款免費(fèi)的軟件工具,其完全復(fù)制了 Elastic 的功能,人們可以用它來搜索和分析數(shù)據(jù),而且他們還會(huì)將這款軟件作為付費(fèi)服務(wù)出售。當(dāng)亞馬遜做出此舉時(shí),Elastic 的產(chǎn)品 Elasticsearch 已在亞馬遜上出售。
在短短不到一年的時(shí)間里,亞馬遜從這款產(chǎn)品上獲得的利潤(rùn)就超過了 Elastic 這家創(chuàng)業(yè)公司,只因?yàn)閬嗰R遜自家產(chǎn)品更容易與其他服務(wù)一起使用。因此,去年 Elastic 又添加了很多高級(jí)功能,并限制了亞馬遜等公司對(duì)這些功能的使用。但亞馬遜仍然復(fù)制了其中許多功能,并免費(fèi)提供了這些功能。
9月,Elastic 開始回?fù)?。他們以侵犯商?biāo)的罪名向加利福尼亞州的聯(lián)邦法院起訴了亞馬遜,因?yàn)閬嗰R遜的產(chǎn)品曾采用了同一個(gè)名字:Elasticsearch。Elastic 在投訴中說,亞馬遜“誤導(dǎo)消費(fèi)者”。亞馬遜表示否認(rèn)。該案正在審理中。
自1990年代中期以來,即便當(dāng)年微軟憑借 Windows 雄霸個(gè)人計(jì)算機(jī)行業(yè)時(shí),也沒有像如今的亞馬遜這般利用云計(jì)算部門向競(jìng)爭(zhēng)對(duì)手灌輸技術(shù)平臺(tái)的恐懼。亞馬遜與 Elastic 之爭(zhēng)彰顯了他們?cè)诩夹g(shù)世界中稱霸一方的模樣。
盡管很多人對(duì)云計(jì)算一知半解,但它卻構(gòu)成了互聯(lián)網(wǎng)的基礎(chǔ)。云計(jì)算已發(fā)展成為技術(shù)行業(yè)最大、最有利可圖的業(yè)務(wù)之一,它可以為各個(gè)公司提供計(jì)算能力和軟件。而在云計(jì)算供應(yīng)商中,亞馬遜一家獨(dú)大。
亞馬遜首席執(zhí)行官Jeff Bezos,他曾稱AWS是“無人問津”的想法。
自2000年中期推出以來,亞馬遜的云計(jì)算部門 Amazon Web Services(簡(jiǎn)稱AWS) 已然成為企業(yè)的佼佼者,其發(fā)展如此之快,甚至連亞馬遜都有點(diǎn)跟不上步伐。盡管如今開發(fā)高性能軟件所需了解的深入知識(shí)門檻從未如此高,但將新軟件產(chǎn)品推向市場(chǎng)的過程卻前所未有的便宜且快速。
AWS 的銷售增長(zhǎng)
然而,亞馬遜卻利用 AWS 復(fù)制和集成其他科技公司開創(chuàng)的軟件。亞馬遜通過一系列的手段為自家的服務(wù)建立優(yōu)勢(shì):以更加方便使用的方式提供產(chǎn)品、掩蓋競(jìng)爭(zhēng)對(duì)手的產(chǎn)品以及通過捆綁折扣來降低產(chǎn)品的價(jià)格。這些舉措將客戶引向了亞馬遜,而負(fù)責(zé)建立這些軟件的公司則會(huì)顆粒無收。
即便如此,規(guī)模較小的競(jìng)爭(zhēng)對(duì)手表示,他們別無選擇,只能與亞馬遜合作。考慮到亞馬遜在客戶中的廣泛影響,通常創(chuàng)業(yè)公司為了推廣產(chǎn)品,只能同意亞馬遜的限制,自愿與其共享客戶和產(chǎn)品的信息。為了獲得在 AWS 上出售產(chǎn)品的特權(quán),創(chuàng)業(yè)公司只能將部分銷售收入割讓給亞馬遜。
有些公司這樣描述亞馬遜的行為:公然剝削軟件行業(yè)。這些公司表示,亞馬遜巧取他人的創(chuàng)新,挖走他們的工程師,剝削他們的產(chǎn)品利潤(rùn),并利用這一系列手段打壓潛在的競(jìng)爭(zhēng)對(duì)手,強(qiáng)迫他們重新調(diào)整業(yè)務(wù)方向。
所有這些都加劇了對(duì)亞馬遜及其是否濫用市場(chǎng)主導(dǎo)地位和涉嫌反競(jìng)爭(zhēng)行為的審查。該公司的策略已導(dǎo)致多個(gè)競(jìng)爭(zhēng)對(duì)手商量提出反壟斷訴訟。監(jiān)管機(jī)構(gòu)和立法人員正在研究其在行業(yè)中的影響力。
Cloudflare的首席執(zhí)行官 Matthew Prince,這家公司是亞馬遜在提供保護(hù)網(wǎng)站免受攻擊服務(wù)方面的競(jìng)爭(zhēng)對(duì)手。
作為 AWS 在提供保護(hù)網(wǎng)站免受攻擊服務(wù)方面的競(jìng)爭(zhēng)對(duì)手,Cloudflare的首席執(zhí)行官 Matthew Prince表示:“人們擔(dān)心亞馬遜的野心永無止境。”
AWS 占據(jù)了近50%的公共云消費(fèi)市場(chǎng)份額。最初它只提供少量的服務(wù)(S3、SQS和EC2),但如今已有170個(gè)離散服務(wù),涵蓋23個(gè)類別(而這些只是公共領(lǐng)域)。
AWS只是亞馬遜稱霸美國(guó)各個(gè)產(chǎn)業(yè)的一部分。該公司改變了零售、物流、圖書出版和好萊塢的業(yè)務(wù)。它還打算改變?nèi)藗內(nèi)绾钨?gòu)買處方藥、如何購(gòu)買房地產(chǎn),以及如何安裝家庭和城市的監(jiān)控器。
但是,亞馬遜借助 AWS 制造了更多間接的影響。毋庸置疑該公司在向云計(jì)算的巨大轉(zhuǎn)變中處于市場(chǎng)領(lǐng)導(dǎo)者的地位,它的市場(chǎng)份額是其最有力的競(jìng)爭(zhēng)對(duì)手微軟的3倍。數(shù)百萬人每天都在與 AWS 打交道而卻不自知,他們?cè)?Netflix 上看電影或?qū)⒄掌鎯?chǔ)在蘋果的 iCloud 上,這些服務(wù)都是在亞馬遜的計(jì)算機(jī)上運(yùn)行的。
亞馬遜首席執(zhí)行官 Jeff Bezos 曾稱AWS是“無人問津”的想法。這個(gè)服務(wù)最早始于2000年代初期,當(dāng)時(shí)零售商都在努力組裝計(jì)算機(jī)系統(tǒng)來啟動(dòng)新項(xiàng)目和功能。亞馬遜在建立通用的計(jì)算機(jī)基礎(chǔ)架構(gòu)后,意識(shí)到其他公司也需要類似的功能。
如今,就連 Airbnb 和 General Electric 這樣的公司實(shí)際上也是從亞馬遜租用計(jì)算系統(tǒng)(也稱為使用“云”),而不是購(gòu)買和運(yùn)行自己的系統(tǒng)。這些企業(yè)可以將其信息存儲(chǔ)在亞馬遜的計(jì)算機(jī)上,并從中提取數(shù)據(jù)進(jìn)行分析。
對(duì)于亞馬遜本身而言,AWS 至關(guān)重要。去年該部門的銷售額高達(dá)250億美元,大約相當(dāng)于星巴克的規(guī)模,是亞馬遜最賺錢的業(yè)務(wù)。這些利潤(rùn)為亞馬遜提供了進(jìn)軍許多其他行業(yè)的資金。
亞馬遜在一份聲明中說,認(rèn)為它是公然剝削軟件行業(yè)的想法“愚蠢又離譜”。它說,它對(duì)軟件行業(yè)做出了巨大貢獻(xiàn),并且它的行為符合客戶的最大利益。
有些科技公司表示,他們通過 AWS 找到了更多的客戶;就連與亞馬遜糾纏不清的公司也成長(zhǎng)了。例如,Elastic 于去年公開上市,現(xiàn)在有1,600名員工。
然而,我們采訪了40多名現(xiàn)任和前任亞馬遜員工以及競(jìng)爭(zhēng)對(duì)手,許多人表示,與AWS合作帶來的成本很大一部分是隱藏的。他們說,很難衡量他們有多少業(yè)務(wù)流失到了亞馬遜,也很難衡量亞馬遜的威脅勸退了多少投資者。許多人都在匿名的情況下接受了采訪,因?yàn)樗麄儞?dān)心會(huì)激怒亞馬遜。
四名知情人士表示,今年2月,7位軟件公司的首席執(zhí)行官在硅谷舉行會(huì)議,商討針對(duì)這家科技巨頭提出反壟斷訴訟。他們的申訴反映了諸多亞馬遜購(gòu)物網(wǎng)站的供應(yīng)商的不滿:一旦亞馬遜成為直接競(jìng)爭(zhēng)對(duì)手,它就不再保持中立。
知情人士說,這些公司的首席執(zhí)行官?zèng)]有采取法律行動(dòng),部分原因是擔(dān)心這個(gè)過程需要花費(fèi)大量時(shí)間。
如今,監(jiān)管機(jī)構(gòu)正在聯(lián)系亞馬遜的一些軟件競(jìng)爭(zhēng)對(duì)手。負(fù)責(zé)調(diào)查大型科技公司的眾議院司法委員會(huì)在9月的一封信中向亞馬遜詢問了 AWS 的做法。聯(lián)邦貿(mào)易委員會(huì)還在調(diào)查亞馬遜,他們?cè)儐柫?AWS 的競(jìng)爭(zhēng)對(duì)手,據(jù)悉兩家軟件公司被傳喚,但不允許他們討論此事。
風(fēng)險(xiǎn)投資公司 Uncorrelated 的創(chuàng)始人 Salil Deshpande 說,亞馬遜針對(duì)軟件創(chuàng)業(yè)公司的所作所為是不可持續(xù)的。
他說:“亞馬遜巧取豪奪了他們的財(cái)富,強(qiáng)行從所有者手中奪走了軟件控制權(quán),并吸引客戶使用其專有服務(wù)。”
“公然剝削”
MariaDB首席執(zhí)行官 Michael Howard 表示:“AWS的成功建立在公然剝削開源技術(shù)之上?!?/p>
十年前,自從亞馬遜開始 AWS 業(yè)務(wù)以來就一直在努力賺取持續(xù)的利潤(rùn)。提供計(jì)算能力的服務(wù)似乎有點(diǎn)讓人迷惑。
然而,各個(gè)創(chuàng)業(yè)公司都接受了 AWS,因?yàn)檫@項(xiàng)服務(wù)為他們節(jié)省了資金,他們不需要購(gòu)買自己的計(jì)算設(shè)備,只需花錢購(gòu)買所需的軟件。不久后,越來越多的公司蜂擁而,向至亞馬遜尋求計(jì)算基礎(chǔ)設(shè)施以及最終在其計(jì)算機(jī)上運(yùn)行的軟件。
2009年,亞馬遜建立了一個(gè)模板,以加快 AWS 的增長(zhǎng)。同年,它推出了一項(xiàng)管理數(shù)據(jù)庫(kù)的服務(wù),這是幫助各個(gè)公司組織信息的重要軟件。
雖然 AWS 數(shù)據(jù)庫(kù)服務(wù)贏得了眾多用戶的喜愛,然而它并沒有運(yùn)行亞馬遜創(chuàng)建的軟件,亞馬遜選擇了一種可免費(fèi)享用的軟件——開源軟件。
開源軟件與亞馬遜在業(yè)務(wù)上幾乎沒有交集。就好像一家咖啡店,發(fā)放免費(fèi)咖啡,寄希望于人們花錢購(gòu)買牛奶、糖或糕點(diǎn)。
但是,開源是軟件行業(yè)培育的一種久經(jīng)考驗(yàn)的真實(shí)模型,可以迅速將技術(shù)提供給客戶。擁有大量貢獻(xiàn)者的社區(qū)經(jīng)常涌現(xiàn)出可共享的技術(shù),還有人做出改進(jìn)和傳播技術(shù)信息。一般來講,開源公司可以在后期通過客服支持或付費(fèi)插件賺錢。
最初,技術(shù)人員沒有注意到亞馬遜在數(shù)據(jù)庫(kù)軟件中的所作所為。后來在2015年,亞馬遜故伎重施,他們復(fù)制了 Elasticsearch,并提供了具有競(jìng)爭(zhēng)力的服務(wù)。
他們的此次行為引起了很多人的矚目。
“有一家公司利用人們喜歡使用的開源產(chǎn)品為基礎(chǔ)建立了業(yè)務(wù),突然間出現(xiàn)了一位競(jìng)爭(zhēng)對(duì)手利用你的產(chǎn)品與你對(duì)立?!盩odd Persen說。他于今年創(chuàng)建了一家非開源軟件公司,目的只是不給亞馬遜機(jī)會(huì)利用自己的產(chǎn)品。他以前的創(chuàng)業(yè)公司 InfluxDB 就是開源的。
開源軟件產(chǎn)業(yè)一次又一次地為亞馬遜所使用。當(dāng)亞馬遜復(fù)制開源軟件并集成到 AWS 后,就不需要許可,也不需要付錢給創(chuàng)業(yè)公司,這重重打擊了人們創(chuàng)新的能力。
這些公司中的許多公司都沒有追索權(quán),他們無法突然開始為免費(fèi)軟件收費(fèi)。因此,有些人只好改變?nèi)绾问褂闷渖唐返囊?guī)則,希望借此限制亞馬遜和其他試圖將其創(chuàng)造的商品變成付費(fèi)服務(wù)的人。
亞馬遜想法避開了他們的一些變化。
去年, Elastic 公司改變了其軟件規(guī)則,亞馬遜在博客文章中表示,開源軟件公司限制用戶的訪問,他們的所作所為“污染了開源領(lǐng)域”。
Elastic 的首席執(zhí)行官 Shay Banon 當(dāng)時(shí)寫道,亞馬遜的行為“虛有為他人著想的外表”。Elastic拒絕了我們的采訪。
去年,MongoDB(利用文檔形式來組織數(shù)據(jù)的流行技術(shù))公司也宣布,任何將其軟件作為Web服務(wù)來提供的的公司必須免費(fèi)共享其底層技術(shù)。人們普遍認(rèn)為此舉針對(duì)的就是 AWS,因?yàn)樗鼪]有公開分享其用于創(chuàng)建新服務(wù)的技術(shù)。
AWS 很快就開發(fā)了自己的技術(shù),該技術(shù)與 MongoDB 極其類似,而這款新軟件不受限于 MongoDB 的要求。
今年,當(dāng) MongoDB 首席執(zhí)行官 Dev Ittycheria 與其他六家軟件公司的負(fù)責(zé)人一起參加晚宴時(shí),人們第一時(shí)間就提起了 MongoDB 的這段經(jīng)歷。他們?cè)诠韫鹊囊晃伙L(fēng)險(xiǎn)投資家的家中展開了激烈的對(duì)話:討論是否公開指責(zé)亞馬遜的行為有壟斷的嫌疑。
據(jù)知情人士透露,在宴會(huì)上,包括軟件公司 Confluent 和 Snowflake 的負(fù)責(zé)人在內(nèi)的首席執(zhí)行官們紛紛表示他們面臨著不公平的競(jìng)爭(zhēng)環(huán)境。他們無處訴苦。
MariaDB首席執(zhí)行官 Michael Howard 表示:“AWS的成功建立在公然剝削開源技術(shù)之上?!睋?jù)他估計(jì),亞馬遜利用 MariaDB 軟件獲得的收入是其公司所有業(yè)務(wù)所獲收入的五倍。
AWS 副總裁 Andi Gutmans 表示,有些公司希望成為“獨(dú)一無二”利用開源項(xiàng)目賺錢的公司。他說,亞馬遜“致力于確保開源項(xiàng)目保持真正的開放性,無論客戶是否選擇 AWS,他們都有權(quán)選擇如何使用開源軟件?!?/p>
2012年,在 AWS 舉行的首屆開發(fā)者大會(huì)上,亞馬遜不再唯一的云計(jì)算巨頭。微軟和谷歌競(jìng)相推出了競(jìng)爭(zhēng)平臺(tái)。
為此,亞馬遜推出了更多軟件服務(wù),希望確保 AWS 不可或缺的地位。AWS 的負(fù)責(zé)人 Andy Jassy 在活動(dòng)中發(fā)表講話時(shí)表示,他們希望“利用所有可以想象的用例”。
此后,亞馬遜以驚人的速度增加 AWS 的服務(wù),從2014年的30家增長(zhǎng)到今年12月的175家。此外,它還具有主場(chǎng)優(yōu)勢(shì):簡(jiǎn)單性和便利性。
客戶只需輕輕點(diǎn)擊鼠標(biāo)就可以添加新的 AWS 服務(wù),并利用同一個(gè)系統(tǒng)管理這些服務(wù)。而且這些新服務(wù)會(huì)添加到同一賬單中,不需要財(cái)務(wù)或合規(guī)部門的額外許可。
相比之下,在 AWS 上使用非亞馬遜服務(wù)就遠(yuǎn)遠(yuǎn)復(fù)雜得多。
如今,客戶登錄 AWS,就會(huì)看到一個(gè)名為管理控制臺(tái)的主頁(yè),頁(yè)面中央列出了約150種服務(wù),這些都是 AWS 自己的產(chǎn)品。
如果你鍵入“ MongoDB ”,搜索結(jié)果不會(huì)獲取有關(guān) AWS 上 MongoDB 服務(wù)的信息;相反,它會(huì)建議你使用亞馬遜提供的“與 MongoDB 兼容” 的產(chǎn)品。
即使客戶選擇了非亞馬遜的產(chǎn)品,該公司還會(huì)時(shí)不時(shí)地繼續(xù)推銷自己的產(chǎn)品。當(dāng)有人創(chuàng)建新數(shù)據(jù)庫(kù)時(shí),就會(huì)看到一則有關(guān)亞馬遜自家產(chǎn)品 Aurora 的廣告。如果他們選擇其他商品,亞馬遜仍會(huì)特別“推薦”自家的產(chǎn)品。
Gutmans 說,AWS 與許多公司緊密合作,“盡可能無縫地”集成其產(chǎn)品。
禁止詞
亞馬遜的 AWS 拉斯維加斯開發(fā)者大會(huì)是當(dāng)前云計(jì)算行業(yè)中最大的盛事。
亞馬遜的 AWS 開發(fā)者大會(huì)是當(dāng)前世界技術(shù)領(lǐng)域的盛事之一,每年都會(huì)吸引成千上萬的人到拉斯維加斯來。
大會(huì)的壓軸項(xiàng)即是 Jassy 在演講中展示新服務(wù)。因?yàn)樾碌?AWS 功能經(jīng)常都會(huì)給一些創(chuàng)業(yè)公司帶來災(zāi)難,所以這場(chǎng)演示也贏得了“血色婚禮”的稱號(hào)——《權(quán)力的游戲》第三季中著名的一幕。
“沒有人知道下一個(gè)死的是誰?!?Duckbill Group 的 Corey Quinn說,他幫助各個(gè)公司管理 AWS 賬單,還寫了一篇新聞報(bào)道題為:“Last Week in AWS”。
在去年的會(huì)議上,亞馬遜推出了一種新工具:Amazon CloudWatch Logs Insights,可以幫助客戶分析有關(guān)其服務(wù)的信息。
前 AWS 軟件工程師 Daniel Vassallo 幫助公司開發(fā)了這款產(chǎn)品,他表示,高管們想進(jìn)入這個(gè)市場(chǎng),但他們擔(dān)心人們會(huì)以為亞馬遜又有瞄準(zhǔn)了一家名叫 Splunk 的公司,該公司提供了類似的工具,同時(shí)也是 AWS 的主要消費(fèi)者。
Vassallo 說,亞馬遜在會(huì)議之前讓 Splunk 預(yù)覽了新產(chǎn)品,并同意 Jassy 不會(huì)在演講期間宣布該產(chǎn)品。
“他們不是特別高興。當(dāng)然了遇到這種事兒誰會(huì)高興???” Vassallo (于今年2月離開了亞馬遜)在談到 Splunk 時(shí)說,“但我們還是堅(jiān)持做下去了?!?/p>
Splunk 表示他們與 AWS 建立了 “堅(jiān)實(shí)的伙伴關(guān)系”,并拒絕進(jìn)一步評(píng)論。
亞馬遜還為開發(fā)者大會(huì)制定了規(guī)則。各個(gè)公司需要支付數(shù)萬或數(shù)十萬美元才能拿到一個(gè)展位,他們必須將廣告橫幅、小冊(cè)子和新聞稿提交給亞馬遜以供批準(zhǔn)。
根據(jù) AWS 八月份發(fā)布的文件闡明了他們與其他公司合作的營(yíng)銷準(zhǔn)則,亞馬遜禁止使用“多云”(使用兩個(gè)或多個(gè)云平臺(tái)的概念)等詞語或短語。亞馬遜發(fā)言人表示他們已經(jīng)停止了這種做法。
各家公司還不能稱自己是“最佳”、“第一”、“唯一”、“領(lǐng)導(dǎo)者”,除非經(jīng)過獨(dú)立研究機(jī)構(gòu)的證實(shí)。
“愛恨交織的關(guān)系”
利福尼亞州米爾布雷的軟件創(chuàng)業(yè)公司 Nexla 的首席執(zhí)行官 Saket Saurabh 表示,他對(duì)與亞馬遜的合作關(guān)系持保留態(tài)度。
Redis Labs 于2011年在以色列特拉維夫成立,致力于管理名為Redis的免費(fèi)軟件,人們可以使用該軟件快速組織和更新數(shù)據(jù)。亞馬遜很快就提供了具有競(jìng)爭(zhēng)性的付費(fèi)服務(wù)。
雖然 Redis Labs 迎來了強(qiáng)大的競(jìng)爭(zhēng)對(duì)手,但亞馬遜的舉動(dòng)也證實(shí)了 Redis 技術(shù)的堅(jiān)實(shí)。在那之后,這家創(chuàng)業(yè)公司籌集到了1.5億美元,這充分說明了許多軟件公司與亞馬遜之間“無法和平共處,卻又唇齒相依”的關(guān)系。
Redis Labs 的前員工估計(jì),每年亞馬遜利用 Redis 技術(shù)獲取的收入高達(dá)10億美元,至少是 Redis Labs 收入的10倍以上。他們說,亞馬遜還試圖挖走員工,并以超高的折扣低價(jià)出售 Redis 技術(shù)。
AWS 承諾客戶的消費(fèi)超過一定金額就可以享受折扣,但是他們沒有公平地對(duì)待自家服務(wù)和競(jìng)爭(zhēng)對(duì)手服務(wù)的消費(fèi)額度。外部服務(wù)的消費(fèi)額僅占自家服務(wù)消費(fèi)額的一半。據(jù) AWS 客戶稱,他們的折扣不適用于非亞馬遜產(chǎn)品。
如果客戶仍然通過 AWS 選擇 Redis Labs,則 Redis Labs 必須將其收入的15%返還給亞馬遜。
前員工說,有一段時(shí)間,亞馬遜十分熱切地渴望招聘 Redis Labs 員工,高管們甚至從網(wǎng)站上刪除了部分 Redis Labs 的技術(shù)人員。不過Redis Labs 的一位發(fā)言人說,他們不記得這件事。
前員工還說,部分 Redis Labs 高管考慮今年對(duì)亞馬遜提出反壟斷訴訟。而其他人則表示反對(duì),因?yàn)檫@家創(chuàng)業(yè)公司80%的收入都來自 AWS 的客戶。
“這是一種愛恨交織的關(guān)系,” Redis Labs 前營(yíng)銷副總裁 Leena Joshi 說,“一方面,我們的大多數(shù)客戶都在 AWS,因此,與他們緊密結(jié)合符合我們的利益。同時(shí),我們也知道 AWS 搶走了我們的業(yè)務(wù)?!?/p>
Redis Labs 拒絕就公司收入或 AWS 的動(dòng)作做出評(píng)論。它說亞馬遜提供了“重要的服務(wù)”。
并非每個(gè)公司都將 AWS 視作威脅。舊金山的創(chuàng)業(yè)公司 Databricks 使用人工智能來分析數(shù)據(jù),公司的首席執(zhí)行官 Ali Ghodsi 說 AWS 的銷售人員提高了他們公司產(chǎn)品的銷售量。
他說:“我并沒有看到他們耍詭計(jì)來阻止我們的發(fā)展?!?/p>
但是,位于加利福尼亞州米爾布雷的創(chuàng)業(yè)公司 Nexla 只有14名員工,公司的首席執(zhí)行官 Saket Saurabh 表示,他對(duì)亞馬遜持保留態(tài)度。
8月份,亞馬遜開始提供一項(xiàng)數(shù)據(jù)處理和監(jiān)控服務(wù),與 Nexla 展開了競(jìng)爭(zhēng)。投資者們警告他,不要向這家科技巨頭透漏太多信息。
然而,Saurabh 還是在9月份簽署了與亞馬遜合作的合同。為什么?因?yàn)閬嗰R遜龐大的銷售團(tuán)隊(duì)可以為 Nexla 帶來更多受眾。
他說:“我們有選擇的余地嗎?”
如果亞馬遜推出競(jìng)爭(zhēng)產(chǎn)品,創(chuàng)業(yè)公司該何去何從?
對(duì)于所有創(chuàng)業(yè)公司來說,這都是一個(gè)無法回避的問題。我不太擔(dān)心科技巨頭擠兌創(chuàng)業(yè)公司的問題。以我的經(jīng)驗(yàn)來看,在創(chuàng)業(yè)公司倒閉的諸多原因中,科技巨頭的威脅并不是主要原因。雖說如此,對(duì)于面向開發(fā)人員的創(chuàng)業(yè)公司來說,這確實(shí)是一個(gè)令人擔(dān)憂的因素。
AWS 與開源的關(guān)系非常復(fù)雜。值得注意的是,Mongo 和 Redis 都必須采取行動(dòng)與 AWS 開戰(zhàn)。此外,這些公司在想法賺錢的時(shí)候都要面對(duì)這個(gè)問題,而且這也不會(huì)成為妨礙別人使用你家產(chǎn)品的原因。換句話說,創(chuàng)業(yè)公司能夠達(dá)到如此規(guī)模和水平,我們都應(yīng)該感到慶幸。很多時(shí)候,在這些公司達(dá)到這種規(guī)模之前,AWS 不會(huì)與之展開競(jìng)爭(zhēng)。
原文:https://www.nytimes.com/2019/12/15/technology/amazon-aws-cloud-competition.html
https://www.tclauson.com/2019/09/11/Unbundling-AWS.html
責(zé)編:王楠
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。