跳板機上傳文件
❶ 「Xshell」Xshell跳板機通過隧道連接遠程伺服器
小菜運維僅僅只是一位菜鳥運維
廢話核亂慎不多說,小菜運維最近又完成了一套外包項目開發,現在准備將項目部署到甲方購買的阿里雲伺服器上。因為甲方是集團型大企業,又有自己的運維團隊,很多規章制度比較規范,部署的時候要求通過跳板機/堡壘機登錄阿里雲內網ECS。雖然說跳板機很有必要也應該這樣做,但奈何願意這樣做的客戶是少之又少,這次是撞上大客戶啦!
小菜運維平時都是使用的Xshell、Xftp管理伺服器,這次通過跳板機登錄內網ECS時不斷輸入密碼,還不能直連內網ECS上傳文件,操作了幾次小菜運維就忍不住要口吐芬芳了,終於決定用Xshell的隧道來徹底解決一下這個效率低下、重復體力勞動的問題了!
Xshell的隧道轉發類型共有三種,這里我們不展開介紹各自的應用場景,大家可以自行了解,我們這里選用的是Dynamic,可以實現自動連接內網ECS,也可直接連接FTP,但是前提是必須先連接跳板機建立起隧道,然後再連接內網ECS
隧道類型:
Local(Outgoing)
Dynamic(SOCKS4/5)
Remote(Incoming)
1. 連接跳板機
1.1 建立到跳板機的會話
Xshell選擇新建會話,點擊左側 連接 ,在 常規 欄依次填入會話名稱、跳板機IP、跳板機埠,然後依次完成 用戶身份驗證 、 登錄腳本 設置,這里需要強調的一點是,務必記得設置 登錄腳本 以保證隧道的長連接,避免因隧道的斷開而導致後續其他遠程目標機器的連接失敗,具體操陪寬作如下圖:
1.2 建立跳板機隧道
在上一步的對話框中,繼續點擊左側 隧道 - 添加 ,在彈出的轉移規則對話框中完成規則設置,這里要強調的是 源主機 是指你當前建立隧道連接的本地機器,一般填入 localhost 或 127.0.0.1 即可,而 目標主機 則是指你要遠程連接的遠程伺服器,具體配置信息如下圖:
2. 建立遠程主機連接
2.1 建立到遠程主機的會話
Xshell選擇新建會話,點擊左側 連接 ,在 常規 欄依次填入會話名稱、本機/本地IP、本機/本地監聽埠,然後依次完成 用戶身份驗證 設置,這里需要強調的一點是,務必記得這里設置的連接主機地址 1.2 中設置轉移規則時填寫的 源主機 地址,而不是遠程伺服器的IP地址,同樣的,這里設置的埠號也是 1.2 中設置轉移規則時填寫的 偵聽埠 ,但是 用戶身份驗證 需要填寫遠程伺服器的用戶信息。具體操作如下圖:
3. SSH/SFTP到遠程伺服器
自動連接遠程伺服器的前提是先連接到跳板機/堡壘機,然後再連接到遠程伺服器。
在Xshell中雙擊已建好的到堡壘機的會話,待成功完成登錄後,再雙擊已建好的到遠程伺服器的會話改敬,這時我們可以看到Xshell自動實現了登錄遠程伺服器操作,這時在Xshell已登錄的遠程伺服器頁面,點擊頂部工具欄的 新建文件傳輸 按鈕,Xshell將自動打開Xftp並自動登錄遠程伺服器的Xftp文件管理頁面;
1. 連接跳板機
1.1 建立到跳板機的會話
這里和 Local(Outgoing)方式 的步驟完全相同,可參照之前步驟操作。
1.2 建立跳板機隧道
這里和 Local(Outgoing)方式 的區別在於轉移規則的配置,具體配置信息如下圖:
2. 建立遠程主機連接
2.1 建立到遠程主機的會話
這里和 Local(Outgoing)方式 的區別在於主機和埠號的配置,這里的主機和埠號都是配置的遠程伺服器的, 用戶身份驗證 同樣還是需要填寫遠程伺服器的用戶信息。具體操作如下圖:
2.2 建立到遠程主機會話的代理
在上一步 2.1 建立到遠程主機的會話 的對話框左側,點擊 代理 ,然後瀏覽並添加代理伺服器,這里我們代理伺服器設置的就是本地機器,要注意的是這里 代理伺服器的監聽埠必須和1.2中隧道轉移規則設置的偵聽埠保持一致 ,具體配置如下圖:
3. SSH/SFTP到遠程伺服器
這里和 Local(Outgoing)方式 的步驟完全相同,可參照之前步驟操作。
基於隧道可以簡化很多體力操作,感覺起來就好像堡壘機不存在一樣,實際操作中推薦使用 Dynamic(SOCKS4/5)方式 ,因為Dynamic(SOCKS4/5)方式對於跳板機後有多台遠程伺服器需要連接的場景只需要配置一次隧道和代理,之後就可以直接添加到遠程伺服器的會話就可以了;而 Local(Outgoing)方式 則需要為每一台遠程伺服器添加一個單獨的隧道才可以。
如果按照以上步驟操作仍然不能正常訪問,那麼……建議你聯系你的堡壘機管理員,可能是堡壘機帳號/憑據/許可權等的設置沒有給足你許可權。
附-參考文檔:
阿里雲·堡壘機
阿里雲·透明代理
❷ 怎麼把本地文件通過跳板機FTP到一台LINUX伺服器上面去
假設要訪問機器dev,則必須先ssh到跳板機gateway,然後再ssh到dev機器 可以使用ssh config中的ProxyCommand定義主機dev的連接參數,ProxyCommand ssh -q -W %h:%p gateway 這樣,ssh dev 命令就會先和gateway建立ssh連接,並把這個中間連接當作一個代理使用
❸ 什麼是跳板機
如果控制機與受害機直接相連,設想,如果這時受害機已經查出是是哪一台機子發出的Dos時,就會把黑客自己的身份暴露。那如果在受害機察覺以前把控制機的「腳印」全部刪除不就可以了?如果你只想攻擊受害機一次,那麼有無跳板機都可,但如果你想多次攻擊受害機,那麼你每次都要把自己控制機上的「腳印」刪除的干凈(包括相關的原代碼),這樣當你下次要想再攻擊受害機時,等於是要重新再建立攻擊過程。如果中間有一個跳板機,那麼你只需要如在跳板機上的「腳印」刪除即可,這樣受害機當查到跳板機時,線索就斷開了。所以有一個跳板機的作用會使黑客自己本身更加安全。通常DOS攻擊是作為入侵者入侵他人系統的一種方法,很少單獨使用。入侵的思路就是:目標機發送大量無用的數據,使目標機疲於對付這些無用數據,而造成系統的遲鈍緩慢,這就猶如「一心不能兩用」一樣,這樣,入侵者就可以在潮水般的攻擊中混騙過入侵檢測系統。入侵的方法由以下幾種:1、SYN 洪水攻擊 利用伺服器的連接緩沖區(Backlog Queue),利用特殊的程序,設置TCP的Header,向伺服器端不斷地成倍發送只有SYN標志的TCP連接請求。當伺服器接收的時候,都認為是沒有建立起來的連接請求,於是為這些請求建立會話,排到緩沖區隊列中。 如果你的SYN請求超過了伺服器能容納的限度,緩沖區隊列滿,那麼伺服器就不再接收新的請求了。其他合法用戶的連接都被拒絕掉。可以持續你的SYN請求發送,直到緩沖區中都是你的只有SYN標記的請求。 這種方法的好處就在於,不用事先去探測別人的IP,直截了當的去佔領緩沖區,方法比較簡單,但是由於利用的是自己的IP,所以身份比較容易暴露,在使用這種攻擊思路時,對自己的主機的隱蔽性一定要做好,最簡單的方法就是多使用幾台傀儡機,但是在入侵後,對傀儡機的痕跡清掃也隨之變得復雜而麻鎖。2、IP欺騙DOS攻擊 這種攻擊利用RST位來實現。假設現在有一個合法用戶(1.1.1.1)已經同伺服器建立了正常的連接,攻擊者構造攻擊的TCP數據,偽裝自己的IP為1.1.1.1,並向伺服器發送一個帶有RST位的TCP數據段。伺服器接收到這樣的數據後,認為從1.1.1.1發送的連接有錯誤,就會清空緩沖區中建立好的連接。這時,如果合法用戶1.1.1.1再發送合法數據,伺服器就已經沒有這樣的連接了,該用戶就必須從新開始建立連接。攻擊時,偽造大量的IP地址,向目標發送RST數據,使伺服器不對合法用戶服務。這種方法的好像就是不易被主機發現,但是缺點就在於要事先知道該主機的一個合法用戶的IP地址,有時還要知道IP地址對應的埠號。而在大部分的合法客戶的IP地址都是隨機的,所以如果每次都想用同一個用戶的IP很難做到,所以每次都要進行IP合法用戶探詢。 3、 帶寬DOS攻擊 如果你的連接帶寬足夠大而伺服器又不是很大,你可以發送請求,來消耗伺服器的緩沖區消耗伺服器的帶寬。這種攻擊就是人多力量大了,配合上SYN一起實施DOS,威力巨大。 這種方法是比較初級DOS攻擊,顯然並不試用於攻擊大型的伺服器。隨著寬頻的不斷提高,與計算機的越來越好,使得計算機有足夠的能力來對付這種攻擊,這種方法已經開始不試用了。4、自身消耗的DOS攻擊 這種DOS攻擊就是把請求客戶端IP和埠弄成主機的IP埠相同,發送給主機。使得主機給自己發送TCP請求和連接。這種主機的漏洞會很快把資源消耗光。直接導致死機。這中偽裝對一些身份認證系統還是威脅巨大的。這種攻擊的方式,它的偽裝比較好,俗話說「最危險的地方就是最安全的地方」,也正是因為入侵者利用的服務機自身的IP,使得伺服器自身很難找到入侵者是誰,這種攻擊的方法最終都是因為「死鎖」而造成死機的。上面這些實施DOS攻擊的手段最主要的就是構造需要的TCP數據,充分利用TCP協議。這些攻擊方法都是建立在TCP基礎上的。還有其他的DOS攻擊手段。 5、塞滿伺服器的硬碟 通常,如果伺服器可以沒有限制地執行寫操作,那麼都能成為塞滿硬碟造成DOS攻擊的途徑,比如: 發送垃圾郵件。一般公司的伺服器可能把郵件伺服器和WEB伺服器都放在一起。破壞者可以發送大量的垃圾郵件,這些郵件可能都塞在一個郵件隊列中或者就是壞郵件隊列中,直到郵箱被撐破或者把硬碟塞滿。 讓日誌記錄滿。入侵者可以構造大量的錯誤信息發送出來,伺服器記錄這些錯誤,可能就造成日誌文件非常龐大,甚至會塞滿硬碟。同時會讓管理員痛苦地面對大量的日誌,甚至就不能發現入侵者真正的入侵途徑。 向匿名FTP塞垃圾文件。這樣也可以塞滿硬碟空間。總之,拒絕服務一般都是通過過載而導致伺服器死機的,而過載一般是因為請求到達了極限。TCP是一種面向連接的協議,所以它採用了多種服務機制來保證連接的可靠性,如:流量控制、擁塞控制,一旦出現數據流量過大所產生的擁塞就會使伺服器拒絕客戶提出的連接請求。正是因為TCP的這種拒絕機制,給Dos有了可乘之機。試想,如果有客戶大量的向伺服器扔送無用的數據報文段,使伺服器因為數據流的過多,而拒絕了超過了它上限值的以外的數據。從而導致其它真正的想使用伺服器的客戶被拒之門外,就會造成不必要的浪費。這也就是Dos的核心內容了。步驟A:首先,攻擊者利用自己的控制機找到一個跳板機,向跳板機發出受害機的命令參數。至於發了哪些命令參數將在Dos的編輯過程做解釋。步驟B:跳板機收到控制機的命令後,向受害機大量發送無用數據報文段,使得受害機疲於應付那些無數數據
❹ 推薦 20 個堪稱神器的命令行工具
優質文章,第一時間送達!
1.ag:比 grep、ack 更快的遞歸搜索文件內容。
2.tig:字元模式下交互查看 git 項目,可以替代 git 命令。
3.mycli:mysql 客戶端,支持語法高亮和命令補全,效果類似 ipython,可以替代 mysql 命令。
4.jq: json 文件處理以及格式化顯示,支持高亮,可以替換 python -m json.tool。
5.shellcheck:shell 腳本靜態檢查工具,能夠識別語法錯誤以及不規范的寫法。
6.yapf:Google 開發的 python 代碼格式規范化工具,支持 pep8 以及 Google 代碼風格。
7.mosh:基於 UDP 的終端連接,可以替代 ssh,連接更穩定,即使 IP 變了,也能自動重連。
8.fzf:命令行下模糊搜索工具,能夠互動式智能搜索並選取文件或者內容,配合終端 ctrl-r 歷史 命令搜索簡直完美。
9.PathPicker(fpp):在命令行輸出中自動識別目錄和文件,支持互動式,配合 git 非常有用。
運行以下命令:
10.htop: 提供更美觀、更方便的進程監控工具,替代 top 命令。
11.axel:多線程下載工具,下載文件時可以替代 curl、wget。
12.sz/rz:互動式文件傳輸,在多重跳板機下傳輸文件非常好用,不用一級一級傳輸。
13.cloc:代碼統計工具,能夠統計代碼的空行數、注釋行、編程語言。
14.ccache:高速 C/C++編譯緩存工具,反復編譯內核非常有用。使用起來也非常方便:
改成:
15.tmux:終端復用工具,替代 screen、nohup。
16.neovim: 替代 vim。
17.script/scriptreplay: 終端會話錄制。
回放:
18.you-get: 非常強大的媒體下載工具,支持 youtube、google+、優酷、芒果 TV、騰訊視頻、秒拍等視頻下載。
還有 mac 專有的 pb/pbpaste:
把命令行輸出拷貝到系統粘貼板:
把系統粘貼板內容拷到終端:
mac 下的 say 命令支持多種語言(英語、普通話、粵語)文本朗讀,支持各種銷魂恐怖的語氣。跑這個命令感受下,小心被嚇著了:
19.thefuck:用途是每次命令行打錯了以後,打一句 fuck 就會自動更正命令。比如 apt-get 打成了 aptget。fuck 以後自動變成 apt-get。但還是沒加 sudo。再 fuck,成功!
又比如 git branch 打成了 git brnch。fuck!更正成 git branch。
又比如 python 打成了 puthon。fuck!一秒變 python。
而且關鍵是每次打命令和內心 os 完全一致,有種人機合一的快感。fuck!
20.tldr: 如果你經常不想詳讀 man 文檔,那麼你應該試試這個小工具。
使用 $ man tar 時
使用 $ tldr tar 時