※当サイトの記事には、広告・プロモーションが含まれます。

Squidに限らないと思うがProxyの設定によってはポート付きのリクエストが失敗する罠

gigazine.net

近年では、大麻草に含まれる「カンナビジオール(CBD)」という化学物質を使った健康食品や化粧品などが人気を集めています。そんなCBDが、ブラジルで一般的に自生する大麻草とは別の植物から発見され、さらなる生産拡大への期待が高まっています。

大麻とはまったく違う植物から大麻化合物のCBDが発見され関連製品の生産拡大への期待が高まる - GIGAZINE

⇧ 人工的に栽培できることが分かれば、継続的に量産体制を構築できそうなんだが、そのあたりってどうなんだろうか?

リオデジャネイロ連邦大学分子生物学者、ロドリゴ・ネト氏らの研究チームはそんなCBDが南米の国の多くで自生する植物「トレマ・ミクランサム」から発見されたことを報告しています。科学系メディアのScienceAlertによると、トレマ・ミクランサムは基本的に雑草と見なされているとのこと。

大麻とはまったく違う植物から大麻化合物のCBDが発見され関連製品の生産拡大への期待が高まる - GIGAZINE

⇧ 雑草と見なされていたものに価値があると人口に膾炙するようになったら、枯渇するような心配は無いんかね?

Squidとは

英語版のWikipediaによりますと、

It has a wide variety of uses, including speeding up a web server by caching repeated requests, caching World Wide Web (WWW), Domain Name System (DNS), and other network lookups for a group of people sharing network resources, and aiding security by filtering traffic. 

https://en.wikipedia.org/wiki/Squid_(software)

Although used for mainly HTTP and File Transfer Protocol (FTP), Squid includes limited support for several other protocols including Internet Gopher, Secure Sockets Layer (SSL), Transport Layer Security (TLS), and Hypertext Transfer Protocol Secure (HTTPS). 

https://en.wikipedia.org/wiki/Squid_(software)

Squid does not support the SOCKS protocol, unlike Privoxy, with which Squid can be used in order to provide SOCKS support.

https://en.wikipedia.org/wiki/Squid_(software)

⇧ とありますと。

github.com

日本語版のWikipediaによりますと、

Squid(スクウィッド)はプロキシ (Proxy) サーバ、ウェブキャッシュサーバなどに利用される自由ソフトウェアGPLでライセンスされている。 

Squid (ソフトウェア) - Wikipedia

Squidの用途は、重複リクエストに対したキャッシュ応答によるウェブサーバの高速化や、ネットワーク資源を共有する人々が行うWorld Wide WebDNSなどの様々なネットワーククエリのキャッシュなど、多岐にわたる。

Squid (ソフトウェア) - Wikipedia

元来はUnix系のコンピュータで動作させる目的で設計されている。

Squid (ソフトウェア) - Wikipedia

⇧ とのこと。

⇧ 図の意味はよく分からんのだが...

Squidに限らないと思うがProxyの設定によってはポート付きのリクエストが失敗する罠

で、例のごとく、「Python」の「HashiCorp Vault」の「API」用の「HTTP Client」である「HVAC(HashiCorp Vault API Client)」を使っていての話になるのだが、前回、

ts0818.hatenablog.com

⇧「Proxy」の使用例について「HVAC(HashiCorp Vault API Client)」は公式のドキュメントで全く言及してくれていない困ったちゃんなことが分かったのだが、

hvac.readthedocs.io

⇧ 公式のドキュメントで何の説明もなく「8200」番のポートを指定していたので、ポートは必須なんだ、と思っていたらば「然にあらず」という...

「Proxy」の時といい、説明が無さ過ぎて忖度しないといけないのが辛い...

話が脱線しましたが、

shibainu55.hatenadiary.org

HTTPであれば「Safe_ports」として定義されているポートレンジ(1025-65535)であれば、デフォルト設定のままプロキシの利用が可能である。ただしSSLの場合、標準利用ポートの443番以外を使用する場合には「Safe_ports」とは別に「SSL_ports」に対象ポートが含まれている必要がある。つまり、デフォルトでは443以外のSSLサイトはプロキシ利用できないことになる。

443以外のSSLポートをSquidでプロキシするには - shibainu55日記

⇧ 上記サイト様によりますと、「リバースプロキシ」で転送される先のURLのポートが「443」以外は、「Squid」の設定ファイルにポートの設定が追加されるらしい。

「HashiCorp Vault」のデフォルトのポートは「8200」なので、「Squid」の設定ファイルにポートの設定が追加されていると思われるので、「curl」などのリクエストでポート付きのURLがエラーになるということかと。

Squid」の設定ファイルとの関係が分からないので推測になりますが...

「Proxy」の設定次第では、ポート付きのURLでリクエストするとエラーになるっぽいので気を付けましょう。

つまり、

  • ProxyのURL
    curlでポート指定が必要
  • 転送先URL
    curlでポート指定がNG

ってことになるんかね?

例えば、curlで「Proxy」ありでGETするような場合、

■エラーになる

curl -x <ProxyのURL>:<ProxyのURLのPort番号> <転送先のURL>:<転送先のURLのPort番号>    

■エラーにならない

curl -x <ProxyのURL>:<ProxyのURLのPort番号> <転送先のURL>

⇧ というような感じで、転送先のURLにポートを付けるとエラーになるってことですな。

まぁ、「HVAC(HashiCorp Vault API Client)」の公式のドキュメントで一言説明を追加してくれれば済む話だとは思うのだけど...

毎度モヤモヤ感が半端ない…

今回はこのへんで。