apt-get はトンネルプロキシ経由でインストールしますが、クライアント側からのみ SSH を使用します 質問する

apt-get はトンネルプロキシ経由でインストールしますが、クライアント側からのみ SSH を使用します 質問する

つまり...これが私の問題です:

自分のマシンから VPN にアクセスできます。SSH 経由で VPN 内のサーバーにアクセスできますが、ファイアウォールがリバース SSH 接続をブロックしているため、このマシンは内部から外部にアクセスできません。そのため、トンネル経由でインターネットを使用して apt-get を使用することはできません。

LAN構成

どのようにエミュレートできますか:

sudo ssh -D 9999 root@<machineoutsidevpn>

しかし、VPN の外部からですか。または、インターネット接続を使用してパッケージをインストールする方法はありますか?

ベストアンサー1

設定:

コンピュータA

  • インターネットにアクセスできる
  • コンピュータBにアクセスできる
  • SSHがインストールされています

コンピュータB

  • インターネットにアクセスできない
  • OpenSSHサーバーがインストールされている

手順:

  1. コンピュータBにssh接続するからコンピュータA

    sudo ssh -R <selected port>:us.archive.ubuntu.com:80 [email protected]
    
  2. コンピュータ B を編集して/etc/apt/apt.conf、次の行を追加します。

    Acquire::http::Proxy "http://localhost:<selected port>";
    Acquire::https::Proxy "https://localhost:<selected port>";
    
  3. apt-get updateまたはinstallをコンピュータ B で実行するupgradeと、動作するはずです。


いくつかの注意事項:

  • あなた持っているコンピュータ B を使用して apt-get リポジトリにアクセスしている間、コンピュータ A からコンピュータ B への ssh の元のセッションをアクティブに保ちます。
  • トンネルを利用するために同じ SSH 接続を使用する必要はありません (つまり、コンピューター B に複数の SSH 接続がある場合、それらはすべて機能するはずです)

Puttyの使用

これは Putty を使用して実現することもできます (コンピュータ A が Windows マシンであると仮定)。

  1. セッションを開始するときに、SSH --> トンネルを選択します。
  2. 送信元ポート:<selected port>
  3. 行き先:us.archive.ubuntu.com:80
  4. 「リモート」ラジオボタンを選択します
  5. 「追加」ボタンを選択
  6. 通常どおりにセッションを構成します。
  7. 上記の手順2と3に従ってください

おすすめ記事