web-dev-qa-db-ja.com

アバストファイアウォールのWSLとHyper-Vに追加する必要がある例外はどれですか?

概要

ファイアウォールがWSLサーバーをブロックしています(Ubuntu 18.04)Visual Studio Codeで実行している場合のみ。また、Hyper-V VM(Ubuntu 19.04)がほぼインターネットへのすべての接続を確立するのを妨げています。たとえばSudo apt updateまたはブラウジング(何らかの理由で正常にpingできますが、現時点ではこれに焦点を当てません)。

詳細

多くのトレイルとエラーの努力の結果、私はファイアウォール(アバストプレミア)がこれの唯一の原因であると判断しました。ファイアウォールを10分間無効にすると、これら2つの異なる操作を実行したり、Visual Studio CodeからWSLサーバーに接続したり、仮想化されたUbuntuのパッケージをHyper-Vからナビゲートおよび更新したりできます。

これまでに行ったこと

VSCodeですべてのポート(インバウンドとアウトバウンド)ですべての接続が許可されていることを確認しました。

enter image description here

許可ルールが設定されているようです。

enter image description here

また、ウイルス対策の例外リストにVSCodeを追加しました。

enter image description here

上記のアクションはいずれも機能せず、ファイアウォールを無効にするだけでした。

質問

許可するためにファイアウォールに追加する必要があるルール:

  1. VSCodeのWSLサーバー(Ubuntu 18.04.2)
  2. Hyper-VからのUbuntu19.04でのインターネット接続。

:WSLはVSCodeの外部で完全に機能します。そこからバッチ端末を起動することもできます(ステータスバーの左側からの接続が問題です)。


[〜#〜]更新[〜#〜]

これは、VSCodeのWSLターミナルから取得した出力です。

Failed to connect to the remote extension Host server (Error: connect ETIMEDOUT 127.0.0.1:62388)

Failed to connect to the remote extension Host server (Error: connect ETIMEDOUT 127.0.0.1:62388)

2
kerzek

アバストフォーラムの投稿 WSLピコプロセスをサポート この有用なテキストがあります:

アバスト。 Windows Defenderと同様に、現在、picoプロセスを実行するためにLinuxディストリビューション全体を免除する必要があります。これは、企業環境におけるセキュリティに対する許容できないリスクです。アバストが行う必要があるのは、PicoプロセスをWindowsプロセスと同じように扱うことです。マイクロソフトは、プロセス/ポートレベルごとにルールを管理する「スキップアヘッドインサイダー」ビルドでWindowsDefenderの更新プログラムをまもなくリリースします。アバストは同様の設定を実装する必要があります。アバストなどのサードパーティベンダーがWSLと統合するのを支援するためにMicrosoftが提供した2016年のブログがあります。ブログは次のとおりです。 https://blogs.msdn.Microsoft.com/wsl/2016/11/01/wsl-antivirus-and-firewall-compatibility/

Microsoftの記事 Pico Process Overview は、概念をさらに説明しています。

この投稿では、WSLの基盤であるピコプロセスについて説明します。それは、ピコプロセスがWindowsでどのように機能するかを説明し、それらがどのようになってきたか、実装することを決定した抽象化、および出現したWSL以外のさまざまなユースケースの歴史に入ります。

私が知る限り、WindowsのUbuntuリリースは次のフォルダーにあります。

  • C:\Program Files\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_1804.2019.521.0_x64__79rhkp1fndgsc
  • C:\Users\USERNAME\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
  • C:\Windows\System32\lxss

アバストフォーラムの投稿が正しければ、これらはUbuntuの実行を許可するためにアバストで免除される必要があるフォルダーです。

アバスト設定に関する限り、以下を有効にすることが 推奨 されています。

  • インターネット接続の共有モード
  • プライベートモードで友達とのすべての接続を許可する
  • 自動プロファイル切り替えを有効にする
  • 自動ポートスキャン検出を有効にする

これらの設定を有効にした後、再起動する必要があります。

アバストがWSLをサポートするアップデートをリリースするまで、これらはすべて回避策にすぎません。上記の回避策が機能しない場合は、WSLの使用中にアバストファイアウォールを無効にするか、問題が解決するまでアバストを一時停止する必要があります。それまでは、WindowsDefenderはほとんどの目的に十分です。

1
harrymc

要件:

  • 開発言語用の適切なツールチェーンを備えたWSLにインストールされたGNU/Linuxディストリビューション。たとえば、C/C++言語用のDebianベースのディストリビューションのbuild-essential
  • リモート-WSL 拡張機能がインストールされた最新のVisualStudioコード。
  • リモートWSL拡張機能が前述のWSLディストリビューションのバックエンドNodeJSサーバーをダウンロードするためのインターネット接続。

手順:

  • Visual Studio Code実行可能ファイルのフルパスを取得し、ファイアウォールで許可します。通常、これは次のようになります。
%LOCALAPPDATA%\Programs\Microsoft VS Code\Code.exe
  • ファイアウォールの/usr/lib/apt/methods/http実行可能ファイルがaptを使用してパッケージをダウンロードできるようにします。 Ubuntu 18.04の場合、パスは次のとおりです。

  • VScodeを実行し、 リモート-WSL 拡張機能をインストールします。コマンドプロンプトでWSLからVSCodeを起動します。実行中のディストリビューションに接続し、バックエンドをサイレントインストールするように求められます。

%LOCALAPPDATA%\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\usr\lib\apt\methods\http
  • ファイアウォールのnode実行可能ファイルがリモートのフロントエンドとバックエンドの間で接続できるようにします-WSL拡張。 WSLで、ユーザーのホームフォルダー~/.vscode-server-insiders/binに移動し、次のフォルダー名を取得します(実際には、コミットハッシュのような非常に大きな暗号番号)。完全なWindowsスタイルのパスは以前と同じになります。
%LOCALAPPDATA%\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\test\.vscode-server-insiders\bin\0f73473c08055054f317c1c94502f7f39fdbb164\node

ここでVSCodeを再起動すると、動作する可能性があります。完全なフォルダパスは、GNU/Linuxディストリビューション名によって異なります。フルパスでスラッシュを混在させないでください。そのパスを取得する方法については、 このQ&A を参照してください。

参考文献:

2
Biswapriyo