CentOS7からEFSへマウントします。
AmazonLinux2版はこちら
EFS準備
前回参照
EC2側準備
前回同様以下の2パターン
1.amazon-efs-utils パッケージを使用する
2.nfs-utils を使用する
amazon-efs-utils パッケージを使用する場合
yumですんなり入らないです。ので以下コピペ
sudo yum -y install git git clone https://github.com/aws/efs-utils cd efs-utils sudo yum -y install rpm-build sudo make rpm sudo yum -y install ./build/amazon-efs-utils*rpm
・マウントする
sudo mount -t efs [ファイルシステムID]:/ /mnt/efs
・EFS経路の暗号化を行う場合
少々面倒
AmazonLinux2同様にそのまましようとしたら以下エラーが表示される
WARNING: Your client lacks sufficient controls to properly enforce TLS. Please upgrade stunnel, or disable "stunnel_check_cert_hostname" in /etc/amazon/efs/efs-utils.conf. See https://docs.aws.amazon.com/console/efs/troubleshooting-tls for more detail.
stunnelをバージョンアップしろとのこと
もともとのバージョンはこれ
$ /bin/stunnel --version Clients allowed=500 stunnel 4.56 on x86_64-redhat-linux-gnu platform Compiled/running with OpenSSL 1.0.1e-fips 11 Feb 2013 Threading:PTHREAD Sockets:POLL,IPv6 SSL:ENGINE,OCSP,FIPS Auth:LIBWRAP Reading configuration from file --version Cannot read configuration
バージョンアップ手順はここにあったりするけどそのままだとうまく行かなかったので少々修正
手順通りにすると
sudo yum install -y gcc openssl-devel tcp_wrappers-devel sudo curl -o stunnel-5.49.tar.gz https://www.stunnel.org/downloads/stunnel-5.49.tar.gz sudo tar xvfz stunnel-5.49.tar.gz
でエラーが。。
gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now
どうにも解決できなかったので現在の最新安定版をダウンロードする
sudo yum install -y wget wget https://www.stunnel.org/downloads/stunnel-5.50.tar.gz tar zxvf stunnnel-5.50.tar.gz sudo ./configure sudo make
インストール前に古いものを削除してインストールしてリンク作成
sudo rm /bin/stunnel sudo make install sudo ln -s /usr/local/bin/stunnel /bin/stunnel
アップデート後のバージョン
$ stunnel --version [ ] Clients allowed=500 [.] stunnel 5.50 on x86_64-pc-linux-gnu platform [.] Compiled/running with OpenSSL 1.0.2k-fips 26 Jan 2017 [.] Threading:PTHREAD Sockets:POLL,IPv6 TLS:ENGINE,FIPS,OCSP,PSK,SNI Auth:LIBWRAP [ ] errno: (*__errno_location ()) [!] Invalid configuration file name "--version" [!] realpath: No such file or directory (2) [ ] Deallocating section defaults
なんかバージョン以外も変わってるけど。。
更にutilsのコンフィグ/etc/amazon/efs/efs-utils.conf
も修正
sudo vi /etc/amazon/efs/efs-utils.conf
以下項目をfalse
に変更
stunnel_check_cert_hostname = true stunnel_check_cert_validity = true
・やっとマウント
sudo mount -t efs -o tls [ファイルシステムID]:/ /mnt/efs
成功
・自動マウント
AmazonLinux2のときと同じです。
nfs-utils を使用する
これはAmazonLinux2のときと同じです。
まとめ
AmazonLinux以外でEFSを使う場合はどっちがいいでしょうね。
暗号化必要ならamazon-utils一択ですけど、不要ならnfs-utilsが楽ですかね。
まぁ導入台数が多くなければそんな手間じゃないですけどね。
以上