2020年1月8日水曜日

Samba over SSH (Windows10 Proxy 経由で Samba アクセス)

Proxy サーバ経由で SSH 接続して、Samba サーバにアクセスする手順のメモ。
確認環境: Samba サーバ = Ubuntu 16.04、クライアント = Windows10

まず、概要を説明すると、下記のようになる。
Windows でループバック I/F (10.255.255.1/24) を作成して、
10.255.255.1:445 -> 10.255.255.1:44445 に port proxy して、
Proxy サーバ経由で SSH 接続するときに、ポートフォワード設定をしておいて、
10.255.255.1:44445 -> XX.XX.XX.XX:445 にアクセス。

0. サーバ側設定

サーバ PC (Ubuntu 16.04) では、Samba, SSH サーバ が起動していることが前提 (構築手順等の説明省略)。
あと、proxy サーバ経由でその PC にアクセスできること。

1. ループバックアダプタ追加

まず、Windows PC にループバックアダプタを追加する。
デバイスマネージャを開いて、"操作" -> "レガシハードウェアの追加"。

ハードウェアの追加ウィザードの開始。

一覧から選択したハードウェアをインストールする。

ネットワークアダプター。

Microsoft KM-TEST Loopback Adapter。



わかりやすいように名前を "Loopback" に変えておく。

Loopback のプロパティを開き、Microsoft ネットワーク用ファイルとプリンター共有 のチェックを外す。

インターネット プロトコル バージョン 4 (TCP/IPv4) を開いて、固定 IP アドレスを設定。
IP アドレス = 10.255.255.1
サブネット マスク = 255.255.255.0

詳細設定 -> WINS、NetBIOS over TCP/IP を無効にする。

2. portproxy の設定

管理者権限で、コマンドプロンプトを起動する。
SMB ドライバ (サービス) がすでに起動している場合は、下記を実行する。
(自分の PC では必要なかった)

> sc config smb start= demand

portproxy の設定。

> netsh interface portproxy add v4tov4 listenaddress=10.255.255.1 listenport=445 connectaddress=10.255.255.1 connectport=44445

設定内容を確認。

> netsh interface portproxy show v4tov4

Address         Port        Address         Port
--------------- ----------  --------------- ----------
10.255.255.1    445         10.255.255.1    44445

3. タスクスケジューラに SMB ドライバ (サービス) を設定。

ログイン時に、下記が実行されるように設定する。
設定後、再起動する。

C:\Windows\System32\net.exe start smb




再起動後、設定が下記のようになっていれば OK。
ダメな場合は、タスクスケジューラを開いて、タスクの停止、実行を手動で行うと良いかも。
(場合によっては、社内 LAN 接続ツールの挙動がおかしくなる。その時は、一旦タスクを停止して、接続後、起動する)

> netstat -an | find ":445"

  TCP         0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP         10.255.255.1:445       0.0.0.0:0              LISTENING
  TCP         [::]:445               [::]:0                 LISTENING

4. TeraTerm で、SSH 転送 (ポートフォワード設定) を行い、SSH ログインする。

今回は TeraTerm を使ってアクセスしたが、PuTTY でも同様のことができる。
まず、ポートフォワードの設定を行う。
to remote machine のところに、サーバ PC の IP アドレスを入力。

proxy サーバを設定。


SSH でログインする。
TeraTerm で、SSH のコネクションを張っている間、Samba のアクセスが可能となる。

5. エクスプローラで、Samba サーバにアクセス。

USER の部分は任意で入力。

\\10.255.255.1\USER

● Samba, SSH, proxy, windows10, port foward, smb, teraterm

0 件のコメント: