溫馨提示×

Ubuntu SFTP如何配置SSH隧道

小樊
55
2025-04-12 06:15:50
欄目: 智能運維

在Ubuntu上配置SFTP通過SSH隧道連接,可以增強安全性,因為數據傳輸會被加密。以下是詳細的步驟指南:

1. 安裝SSH服務器

首先,確保你的Ubuntu系統上已經安裝了SSH服務器。如果沒有安裝,可以使用以下命令進行安裝:

sudo apt update
sudo apt install openssh-server

2. 配置SSH服務器

編輯SSH服務器的配置文件 /etc/ssh/sshd_config

sudo nano /etc/ssh/sshd_config

確保以下配置項存在并且沒有被注釋掉:

Port 22  # 默認端口,可以根據需要更改
PermitRootLogin no  # 不允許root用戶直接登錄
PasswordAuthentication yes  # 允許密碼認證(如果需要)

保存并退出編輯器,然后重啟SSH服務:

sudo systemctl restart sshd

3. 創建SSH隧道

你可以使用 ssh 命令來創建一個SSH隧道。假設你想將本地端口 2222 轉發到遠程服務器的SFTP端口 22,可以使用以下命令:

ssh -L 2222:localhost:22 user@remote_server_ip

其中:

  • -L 2222:localhost:22 表示將本地端口 2222 轉發到遠程服務器的 localhost:22。
  • user 是你在遠程服務器上的用戶名。
  • remote_server_ip 是遠程服務器的IP地址。

4. 使用SFTP通過隧道連接

在本地機器上,你可以使用以下命令通過SSH隧道連接到遠程服務器的SFTP服務:

sftp -P 2222 localhost

其中:

  • -P 2222 指定使用本地端口 2222。
  • localhost 表示通過SSH隧道連接到遠程服務器。

5. 驗證連接

連接成功后,你應該能夠看到SFTP提示符,如下所示:

sftp>

你可以使用SFTP命令來上傳、下載和管理文件。

6. 持久化SSH隧道(可選)

如果你希望SSH隧道在后臺持續運行,可以使用 autossh 工具。首先安裝 autossh

sudo apt install autossh

然后使用以下命令啟動一個持久的SSH隧道:

autossh -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -L 2222:localhost:22 user@remote_server_ip

其中:

  • -M 0 禁用autossh的監控端口。
  • -o "ServerAliveInterval 30" 設置每30秒發送一次保持活動信號。
  • -o "ServerAliveCountMax 3" 設置最多發送3次保持活動信號。

這樣,即使你關閉了終端,SSH隧道也會繼續運行。

通過以上步驟,你就可以在Ubuntu上配置一個安全的SFTP通過SSH隧道的連接。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女