Help us understand the problem. What is going on with this article?

EC2インスタンスにSSHしたときに黄色いネズミを色付きで表示する

EC2インスタンス(Amazon Linux 2)にSSHでログインしたときに表示されるAWSのアスキーアートの代わりに黄色いネズミを表示させるようにします。

こんな感じ。
image.png

ネズミのアスキーアートを用意する。

適当にアスキーアートを探してきます。
そして、/home/ec2-user/banner.txtとしてファイルに保存しましょう。

banner.txtの例

     .--,       .--,
    ( (  \.---./  ) )
     '.__/o   o\__.'
        {=  ^  =}
         >  -  <
        /       \
       //       \\
      //|   .   |\\
      "'\       /'"_.-~^`'-.
         \  _  /--'         `
   jgs ___)( )(___

今回はhttps://ascii.co.uk/art/mouse からお借りしました。もちろんアスキーアートなら何でも大丈夫なので、お好きな黄色いネズミや青いタヌキを用意してください。

AWSの表示を書き換える

/etc/update-motd.d/30-banneを書き換えます。
sudo vi /etc/update-motd.d/30-banneでファイルを開き以下のように書き換えます。

#!/bin/sh
#cat << EOF
#
#       __|  __|_  )
#       _|  (     /   Amazon Linux 2 AMI
#      ___|\___|___|
#
#https://aws.amazon.com/amazon-linux-2/
#EOF
echo -e "\033[1;33m$(</home/ec2-user/banner.txt)\033[00m"

$(</home/ec2-user/banner.txt)が先ほどのアスキーアートファイルでecho "$(<ファイルパス)"とすることでファイルの中身を出力します。また、\033[1;33mが色を指定しているところで黄色を指定しています。\033[00mが色の変更の終了を意味します。

別の色を指定したい場合は以下を参考にしてください。

コード
RED '\033[0;31m'
GREEN '\033[0;32m'
ORANGE '\033[0;33m'
BLUE '\033[0;34m'
PURPLE '\033[0;35m'
CYAN '\033[0;36m'
LIGHTGRAY '\033[0;37m'
DARKGRAY '\033[1;30m'
LIGHTRED '\033[1;31m'
LIGHTGREEN '\033[1;32m'
YELLOW '\033[1;33m'
LIGHTBLUE '\033[1;34m'
LIGHTPURPLE '\033[1;35m'
LIGHTCYAN '\033[1;36m'
WHITE '\033[1;37m'

最後に

sudo update-motd

を実行すると反映されます。これでSSHをつなぎなおすと

黄色いネズミ.png

おまけ プロンプトの色を変える

~/.bash_profileに以下を追記します。
これでユーザーのプロンプトの色を変えることができます。

COLOR_BEGIN="\[\e[1;36m\]"
COLOR_END="\[\e[m\]"
export PS1="${COLOR_BEGIN}${PS1}${COLOR_END}"

色の指定はPS1_COLOR_BEGINで行っています。
これを保存してログインしなおすとこうなります。(***は実際はipなので一応隠してます。)

image.png

まとめ

AWS EC2インスタンスにSSHしたときに表示されるAWSのアスキーアートを変更し、色を付ける方法を(ついでにプロンプトの色変更も)紹介しました。似たような方法で他のOSでも実行可能だと思います。ただのネタのような内容ですが、本番・ステージングや他人の開発環境等へのログイン間違えを防ぐのに役立つので試してみてください。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした