成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何從 Windows 上用 SSH 連接到 Linux

系統 Linux 開源
使用開源的 PuTTY 工具,從 Windows 建立到 Linux 的 SSH 連接。

在 Linux 世界中,安全外殼secure shell(SSH)協議是最為常用的、通過命令行控制遠程計算機的方式。SSH 是真正的 Linux 原創,但是它在 Windows 世界中也越來越流行。甚至有了一份官方的 ??Windows 的 SSH 文檔???,那篇文檔闡述了使用 ??OpenSSH?? 控制 Windows 的方法。

這篇文章展示了如何使用了流行的開源工具 ??PuTTY??,建立一個從 Windows 到 Fedora 33 Linux 系統的 SSH 連接。

使用 SSH 的方法

SSH 使用客戶端-服務器模式,即 SSH 客戶端會創建到 SSH 服務端的連接。SSH 服務器通常會作為守護進程Daemon運行,所以它常被稱為 SSHD。你很難找到一個不自帶 SSH 守護進程的 Linux 發行版。在 Fedora 33 中,已安裝了 SSH 守護進程,但是并未激活。

你可以使用 SSH 控制幾乎所有的 Linux 機器,無論它是作為虛擬機還是作為網絡上的物理設備運行。一個常見的用例是無頭headless配置的嵌入式設備,如樹莓派。SSH 也可以用做一個其它網絡服務的隧道。因為 SSH 連接是加密的,所以你可以使用 SSH 作為一個任何默認不提供加密的協議的傳輸層。

在這篇文章中,我將解釋使用 SSH 的四個方式:1、如何在 Linux 端配置 SSH 守護進程;2、如何設置遠程控制臺連接;3、如何通過網絡復制文件,4. 如何將 SSH 作為某些協議的隧道。

1、配置 SSHD

將 Linux 系統(文中是 Fedora 33)作為 SSH 服務器,允許 PuTTY SSH 客戶端進行連接。首先,檢查守護進程的 SSH 配置。配置文件放在 ??/etc/ssh/sshd_config??,它包含了許多選項,通過取消掉相關行的注釋就可以激活:

