Arch Linuxで証明書ベースの透過プロキシを処理する方法は?

Arch Linuxで証明書ベースの透過プロキシを処理する方法は?

職場にArch Linux VMが設定されており、会社は自己署名証明書を持つ透明(パススルー)プロキシを使用し、認証が必要です。インストールを試みるなど、パッケージを介してパッケージをインストールしようとするたびに、pacman次のエラーが発生します。lynx

エラー:Mirrors.kernel.orgで「lynx-2.8.7-6-x86_64.pkg.tar.xz」ファイルの取得に失敗しました:SSL証明書の問題:証明書チェーンの自己署名証明書

で定義したすべての画像に対してこのエラーが発生します/etc/pacman.d/mirrorlist。他のHTTP / Sクライアント(たとえば)を使用しようとすると同様の問題がありますが、curlFTPには問題はありません(主に当社ではポート80と443のみを監視しているため)。

私が試したことは...

  • 会社の自己署名CA証明書をに/usr/share/ca-certificates入れます。/etc/ca-certificates
  • 私の資格情報に設定http_proxyし、https_proxy会社のプロキシサーバーをポイントします。
  • プロキシサーバーを管理している人と話をしましたが、彼はLinuxについて何も知らないので、どこから始めるべきかわかりません。

現在、私は何かをインストールしたりインターネットに接続したりする必要があるときにこの問題を解決するためにホームサーバーのSSHトンネルを開きます。

以下は出力ですopenssl s_client -CApath /etc/ca-certificates -showcerts -connect mirrors.kernel.org:443

接続済み(00000003)
深さ = 0 C = アメリカ、ST = カリフォルニア、L = サンノゼ、O = Linux カーネル組織、CN = *.kernel.org
検証エラー:num = 20:ローカル発行者証明書を取得できません。
検証リターン: 1
深さ = 0 C = アメリカ、ST = カリフォルニア、L = サンノゼ、O = Linux カーネル組織、CN = *.kernel.org
検証エラー:num = 27:証明書を信頼できません。
検証リターン: 1
深さ = 0 C = アメリカ、ST = カリフォルニア、L = サンノゼ、O = Linux カーネル組織、CN = *.kernel.org
検証エラー:num = 21:最初の証明書を確認できません。
検証リターン: 1
---
証明書チェーン
 0 秒:/C=US/ST=California/L=San Jose/O=Linux カーネル組織/CN=*.kernel.org
   i:/C=US/ST=MyCompanyState/L=MyCompanyCity/O=MyCompanyName/OU=IT/CN=MyCompanyProxyServer/[Eメール保護]
-----証明書の開始----
...ㅋㅋㅋㅋㅋㅋㅋㅋ
-----証明書の終わり----
---
サーバー証明書
タイトル=/C=US/ST=カリフォルニア/L=サンノゼ/O=Linuxカーネル組織/CN=*.kernel.org
発行者=/C=US/ST=MyCompanyState/L=MyCompanyCity/O=MyCompanyName/OU=IT/CN=MyCompanyProxyServer/[Eメール保護]
---
クライアント証明書CA名が送信されませんでした。
---

ノート単にFTPミラーリングを試すこともできますが、他のHTTP / Sアプリケーション(例)の問題は実際には解決されませんcurl

ベストアンサー1

提供された情報によると、サーバー証明書を/etc/ca-certificatesファイルに追加したようです。 CA証明書を追加する必要があります。

実行するコマンドには、openssl s_client -showcerts最初の証明書の後に少なくとも1つの追加証明書を含める必要があります。これらはあなたが興味を持っている人です。
最初の証明書の後に複数の証明書がある場合は、両方の証明書をファイルに追加する必要がありますca-certificates。これはすべて、プロキシに認証局を設定する方法によって異なります。しかし、どちらも必要なく、とにかく両方を追加すると、何の害もありません。

ただし、openssl s_client -showcerts最初の証明書以外に証明書が表示されない場合、問題が発生します。これは、プロキシが署名証明書を送信しなかったことを意味します。ネットワークチームに連絡してお問い合わせください。セキュリティの観点から見ると、彼らがあなたにそれを提供しない理由はまったくありません(これは保護する必要があります。)


たとえば、次のような結果が得られます(たとえば、SSLプロキシの背後にないため、実際の証明書を取得しますが、概念はそのままです)。

