備忘録 gem install で openssl のエラー

ERROR:  Loading command: install (LoadError)
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass
  • anaconda3 がインストールされてて、その openssl を参照していてその openssl のバージョンが不正でエラー出てるっぽい
  • ~/.config/fish/fish_variables から anaconda3 関連のパスを削除
  • set -U fish_user_paths $fish_user_paths /usr/local/opt/openssl/bin
  • rbenv uninstall 2.6.1
  • rbenv install 2.6.1

参考

Yosemiteに変えたらgem installできなくなった件 - Qiita

brew link openssl --forceができない問題 - Qiita

AWS SAM CLI をインストールするまで

https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/serverless-sam-cli-install-mac.html

ここを参考

Docker で作った apache に SSL/TLS で接続して通信の中身を Wireshark で見る

k6i.hateblo.jp

のつづき。

この記事の段階ではまだ、通信の中は見れません。

下記の記事を参考にさせていただいて、見れるように設定していきます。 ozuma.hatenablog.jp

10行目までは前回までと同じ。

SSLSessionCacheディレクティブに"none" に設定する

-e '/^SSLSessionCacheTimeout/d' \
-e 's/^SSLSessionCache.*$/SSLSessionCache none/g' \

DH鍵交換を使用しない

-e 's/^SSLCipherSuite.*$/SSLCipherSuite kRSA/g' \

これらを conf/extra/httpd-ssl.conf に設定する。

完成したDockerfile

SSL/TLS を使用してapacheにアクセスして通信の中身を見る

これで SSL/TLS 通信の中身が見れるようになりました。

Vault の /secret パスは version2 なんだなぁ

Vault の Getting Started をやっている。

Vault Curriculum - HashiCorp Learn

/secret のパスに例えば

vault write secret/hoge foo=piyo

とやると下記エラーが表示される。

Error writing data to secret/hoge: Error making API request.

URL: PUT http://127.0.0.1:8200/v1/secret/hoge
Code: 404. Errors:


WARNING! The following warnings were returned from Vault:

  * Invalid path for a versioned K/V secrets engine. See the API docs for the
  appropriate API endpoints to use. If using the Vault CLI, use 'vault kv put'
  for this operation.

「そんなパスないから、vault kv put 使えよ」 と言っている。

put を使ってやってみる。

vault kv put secret/hoge foo=piyo
Key              Value
---              -----
created_time     2019-03-19T15:10:19.246453Z
deletion_time    n/a
destroyed        false
version          1

正常にできる。

どうも、デフォルトである /secret のパスは v2 の Secrets Engine になっているみたい。 stackoverflow.com

www.vaultproject.io

vault secrets enable -path=kv kv

とかで、自分で追加した Secrets Engine は v1 になっているみたい。

vault secrets enable -version=2 -path=kv2 kv

とかすると v2 になる。

コマンドから version を確認する手段がわからなくて、下記URLから確認したら version が確認できた。 http://localhost:8200/ui/vault/secrets

f:id:k6i:20190320002750p:plain

SSL/TLS を使って Apache にアクセスするサンプルを Docker で作成する

hub.docker.com

上記の公式の手順を順に行えばよい。

証明書は openssl を使用してとりあえず作成。 下記サイトを参考にした。 ozuma.hatenablog.jp

作成した Dockerfile はコレ

https://localhost/ にアクセスすると”保護されていない通信"だけどページが表示される。