偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何從 Windows 上用 SSH 連接到 Linux

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

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

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

使用 SSH 的方法

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

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

在這篇文章中,我將解釋使用 SSH 的四個方式:1、如何在 Linux 端配置 SSH 守護(hù)進(jìn)程;2、如何設(shè)置遠(yuǎn)程控制臺連接;3、如何通過網(wǎng)絡(luò)復(fù)制文件,4. 如何將 SSH 作為某些協(xié)議的隧道。

1、配置 SSHD

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

#       $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 ::

沒有取消任何注釋的默認(rèn)配置在這個示例中應(yīng)該是可以工作的。要檢查 SSH 守護(hù)進(jìn)程是否已經(jīng)運行,輸入 ??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狀態(tài),使用 ??systemctl start sshd?? 命令啟動它。

2、設(shè)置遠(yuǎn)程控制臺

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

PuTTY configuration screen

PuTTY configuration screen

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

PutTTY security alert

PutTTY security alert

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

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

輸出應(yīng)該和 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”以確認(rèn) PuTTY 的安全提示。主機(jī)系統(tǒng)的指紋現(xiàn)在存儲在 PuTTY 的信任列表中,其位于 Windows 的注冊表中的:

HKEY_CURRENT_USER\SOFTWARE\SimonTatham\PuTTY\SshHostKeys

輸入正確的登錄憑證,然后你應(yīng)該進(jìn)入控制臺了,位置在你的用戶主目錄。

Logged in to SSH

Logged in to SSH

3、通過網(wǎng)絡(luò)復(fù)制文件

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

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

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

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

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

就像你也許已經(jīng)發(fā)現(xiàn)的那樣,復(fù)制的命令通常構(gòu)造為:

pscp.exe <source> <target>

4、隧道化一個協(xié)議

假設(shè)你擁有一個 Linux 機(jī)器,為某些特別的應(yīng)用運行一個基于 HTTP 的服務(wù)。你想從你的 Windows 機(jī)器通過互聯(lián)網(wǎng)訪問這個 HTTP 服務(wù)。而且,你不能將相關(guān)的 TCP 端口暴露在公網(wǎng),因為:

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

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

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

要在一個 Linux 機(jī)器上安裝 Pythonic ,運行:

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

轉(zhuǎn)向你的 Windows 機(jī)器,打開 PuTTy,轉(zhuǎn)到 “連接Connection -> SSH -> 隧道Tunnels”。加入你要轉(zhuǎn)發(fā)的兩個 TCP 端口:

  • 源:??7000??? / 目標(biāo):??localhost:7000??
  • 源:??8000??? / 目標(biāo):??localhost:8000??

Port forwarding in PuTTY

Port forwarding in PuTTY

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

Pythonic

Pythonic

你成功的設(shè)置了端口轉(zhuǎn)發(fā)!

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

調(diào)試

如果你難以連接你的 Linux 機(jī)器,你可以跟蹤你的 SSH 守護(hù)進(jìn)程的處理過程:

    journalctl -f -u sshd

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

LogLevel DEBUG output

LogLevel DEBUG output

了解更多

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

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

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

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系統(tǒng)

2022-08-08 09:34:33

Linux串行控制臺

2020-04-17 14:37:19

WindowsLinux微軟

2020-02-11 15:50:51

WindowsLinux命令行

2018-12-24 09:48:45

UbuntuLinuxPutty

2019-08-27 09:20:21

無線打印機(jī)Windows 10PC

2019-03-14 14:30:48

SSHLinux特定目錄

2017-03-01 11:15:43

LinuxKali LinuxSSH服務(wù)

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手機(jī)應(yīng)用程序

2019-10-09 16:50:48

SSHLinux遠(yuǎn)程系統(tǒng)

2023-05-04 18:45:11

2017-03-16 18:50:59

2021-06-24 16:07:36

Linuxfind命令fd命令
點贊
收藏

51CTO技術(shù)棧公眾號