谷歌云GCP上創(chuàng)建一臺云主機并SSH登錄

來源:知乎
作者:奉孝翼德
時間:2020-06-17
5501
我們今天要體驗的谷歌虛擬機是Compute Engine的,一些云服務(wù)商總是不喜歡把虛擬機叫虛擬機,含糊其辭的叫云主機,谷歌的Compute Engine官方介紹就是叫虛擬機(VM)。

因為GCP谷歌云提供免費一年300美金的體驗金,所以,體驗前需要準(zhǔn)備的道具有:一張支持外幣的信用卡,萬事達(dá),VISA卡都可以。

因為國內(nèi)無法登陸GCP云平臺,所以還需要:一臺能聯(lián)網(wǎng)(科xue上網(wǎng))的設(shè)備,最好是PC。創(chuàng)建一臺GCP VM

注冊登錄,映入眼簾的是一個簡樸的頁面,歡迎登錄,這就是傳說中的GCP的首頁了。

v2-42bff680551976905f83004e77916f06_1440w.jpg

谷歌云的首頁

很久以前,筆者用過谷歌的GAE(Google App Engine)搭建了一個神奇的上網(wǎng)神器,一個用Python寫的應(yīng)用----GoAgent,GAE現(xiàn)在是一個叫App Engine的PaaS平臺,是與Compute Engine,k8s Engine并列的設(shè)定。

我們今天要體驗的谷歌虛擬機就是Compute Engine的,一些云服務(wù)商總是不喜歡把虛擬機叫虛擬機,含糊其辭的叫云主機,谷歌的Compute Engine官方介紹就是叫虛擬機(VM)。

來,創(chuàng)建一個VM虛擬機吧。

v2-2d3007cc0d2a4bec039a3b459c1abee0_720w.jpg

開始創(chuàng)建

打開VM實例的界面,系統(tǒng)提示說我可以導(dǎo)入VM鏡像,不知道我本地在VMware Workstation創(chuàng)建的虛擬機能不能傳上去,我只是好奇,并不打算自找麻煩,總覺得這個導(dǎo)入虛擬機的提示,別的云服務(wù)商沒有,這也算個特點吧,挺好的。

下一步:點擊創(chuàng)建。

v2-b3d86ef3f05448a8718b2ee3b84d2e50_720w.jpg

設(shè)置配置,除了可用區(qū),這臺虛擬機別的配置都可以改。

選擇可用區(qū),可用區(qū)選項還是挺多的,包括我們的寶島臺灣,隨便選個美國的區(qū)吧,圓我一個數(shù)據(jù)入美的夢。

內(nèi)存方面的話,選擇一個常見的入門配置1核1G,可勾選擴展內(nèi)存,我這個機型最多能勾選到52GB內(nèi)存。

操作系統(tǒng)的話,就選Ubuntu 18.04吧,有新的,堅決不選舊的。

v2-d2d3c3b40dda38ad7595f11e46a2342c_720w.jpg

點擊創(chuàng)建,即創(chuàng)建成功

勾選允許HTTP和HTTPS,其實就是開了倆常用的端口,80和443。注意,這個是可以用贈送的300美刀來消費的,為了用自帶的SSH連,所以還得打開22端口。

登陸進去看看吧,先瞧瞧自帶的SSH。

v2-a1a965f27969d4d9ce89f0ad84cb060f_720w.jpg

登陸中

v2-9d58ed6888383f582302109345fbbaed_720w (1).jpg

初始化的GCP VM Ubuntu

感覺怪怪的,換成SSH登錄吧。

SSH登錄

MAC用戶的話,用自帶的Terminal登錄,Windows的話還是Putty,因為都算第三方的工具,所以,GCP要求你得用公鑰私鑰匹配,記得把21,22端口端口打開哦。

1,MAC下操作:

鍵入以下命令:

$ssh-keygen-t rsa-f~/Desktop/key(目標(biāo)目錄)-C skmc4boxer(登錄的用戶名)

過程中需要輸入兩遍登錄密碼(passphrase)。

操作完成后生成這兩個文件:key-pub和key。

v2-35b16ac1f6a81688591bf51e27ecaedd_720w.jpg

key.pub是公鑰,要傳到GCP上,key就是你自己的私鑰,ssh登錄的時候要用。

如何上傳公鑰?

mac下的話,打開key.pub,復(fù)制下來,然后點擊進入實例詳情頁面,點擊修改按鈕:

v2-51178ea860aaf562ea1d422fe5c05d30_720w.jpg

對VM進行修改設(shè)置

然后找到“您有0個SSH密鑰”,點擊顯示和修改,然后點擊添加,把你復(fù)制的內(nèi)容貼上去。

v2-9cc8c27dc39e2818d52b0aa18cf30486_720w.jpg

點擊這里添加SSH密鑰

添加完密鑰之后是這個樣子滴:

