ソックス5プロキシを使用してChromeを設定したいです。
chrome://linux-proxy-config/
Chromeに入力するには、chrome://linux-proxy-config/
次の内容を含むページが表示されます。
サポートされているデスクトップ環境でGoogle Chromeを実行している場合は、システムプロキシ設定が使用されます。ただし、システムがサポートされていないか、システム構成を開始できません。
ただし、まだコマンドラインで設定できます。
google-chrome
フラグと環境変数の詳細については、manを参照してください。
コンソールに次のコマンドを入力します。
google-chrome-stable --proxy-server="socks5://127.0.0.1:1080
上記のコマンドの2つの効果:
効果1:今すぐソックス5プロキシを介してインターネットにアクセスできるようになりました。
effect2: 警告メッセージが多すぎます。
"Fontconfig warning: "/etc/fonts/fonts.conf", line 100: unknown element "blank" [3873:3960:0808/102301.399211:ERROR:object_proxy.cc(619)] Failed to call method: org.freedesktop.Notifications.GetCapabilities: object_path= /org/freedesktop/Notifications: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files [7:13:0808/102302.782729:ERROR:command_buffer_proxy_impl.cc(107)] ContextResult::kTransientFailure: Shared memory region is not valid [3873:4069:0808/102302.788747:ERROR:object_proxy.cc(619)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files [3873:4069:0808/102302.789045:ERROR:object_proxy.cc(619)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
effect2を修正したいです。つまり、コマンドがバックグラウンドで自動的に実行されるようにしたいのです。
google-chrome-stable --proxy-server="socks5://127.0.0.1:1080 &
Effect2 はまだ存在しますが、バックグラウンドで実行できず、コンソールに警告メッセージが表示されます。
他のことを試してみてください:
sudo gvim /usr/share/applications/google-chrome.desktop
#replace the `Exec=/usr/bin/google-chrome-stable --incognito` with
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://127.0.0.1:1080"
ロゴ付きのChromeを起動するとChromeが開きますが、プロキシを使用してオンラインにアクセスできなくなりましたsocks5://127.0.0.1:1080
。どうすれば修正できますか?
答え1
アクションを実行する方法が見つかりましたが、警告が多すぎるのが唯一の関心事である場合は、目的の方法でアクションを実行してメッセージを削除できます。
<your command> 2> /dev/null
あなたはなりますリダイレクト ファイル記述子(FD)#2、stderrは「ブラックホール」にリダイレクトされます。 stdout(FD#1)に送信されたメッセージを削除することもできますが、これはあなたのような状況では一般的ではありません。あなたはあなたが受ける混乱の量を調べなければなりません。したがって、次のものが必要です(stderrのみリダイレクト)。
google-chrome-stable --proxy-server="socks5://127.0.0.1:1080" 2> /dev/null &
または(stderrとstdoutをリダイレクトします。これらは同じコマンドの代替形式です)
google-chrome-stable --proxy-server="socks5://127.0.0.1:1080" 2> /dev/null 1>&2 &
google-chrome-stable --proxy-server="socks5://127.0.0.1:1080" > /dev/null 2>&1 &
この構文は、2>&1
FD#2をFD#1がある場所にリダイレクトすることを意味します。デフォルトのFDは#1なので、>
と同じです1>
。
まれに、上記の情報よりも多くの情報が必要な場合、または単に好奇心がある場合です。
https://stackoverflow.com/questions/5256599/what-are-file-descriptors-explained-in-simple-terms
答え2
google-chrome.desktop
ファイルに複数のExec
エントリがあり、変更したエントリが実際に使用されたエントリではないため、編集に失敗した可能性があります。
使用Debian 用 Chrome パッケージgoogle-chrome.desktop
3つの異なるセクション(グループ、Exec
freedesktop.orgの名称):
$ grep -E '^Exec|^\[|^Name=' /usr/share/applications/google-chrome.desktop
[Desktop Entry]
Name=Google Chrome
Exec=/usr/bin/google-chrome-stable %U
[Desktop Action new-window]
Name=New Window
Exec=/usr/bin/google-chrome-stable
[Desktop Action new-private-window]
Name=New Incognito Window
Exec=/usr/bin/google-chrome-stable --incognito
この--incognito
オプションを含むオプション(おそらく編集したオプション)は、コンテキストメニューで「新しいシークレットウィンドウ」を選択した場合にのみ実行されます(例:GNOMEアクティビティでChromeアイコンを右クリックした後など)。
システム内のすべてのユーザーの設定を変更することが目的ではない限り、独自のカスタムバージョンを作成することをお勧めしますgoogle-chrome.desktop
。
$ cp /usr/share/applications/google-chrome.desktop ~/.local/share/applications/
その後Exec
、アイテムを編集し、少なくとも[Desktop Entry]
グループから(Exec
どのメニュー項目を使用して実行しても、Chromeが同じように機能するように他の項目を並べ替えることができます):
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://proxyURL:proxyPORT" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE proxyURL" %U
指摘したとおりドミニク・マティス中コメント--host-resolver-rules
、ChromeのDNSプリフェッチャーがプロキシ設定をバイパスしないようにするオプションを追加する必要があるかもしれません。Chrome ドキュメント。
proxyURL
必要に応じてproxyPORT
調整してください。設定proxyURL
と--proxy-server
オプションを忘れないでください--host-resolver-rules
。
プロキシを設定せずにデフォルトの開く操作でChromeを実行するには、デフォルトの[Desktop Entry]
項目をExec
そのままにしてください。行動代わりに。あなたが必要です
Actions
グループのキーに新しいジョブの名前を追加します[Desktop Entry]
。- 新しいワークグループを追加します。
[Desktop Entry]
...
Actions=new-window;new-private-window;new-proxied-window;
...
[Desktop Action new-proxied-window]
Name=New Proxied Window
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://proxyURL:proxyPORT" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE proxyURL" %U
Chromeアイコンを右クリックすると、[新しいエージェントウィンドウ]がオプションとして表示されます(ログアウト/ログインが必要な場合があります)。同時に実行されるすべてのChromeインスタンスは、次のものを使用しない限り、最初に開くインスタンスと同じプロキシ設定を共有します。--user-data-dir
オプション。
答え3
私は以下について書いた。Google Chromeがプロキシ設定の影響を受けるさまざまな方法。 Chromeでプロキシを設定しないでください。代わりにオペレーティングシステムの設定を使用してください。
GNOMEを使用している場合は、以下を試してください。gsettings
gsettings set org.gnome.system.proxy.http host "myproxy.server.com"
gsettings set org.gnome.system.proxy.http port "3128"
wget
インターネットからファイルを使用またはダウンロードできますかcurl
?次のコマンドはindex.html
Google ホームページからファイルを生成しますか?
wget https://www.google.com
問題がSOCKSプロキシに接続し、他のアプリケーションに影響を与える場合は、次を試してください。プロキシチェーンまたはパーカーエージェント。
$ proxychains4 google-chrome
答え4
Cat/usr/share/applications/google-chrome.desktop
[Desktop Entry]
Name=Google Chrome
Icon=/usr/share/icons/hicolor/16x16/apps/google-chrome.png
Terminal=false
Type=Application
Categories=Network;WebBrowser;
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://127.0.0.1:1080" 2> /dev/null 1>&2 &