ansibleでRHEL8のセットアップ ~google-authenticator編~
初めに
どうも2人目です。
恒例になりつつある、Red Hat Enterprise Linux 8のセットアップをansibleでやっていくコーナーです。
皆様もRed Hat Enterprise Linux 8のサーバを立てる機会があればぜひ参考にしていただければと思います。
今回は google-authenticator編 です。
サーバアクセスのセキュリティはIPアドレスのACLによって保証している方も多いでしょう。
しかし、在宅勤務も当たり前になってきて、アクセス元のIPを絞れなくなってきている昨今で、IPアドレスのACLでセキュリティを担保するのはイケてないと思いませんか?
そういったことでお悩みの方は ”MFA認証” をサーバに持たせましょう。
google-authenticator をインストールすることでMFA機能を有効化できます。
今回は準備編として、インストールまでをansibleでやっていきたいと思います。
※以下のサイトを参考にさせて頂きました。
https://soji256.hatenablog.jp/entry/2020/05/17/150250
1.Epelのインストールと有効化
- name: install epel
shell: dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
- name: enable epel
shell: dnf config-manager --set-enabled codeready-builder-for-rhel-8-rhui-rpms
RHEL8用のEpelを有効化しましょう。
2.インストール
- name: Install MFA package
yum: name={{ item }}
with_items:
- google-authenticator
- qrencode
google-authenticator と一緒にMFAのQRコードを発行するための qrencode もインストールしましょう。
3.sshd_configの設定変更
- name: enable passwordAuthentication
replace:
dest: /etc/ssh/sshd_config
regexp: "^PasswordAuthentication no"
replace: "PasswordAuthentication yes"
- name: enable challengeResponse
replace:
dest: /etc/ssh/sshd_config
regexp: "^ChallengeResponseAuthentication no"
replace: "ChallengeResponseAuthentication yes"
sshd_configのパスワード認証とチャレンジレスポンス認証をONにしましょう。
4.再起動
- name: restart sshd
service:
name: sshd
state: restarted
設定を反映させるための再起動も忘れずに
これでMFA機能を持たせたサーバを作ることが出来ました。
ユーザ作成は方法は上に張ったリンクを参考に、コマンド実行してもらえれば作成できるので、ぜひ試してみてください。
私は、いちいちサーバに入るのがめんどくさかったので、Jenkinsからのシェルを流してユーザ作成しています。
これはまた機会があれば解説したいと思います。
では、皆様良いエンジニアライフを