#openssl s_client -showcerts -connectmirrors.kernel.org:443
接続済み(00000003)
深さ=2 C=US, O="thawte, Inc.", OU=認証サービス, OU="(c) 2006 thawte, Inc. - 許可された使用のみ", CN=thawte 基本ルート CA
検証エラー:num = 20:ローカル発行者証明書を取得できません。
検証リターン:0
---
証明書チェーン
 0 秒:/C=US/ST=California/L=San Jose/O=Linux カーネル組織/CN=*.kernel.org
   i:/C=US/O=Thawte, Inc./CN=Thawte SSL CA
-----証明書の開始----
MIID2zCCAsOgAwIBAgIQZ7xPhWo7v0ZlPnI5mJWMazANBgkqhkiG9w0BAQUFADA8
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMVGhhd3RlLCBJbmMuMRYwFAYDVQQDEw1U
aGF3dGUGU1NMIENBMB4XDTEyMDEwMzAwMDAwMFOXDTE0MDQwMzIzNTk1OVowdDEL
MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcuCFNhbiBK
b3NLMSYwJAYDVQQKFB1UaGUgTGludXggS2VybmVsIE9yZ2FuaXphdGlvbjEVMBMG
A1UEAxQMKi5rZXJuZWwub3JnMIIBijANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEApSbajGUzM+C1Oz6CzyPmek9HH03ToicZeHxOlBfS7yyvIyybxTCBrmkItyc+
sf6b5g2Zf8IPwloaj+ACQaLfm0OOaFrvHERIN1t0pitvmeSDI6BXVYq0eSLEPpSG
YC/3AMdKE21NO1jmL7mtsCB8CW4NAAvy97HkvsPsTPNOp6d/LtcIMYRS347RFgRj
O/J1PU05EEjcpXdy6eCyJLwi2AFLgfBzjS+0UK4tq01HFalULfO/akjC59WG+qrc
P/Yi/1TM8bE2mun1mcuCP7bmyZFDfrGnO2TYcZ/s7z4bTUmEixR6kTdj1foqi7Xk
svko9dXCiUZj4c692ZKZXE+gJwIDAQABo4GgMIGdMAwGA1UdEweb/wQCMAAwOgYD
VR0fBDMwMTAvoC2gK4YpaHR0cDovL3N2ci1vdi1jcmwudGhhd3RlLmNvbS9UaGF3
dGVPVi5jcmwwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDIGCCsGAQUF
BwEBBCYwJDAiBggrBgEFBQcwaAYYWaHR0cDovL29jc3AudGhhd3RlLmNvbTANBgkq
HKIG9w0BAQUFAAOCAQEAd7mKHpW1mCB1fGuvR44iX83PmSy3BVEpvOlnH1zNSU/Y
2zMmKDbXqAJTY6t20Yq/GpjW3BA2G4xEA6i64WAGZcSmXfc/NDOSh0i5lTrCofCG
3tuts9HTmHJLfeAz9cZiT4rc4ROMV4K17/Uw81UIid952M/4b6OvhaCu5OSnvDUI
3Z6OUy+AuJHbwEyB5bGOJ/mqVKUztgUK17bJiwDhwZ4Q8PT6YKUj5NgPcG6cUKxY
HK6yxvoqH/s1DQJB3JHDSFVgY47ECmoHyQ5MvJN+naNrZJUIH0RTmmHNbQH772W7
m8I66jiDhXTd6+4v8DipvHJOSEv7ebG0Jf6gv7lc6w==
-----証明書の終わり----
 1秒:/C=US/O=Thawte, Inc./CN=Thawte SSL CA
   i:/C=US/O=thawte, Inc./OU=認証サービス部門/OU=(c) 2006 thawte, Inc. - 承認された目的でのみ使用/CN=thawte デフォルトルート CA
