[解決済み] CentOS で非 root ユーザーの SSL 接続で cURL が動作しない(エラー#77)。
質問
つい最近、私のウェブサーバの https:// アドレスへの curl リクエストが動作しなくなりました。 少し調べてみたところ、どうやらウェブサーバーが実行しているユーザーの問題であるようです。
サーバーにrootでSSH接続し、amp;callすると
curl -I -v https://google.com
... 次のような応答が返ってきました...
* About to connect() to google.com port 443 (#0)
* Trying 173.194.67.113... connected
* Connected to google.com (173.194.67.113) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
* SSL connection using SSL_RSA_WITH_RC4_128_SHA
* Server certificate:
* subject: CN=*.google.com,O=Google Inc,L=Mountain View,ST=California,C=US
* start date: May 22 15:50:20 2013 GMT
* expire date: Oct 31 23:59:59 2013 GMT
* common name: *.google.com
* issuer: CN=Google Internet Authority,O=Google Inc,C=US
> HEAD / HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> Host: google.com
> Accept: */*
しかし、cPanelアカウント(ウェブサーバー経由で実行する場合にも使用)でログインすると、次のようになります。
* About to connect() to google.com port 443 (#0)
* Trying 173.194.67.101... connected
* Connected to google.com (173.194.67.101) port 443 (#0)
* Initializing NSS with certpath: none
* NSS error -5978
* Closing connection #0
* Problem with the SSL CA cert (path? access rights?)
curl: (77) Problem with the SSL CA cert (path? access rights?)
この問題に対する明確な答えは見つかっていません。ホスティング会社は、先週までうまくいっていたのに、quot;Out of support"であるとして支援を拒否しています。
で言及されているのを発見しました。 http://curl.haxx.se/docs/sslcerts.html その
libcurlがNSSサポート付きでビルドされている場合、OSのディストリビューションに依存します。 システムワイドなCAを使用するためには、おそらくいくつかの追加手順が必要です。 証明書データベースです。RedHat には libnsspem.so という追加モジュールが同梱されており、このモジュールによって NSS は OpenSSL PEM CA バンドルを読み込むことができます。このライブラリはOpenSuSEでは欠落しており これがないと、NSSは独自の内部フォーマットでしか動作しない。また、NSS は新しい データベース形式です。 https://wiki.mozilla.org/NSS_Shared_DB "です。
...しかし、私のCentOSサーバーでこれをシステム全体で動作させる方法についての情報は見つかりませんでした。
情報
curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
なぜ突然このような現象が起きたのか、また、どうすればこの現象を解決できるのか、どなたか教えていただけませんか?
ありがとうございます。
解決方法は?
問題は、スクリプトがcPanelの "email piped to script" から実行されていて、ユーザーとして実行されていたため、ユーザーの問題であり、Webサーバーには全く影響を与えていなかったことが判明しました。
etc/pkiディレクトリにアクセスできない原因は、そのユーザーがjailed sshアクセスしか持っていなかったためです。 フルアクセスを許可したら、すべてうまくいきました。
でもレミさん、情報ありがとうございました。
関連
-
[解決済み] cURLを使用したCORSリクエストのデバッグ方法は?
-
[解決済み] LDAPのグループメンバーシップをcurlで問い合わせるには?
-
[解決済み] curlがプロキシを無視するようにするにはどうしたらいいですか?
-
[解決済み] cURL -d .パラメータ
-
[解決済み] Node.jsでcURLと同等?
-
[解決済み] cURL呼び出しによるHTTPリクエストを使用してヘッダーを送信する方法は?
-
[解決済み] cURLを使用したauthorizationヘッダーの設定方法
-
[解決済み] Googleドライブから大きなファイルをwget/curlする
-
[解決済み】cURLを使用して、リクエストとレスポンスタイムを一度に測定する方法は?
-
[解決済み】curlのレスポンスボディの末尾に自動的に改行が追加される。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] .tar.gzファイル送信時にCurlエラー56 "Failure when receiving data from peer" が発生する。
-
[解決済み] HTTPSのURLにアクセスしようとしているときに、cURLを使用して証明書を処理するにはどうすればよいですか?
-
[解決済み] cURLを使用したCORSリクエストのデバッグ方法は?
-
[解決済み] cURLを使用して、リクエスト時間とレスポンス時間を一度に測定するにはどうすればよいですか?
-
[解決済み] curlがプロキシを無視するようにするにはどうしたらいいですか?
-
[解決済み] Chromeを使うのと全く同じようにcurlを使ってGETリクエストを取得する方法とは?
-
[解決済み] cURLを使用したauthorizationヘッダーの設定方法
-
[解決済み] ElasticSearchサーバの全インデックスを一覧表示しますか?
-
[解決済み】cURLを使用して、リクエストとレスポンスタイムを一度に測定する方法は?
-
[解決済み】PostManで特定のCURLをシミュレートしてみる