v2-d7fb9845507c9766e5b25b0587767aaf_720w (1).jpg

添加好的密鑰的模樣

然后點擊保存,退出當(dāng)前設(shè)置。

轉(zhuǎn)到Terminal登錄,鍵入下面命令

$ssh-i~/Desktop/key(私鑰所在地目錄)skmc4boxer{user name} {your ip address}

然后輸入你的密碼:

passphrase

然后就登錄成功了

2,在Windows下Putty登錄

在Windows下用Putty也一樣,也是公鑰和密鑰兩個,操作方式類似,Putty需要設(shè)置一下密鑰的位置。

打開Puttygen,所有設(shè)置都可以默認(rèn),直接點擊Generate生成,進度條開始讀取,需要你不斷在空白處移動鼠標(biāo),生成加密的公鑰數(shù)字。

v2-0b5125e65851df34fee2cad88ebe2c91_720w.jpg

生成默認(rèn)的公鑰是這樣滴:

v2-dfac0660f1e30f80108e7cc3a6d3c5e7_720w.jpg

用戶名和密碼可以完全自己定義

上方(紅方框里)以ssh-rsa開頭的是公鑰,下面分別是你需要設(shè)置的用戶名(上面的rsa-key-20190120可修改為別的名字)和密碼。

分別保存public-key和private-key到本地的任意位置,跟上面的一樣。

然后把公鑰添加到VM后臺:

v2-d7fb9845507c9766e5b25b0587767aaf_720w.jpg

左側(cè)的skmc4boxer就是剛才在puttygen設(shè)置的用戶名,接下來登錄要用用戶名,保存。

然后,就開始用Putty登錄:

v2-741861acb035ff4ff36beefadd5eb51c_720w.jpg

設(shè)置IP,然后點擊左側(cè)的Auth,添加你保存的private-key,然后保存即可。

然后就像平常一樣填寫用戶名和密碼進行登錄了。

到此,一個正??捎玫脑浦鳈C就設(shè)置好了。

一點感受:

谷歌不愧是一家有工程師文化的公司,初一看,GCP的界面太丑,而且操作邏輯跟AWS和阿里云差異不是一般的大,慢慢一看,覺得整套創(chuàng)建流程還是挺合理的,設(shè)置也非常全面,精細(xì),開放性留給用戶的操作空間很大。

印象比較深的是網(wǎng)絡(luò)標(biāo)記功能,設(shè)置虛擬機的端口時可以很靈活。用戶需要在防火墻設(shè)置訪問規(guī)則,設(shè)置開放端口,設(shè)置的過程中會要求你選擇目標(biāo),目標(biāo)選“指定的目標(biāo)標(biāo)記”,然后添加一個目標(biāo)標(biāo)記(下圖紅框中的”http-server”)。

v2-f697f15d6eb8389666c2d08d8b734c56_720w.jpg

當(dāng)需要啟動這條防火墻規(guī)則的時候,然后在虛擬機的網(wǎng)絡(luò)標(biāo)簽里選擇這個標(biāo)記即可,然后這條規(guī)則就啟用了,80端口和443端口就開啟了

v2-63c9382972092c2225e6c8e2be1a26db_720w.jpg

添加防火墻規(guī)則

nmap掃一下,22和80端口已經(jīng)被監(jiān)聽了。

v2-4913e9b6c88aeb0c326eeaa9b96f2646_720w.jpg

nmap掃描監(jiān)聽的端口

安裝一個apache服務(wù)器試試,命令行里鍵入:

$sudo apt-get install apache2

瀏覽器里打開一下:

v2-16c13f15c8ebd968734ccf128751370a_720w.jpg

能打開的話證明已放開80端口

往云主機里傳輸文件

使用一個云主機還經(jīng)常要有的操作是傳文件,筆者推薦這么往虛擬機里傳文件:

通常傳文件的時候,vsftpd可以,但是設(shè)置炒雞麻煩,傳輸速度慢。FileZilla也可以,但是設(shè)置還是麻煩,傳輸速度沒有最慢只有更慢。

上圖是把要傳的文件先放到aws的s3上,然后wget下載到主機上,速度達(dá)到41MB每秒。(開不開心,驚不驚喜?)

v2-03388bfa62db487264a34fbd7cfa668f_720w (1).jpg

AWS s3里的jar包(你大概現(xiàn)在還能用這個鏈接下載下來)

v2-a366d94876614526e7fc804a4208f0f9_720w.jpg

wget下載這個jar包

我個人還是喜歡利用對象存儲來傳文件,然后wget命令下載下來,速度簡直不要不要的,而且,少開一個端口,設(shè)置省事兒了,原則上來說,也更安全了不是嗎?如果傳一批零碎小文件的話,我習(xí)慣打成壓縮包傳上去再解壓。

立即登錄,閱讀全文
原文鏈接:點擊前往 >
版權(quán)說明:本文內(nèi)容來自于知乎,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
個人VIP