通过putty和 winscp操作aws机器笔记
最近在生產(chǎn)aws環(huán)境部署了支持http3的nginx集群(nginx+consul+upsync)。整個部署過程使用putty操作虛擬機(jī),通過winscp上傳下載文件。
寫了一些操作筆記以及記錄了我自己碰到的幾個問題
PS:
由于是生產(chǎn)環(huán)境,所以所有的服務(wù)機(jī)器都是通過堡壘機(jī)登錄的,并且設(shè)置了密鑰
下面提到的服務(wù)器地址都是不能直接通過ssh命令直接連接的應(yīng)用服務(wù)器地址
WINSCP
winscp的操作相對putty來說比較簡單
然后點擊確認(rèn)和登錄按鈕就可以看到如下連接成功的提示
PUTTY
putty通過密鑰登錄內(nèi)網(wǎng)機(jī)器
在aws兩臺機(jī)器,一臺是可以是堡壘機(jī),可以在任何點通過ssh命令訪問,一臺是內(nèi)網(wǎng)機(jī)器,只能通過堡壘機(jī)使用SSH命令連接,其安全組配置如下:
由于要使用密鑰進(jìn)行登陸,需要先保存私鑰到本地(如果是pem文件需要先通過puttygen轉(zhuǎn)換成ppk文件)
1.將pem轉(zhuǎn)化成ppk文件
打開puttygen并點擊load,選擇自己電腦上的pem公鑰并打開,就可以看到如下圖所示的導(dǎo)入成功的消息,然后點擊保存私鑰的按鈕,就可以得到對應(yīng)的ppk文件
由于兩臺機(jī)器的登陸都需要私鑰,而私鑰只是存儲在我本地,所以通過Pageant來保存私鑰。
Pageant是PuTTY身份驗證代理。 它可以私鑰保存在內(nèi)存中,以便我們可以在連接到服務(wù)器時使用它們。
2.添加私鑰到Pageant
3. putty連接堡壘機(jī)
4.登陸堡壘機(jī)
通過ssh命令連接內(nèi)網(wǎng)機(jī)器(aws上Red Hat的實例的默認(rèn)登陸用戶都是ec2-user)
putty做端口映射
在搭建nginx+consul+upsync集群的時候,為了安全性,所有的機(jī)器都僅可以通過堡壘機(jī)訪問,consul集群通過私有子網(wǎng)來創(chuàng)建實例。這樣一來,我們也不能直接通過consul服務(wù)端的ip+端口訪問器web界面了,解決方案有三種:
- 1.通過nginx映射到外網(wǎng),然后訪問nginx的時候做登陸驗證
- 2.使用consul 自己的ACL機(jī)制,設(shè)置token才可以訪問 比較麻煩
- 3.通過putty的ssh隧道,在登陸堡壘機(jī)的時候做端口映射,先給與堡壘機(jī)訪問consul ui的權(quán)限,然后通過端口映射到本地
最終我選擇了第三種,既保證了安全性,配置起來也很簡單,使用putty 登陸堡壘機(jī)就可以訪問consul的頁面
consul服務(wù)器ip:172.33.63.50,登陸后安裝并啟動consul
在本地通過127.0.0.1:8500端口就可以訪問了— 注意是映射到的是本地的端口
通過SSH命令進(jìn)行私鑰轉(zhuǎn)發(fā)
按照上述操作可以使用putty連接內(nèi)網(wǎng)服務(wù)器,不過每次都需要輸入ssh ec2-user@ip命令來連接服務(wù)器,也比較麻煩,查閱了下看看是否有其他更簡單的方式來連接
其中一個辦法就是把命令保存成shell文件,這樣在使用的時候就會方便些,不需要再去看對應(yīng)服務(wù)的IP了
思路也是一樣的,先是通過ssh-agent 管理私鑰;然后轉(zhuǎn)發(fā)私鑰來登陸內(nèi)網(wǎng)服務(wù)器
1.通過ssh-add命令添加私鑰
執(zhí)行ssh-add時如果出現(xiàn)"Could not open a connection to your authentication agent"錯誤,則執(zhí)行ssh-agent bash命令
通過ssh-add -l命令我們可以看到對應(yīng)的私鑰已經(jīng)被加入了
2.登陸內(nèi)網(wǎng)服務(wù)器
ssh ec2-user@172.33.63.50 -p 22 -o ProxyCommand='ssh -p 22 ec2-user@54.238.43.140 -W %h:%p'
這條命令的意思是,我使用ec2-user用戶,來經(jīng)過堡壘機(jī)的認(rèn)證,但是我登陸內(nèi)網(wǎng)服務(wù)器則是使用ec2-user用戶登錄。前面的是目標(biāo)服務(wù)器的信息,ProxyCommand里的是堡壘機(jī)的信息
為了便于簡單,可以把上述信息寫到配置文件~/.ssh/config里邊
這樣以后想要連接對應(yīng)的服務(wù)器只要使用ssh + host 就可以了
不過通過ssh-add命令添加的私鑰只要關(guān)閉命令臺就會失效了,每次都需要重新通過ssh-add命令添加一下
總結(jié)
以上是生活随笔為你收集整理的通过putty和 winscp操作aws机器笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AWS 用户指南笔记
- 下一篇: QUIC实战(一) 通过Quiche部署