#       $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.
Include /etc/ssh/sshd_config.d/*.conf
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

沒有取消任何注釋的默認配置在這個示例中應該是可以工作的。要檢查 SSH 守護進程是否已經運行,輸入 ??systemctl status sshd??:

$ systemctl status sshd
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2018-06-22 11:12:05 UTC; 2 years 11 months ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 577 (sshd)
Tasks: 1 (limit: 26213)
CGroup: /system.slice/sshd.service
└─577 /usr/sbin/sshd -D -oCiphers=[aes256-gcm@openssh.com][5],chacha20-[...]

如果它處于未激活inactive狀態,使用 ??systemctl start sshd?? 命令啟動它。

2、設置遠程控制臺

在 Windows 下 ??下載 PuTTY 安裝程序??,然后安裝并打開它。你應看到一個像這樣的窗口:

PuTTY configuration screen

PuTTY configuration screen

在“主機名(或 IP 地址)Host Name (or IP address)”輸入框,鍵入你的 Linux 系統的連接信息。本文設置了一個 Fedora 33 虛擬機,它使用橋接網絡適配器,使我可以由 IP 地址 ??192.168.1.60?? 連接這個系統。點擊“打開Open”,應會如圖示的打開一個窗口:

PutTTY security alert

PutTTY security alert

這是 SSH 的安全措施之一,是為了防止??中間人攻擊???man-in-the-middle attack。消息中的指紋應該匹配 Linux 系統中放在 ??/etc/ssh/ssh_host_ed25519_key.pub??? 的密鑰。PuTTY 將這個密鑰以 ??MD5 哈希值?? 的方式打印出來。要檢查它的真實性,切換到 Linux 系統并打開一個控制臺,然后輸入:

ssh-keygen -l -E md5 -f /etc/ssh/ssh_host_ed25519_key.pub

輸出應該和 PuTTY 展示的指紋一致:

$ ssh-keygen -l -E md5 -f /etc/ssh/ssh_host_ed25519_key.pub
256 MD5:E4:5F:01:05:D0:F7:DC:A6:32 no comment (ED25519)

點擊“是Yes”以確認 PuTTY 的安全提示。主機系統的指紋現在存儲在 PuTTY 的信任列表中,其位于 Windows 的注冊表中的:

HKEY_CURRENT_USER\SOFTWARE\SimonTatham\PuTTY\SshHostKeys

輸入正確的登錄憑證,然后你應該進入控制臺了,位置在你的用戶主目錄。

Logged in to SSH

Logged in to SSH

3、通過網絡復制文件

除了遠程控制臺,你同樣可以使用 PuTTY 通過 SSH 來傳輸文件。PuTTY 的安裝目錄在 ??C:\Program Files (x86)\PuTTY???,在該目錄下尋找 ??ppscp.exe??。你既可以使用它從 Linux 系統復制文件,也可以復制文件到 Linux 系統。

使用 ??Windows + R??? 然后輸入 ??cmd??? 來打開命令提示符,從你的 Linux 用戶主目錄復制 ??MYFile.txt?? 到你的 Windows 主目錄,輸入:

C:\"Program Files (x86)"\PuTTY\pscp.exe stephan@192.168.1.60:/home/stephan/MyFile.txt .

要從 Windows 主目錄復制文件到 Linux 用戶主目錄,輸入:

C:\"Program Files (x86)"\PuTTY\pscp.exe MyFile.txt stephan@192.168.1.60:/home/stephan/

就像你也許已經發現的那樣,復制的命令通常構造為:

pscp.exe <source> <target>

4、隧道化一個協議

假設你擁有一個 Linux 機器,為某些特別的應用運行一個基于 HTTP 的服務。你想從你的 Windows 機器通過互聯網訪問這個 HTTP 服務。而且,你不能將相關的 TCP 端口暴露在公網,因為:

  1. 這個服務通過 HTTP 而非 HTTPS 運行
  2. 根本沒有用戶管理和登錄系統

乍一看,建立這種架構不產生可怕的漏洞似乎是不可能的。但是 SSH 可簡單的為這種情況建立一個安全的解決方案。

我將用我的軟件項目 ??Pythonic??? 來演示這個過程。在容器中運行。Pythonic 作為容器運行,開放兩個 TCP 端口:TCP 端口 7000(主要編輯器)和 TCP 端口 8000(??code-server?? 代碼編輯器)。

要在一個 Linux 機器上安裝 Pythonic ,運行:

    podman pull pythonicautomation/pythonic
podman run -d -p 7000:7000 -p 8000:8000 pythonic

轉向你的 Windows 機器,打開 PuTTy,轉到 “連接Connection -> SSH -> 隧道Tunnels”。加入你要轉發的兩個 TCP 端口:

  • 源:??7000??? / 目標:??localhost:7000??
  • 源:??8000??? / 目標:??localhost:8000??

Port forwarding in PuTTY

Port forwarding in PuTTY

然后返回 “會話Session” 部分,并像之前那樣建立一個 SSH 鏈接。打開網頁瀏覽器,然后轉到 ??http://localhost:7000??;你應該看見像這樣的窗口:

Pythonic

Pythonic

你成功的設置了端口轉發!

警告: 如果你選擇在公網上暴露 TCP 端口 22 ,不要使用易于猜測的登錄憑證。你將接受來自全世界的登錄請求,它們使用常見的、標準的登錄憑證以嘗試登錄你的 Linux 機器。相反,只允許已知的用戶登錄。這種登錄限制可以通過 ??公鑰加密?? 來實現,它使用一個密鑰對,其中公鑰存儲在 SSH 主機上,而私鑰保留在客戶端。

調試

如果你難以連接你的 Linux 機器,你可以跟蹤你的 SSH 守護進程的處理過程:

    journalctl -f -u sshd

這是一個普通的登錄進程,但是其日志級別為 DEBUG,它看起來是這樣的 :

LogLevel DEBUG output

LogLevel DEBUG output

了解更多

這篇文章幾乎沒有涉及到使用 SSH 的方法。如果你正在尋找一個特定用例的信息,你也許可以在互聯網中找到無數的教程。我在工作中使用 PuTTY ,因為它易于設置,在兩個操作系統間又具有良好的可操作性,使得它成為連接解決方案里的瑞士軍刀。

(文內圖片來自:Stephan Avenwedde,??CC BY-SA 4.0??)

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2019-02-18 09:36:12

2021-01-04 09:19:06

WindowsLinuxGUI程序

2019-07-12 15:00:09

程序Windows 10Internet

2022-08-30 10:33:08

LinuxUSB系統

2022-08-08 09:34:33

Linux串行控制臺

2020-02-11 15:50:51

WindowsLinux命令行

2020-04-17 14:37:19

WindowsLinux微軟

2018-12-24 09:48:45

UbuntuLinuxPutty

2019-08-27 09:20:21

無線打印機Windows 10PC

2017-03-01 11:15:43

LinuxKali LinuxSSH服務

2019-03-14 14:30:48

SSHLinux特定目錄

2011-04-26 13:17:36

AS3MySQL

2017-09-18 10:05:15

WindowsLinux容器

2015-01-08 10:18:46

OS XX-Windows

2015-04-09 09:08:20

2019-11-08 10:00:09

Windows手機應用程序

2019-10-09 16:50:48

SSHLinux遠程系統

2023-05-04 18:45:11

2017-03-16 18:50:59

2021-06-24 16:07:36

Linuxfind命令fd命令
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精品国产乱码久久久久久 | 日韩羞羞 | 欧美日韩视频网站 | 91精品国产91久久综合桃花 | 欧美黄色片在线观看 | 亚洲91精品 | 国产日韩精品一区二区 | 欧美日韩一卡二卡 | 波多野结衣先锋影音 | 男人久久天堂 | 亚洲精品国产精品国自产在线 | 欧美极品在线观看 | 久久91精品国产一区二区三区 | 成人免费观看男女羞羞视频 | 欧美 日韩 在线播放 | 亚洲一区视频在线 | 亚洲欧美一区二区三区国产精品 | 亚洲精品99 | 久草久 | 日韩精品福利 | 久久久久久网 | 91精品久久久久久久久久入口 | 久久久久久一区 | 久久久久久国产精品免费 | 欧产日产国产精品99 | 99精品国产一区二区青青牛奶 | 在线播放国产一区二区三区 | 欧美亚洲国产日韩 | 一区二区在线不卡 | 中文字幕av网站 | 精品一区二区三区不卡 | 欧美黄色网 | 成人二区 | 亚洲综合资源 | 九九热最新地址 | 99久久精品免费视频 | www成年人视频 | 欧美精品在线免费观看 | 婷婷色国产偷v国产偷v小说 | av在线免费观看不卡 | 9久久|