-----証明書の開始----
MIIEbDCCA1SgAwiBAgIQTV8sNAiyTCDNbVB+JE3J7DANBgkqhkiG9w0BAQUFADCB
qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf
Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMPIDIw
MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV
BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMTAwMjA4MDAwMDAwWhcNMjAw
MjA3MjM1OTU5WjA8MQswCQYDVQQGEwJVUzeEVMBMGA1UEChMMVGhhd3RlLCBJbmMu
MRYwFAYDVQQDEw1UaGF3dGUgU1NMIENBMIIBIJANBgkqhkiG9w0BAQEFAAOCAQ8A
MIIBCgKCAQEAmeSFW3ZJfS8F2MWsyMip09yY5tc0pi8M8iIm2KPJFEyPBaRF6BQM
WJAFGrfFwQalgK+7HulrUjSIw1nn72vEJ0GMK2Yd0OCjl5gZNEtB1ZjVxwWtouTX
7QytT8G1sCH9PlBTssSQ0NQwZ2ya8Q50xMLciuiX/8mSrgGKVgqYMrAAI+yQGmDD
7bs6yw9jnw1EyVLhJZa/7VCViX9WFLG3YR0cB4w6LPf/gN45RdWvGtF42MdxaqMZ
pzJQIenyDqHGEwNESNFmqFJX1xG0k4vlmZ9d53hR5U32t1m0drUJN00GOBN6HAiY
XMRISstSoKn4sZ2Oe3mwIC88lqgRYke7EQIDAQABo4H7MIH4MDIGCCsGAQUFBweb
BCYwJDAiBggrBgEFBQcwAYYWaHR0cDovL29jc3AudGhhd3RlLmNvbTASBgNVHRMB
Af8ECDAGAQH/AgEAMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwudGhhd3Rl
LmNvbS9UaGF3dGVQQ0EuY3JsMA4GA1UDDweb/wQEAwIBBjAoBgNVHREEITAfpB0w
GzEZMBcGA1UEAxMQVmVyaVNpZ25NUEtJLTItOTAdBgNVHQ4EFgQUp6KDuzRFQD38
1TBPERk+oQGf9tswHwYDVR0jBBgwFoAUe1tFz6/Oy3r9MZIaarbzRutXSFAwDQYJ
KoZIhvcNAQEFBQADggEBAIIGOBsyJUW11cmh/NyNNvGclYnPtOW9i4lkaU+M5en
S+UV+yV9Lwdh+m+DdExMU3IgpHrPUVFWgYiwbR82LMgrsYiZwf5Eq0hRfNjyRGQq
2HGn+xov+RmNNLIjv8RMVR2OROiqXZrdn/0Dx7okQ40tR0Tb9tiYyLL52u/tKVxp
EvrRI5YPv5wN8nlFUzeaVi/oVxBw9u6JDEmJmsEj9cIqzEHPIqtlbreUgm0vQF9Y
3uuVK6ZyaFIZkSqudZ1OkubK3lTqGKslPOZkpnkfJn1h7X3S5XFV2JMXfBQ4MDzf
huNMrUnjl1nOG5srztxl1Asoa06ERlFE9zMILViXIa4=
-----証明書の終わり----
 2秒:/C=US/O=thawte, Inc./OU=認証サービス部門/OU=(c) 2006 thawte, Inc. - 承認された使用のみ/CN=thawte デフォルトルート CA
   i:/C=ZA/ST=ウェスタンケープ/L=ケープタウン/O=Thawteコンサルティング cc/OU=認証サービス/CN=Thawte Premium Server CA/[Eメール保護]
-----証明書の開始----
MIIERTCCA66gAwiBAgIQM2VQCHmtc+IwueAdDX+skTANBgkqhkiG9w0BAQUFADCB
zjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJ
Q2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUGQ29uc3VsdGluZyBjYzEoMCYGA1UE
CxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhh
d3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNl
cnZlckB0aGF3dGUuY29tMB4XDTA2MTExNzAwMDAwMFOXDTIwMTIzMDIzNTk1OVow
gakxCzAJBgNVBAYTALVTMRUwEwYDVQQKEwx0aGF3dGUsIEluYy4xKDAmBgNVBAST
H0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xODA2BgNVBAsTLyhjKSAy
MDA2IHRoYXd0ZSwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYD
VQQDExZ0aGF3dGUgUHJpbWFyeSBSb290IENBMIIBIJANBgkqhkiG9w0BAQEFAAOC
AQ8AMIIBCgKCAQEArKDw+4BZ1JzHpM+doVlzCRBFDA0sbmjxbFtIaElZN/wLMxnC
d3/MEC2VNBzm600JpxzSuMmXNgK3idQkXwbAzESULI0CYm/rWT0RjSiaXISQEHON
vXRmL2o4oOLVVETrHQefB7pv7un9Tgsp9T6EoAHxnKv4HH6JpOih2HFlDaNRe+68
0iJgDblbnd+6/FFbC6+Ysuku6QToYofeK8jXTsFMZB7dz4dYukpPymgHHRydSsbV
L5HMfHFyHMXAZ+sy/cmSXJTahcCbv1N9Kwn0jJ2RH5dqUsveCTakd9h7h1BE1T5u
KWn7OUkmHgmlgHtalevoJ4XJ/mH9fuZ8lx3VnQIDAQABo4HCMIG/MA8GA1UdEweb
/wQFMAMBAf8wOwYDVR0gBDQwMjAwBgRVHSAAMCgwJgYIKwYBBQUHAgEWGmh0dHBz
Oi8vd3d3LnRoYXd0ZS5jb20vY3BzMA4GA1UdDweb/wQEAwiBBjAdBgNVHQ4EFgQU
e1tFz6/Oy3r9MZIaarbzRutXSFAwQAYDVR0fBDkwNzA1oDOgMYYvaHR0cDovL2Ny
BC50aGF3dGUuY29tL1RoYXd0ZVByZW1pdW1TZXJ2ZXJDQS5jcmwwDQYJKoZIhvcN
AQEFBQADgYEAhKhMyT4qvJrizI8LsiV3xGGJiWNa1KMVQNT7Xj+0Q+pjFytrmXSe
Cajd1FYVLnp5MV9jllMbNNkV6k9tcMq+9oKp7dqFd8x2HGqBCiHYQZl/Xi6Cweiq
95OBBaqStB+3msAHF/XLxrRMDtdW3HEgdDjWdMbWj2uvi42gbCkLYeA=
-----証明書の終わり----
---
サーバー証明書
タイトル=/C=US/ST=カリフォルニア/L=サンノゼ/O=Linuxカーネル組織/CN=*.kernel.org
発行者=/C=US/O=Thawte, Inc./CN=Thawte SSL CA
---
クライアント証明書CA名が送信されませんでした。
---
SSLハンドシェイクは3566バイトを読み、636バイトを書きました。
---
新機能TLSv1/SSLv3、パスワードはRC4-SHAです。
サーバー公開鍵は2048ビットです。
安全な再交渉支援
圧縮:なし
拡張:なし
SSLセッション:
    プロトコル: TLSv1
    パスワード:RC4-SHA
    セッションID:EAB5C93513AA8829036C7BB9E3F74D99076C8A339EB220832F76DF73D52D0B22
    セッションID-ctx:
    マスターキー: 0A599E2D1CCAA8249E50871FDF03A2137BA034BCB20FA691D1413822BE08E15303CB0F59CDEC0376D670E08632EF0D46
    主なパラメータ:なし
    PSK ID:なし
    PSK ID通知:なし
    SRPユーザー名:なし
    TLSセッションチケット:
    0000 - ac 28 d2 81 da 5e b9 7f-43 52 ab e8 2c b0 ac 1d .(...^..CR..,...
    0010 - c0 27 92 cb 5e 0e 1e 36-e4 77 34 bf 34 f8 cb 2f .'..^..6.w4.4../
    0020 - 04 af 1a 9b ea b3 9e 6f-32 44 4b ce d1 b4 2b 42 .......o2DK...+B
    0030 - 55 a8 e3 ec 9a 6a 76 5d-c0 84 e0 aa 20 29 ae ac U....jv].... )..
    0040 - 7d 45 2b 3b 56 3c 2e 4b-d3 69 60 c8 fb 67 36 07 }E+;V...;.]p.....
    00a0 - de 09 7d bf 3f b9 2c 9c-af 5d b1 af b2 9b bc 7a ..}.?.,..].....z
    00b0 - 5e b3 92 26 02 3a 0e 47-c9 4b 10 6c 5b f4 2f c3 ^..&.:.GKl[./.

    開始時間: 1380663897
    タイムアウト:300(秒)
    確認戻りコード:20(ローカル発行者証明書を取得できません)
---

証明書2(最後の証明書)を追加します。証明書 1 はチェーン証明書であり、証明書 2 によってチェーン証明書として認証されるため、証明書は不要です。しかし、証明書1を追加しても大丈夫です。

おすすめ記事