【AWS】初期設定

  • 日本語環境に設定

    vi /etc/sysconfig/i18n
    
    下記内容に変更
    LANG=en_US.UTF-8
    ↓
    LANG=ja_JP.UTF-8
    
  • ec2-userのパスワード設定
    ec2-userでteratermからログインする際、秘密鍵がないとログインできないが、
    常時稼働するサーバーとして運用する場合、パスワードも設定しておく方が安全。
    今回のAWSはお試しなので設定せず。
  • rootのパスワード設定
    初期状態ではrootにパスワード設定がないため、
    ec2-userでログインを行ってから下記コマンドでパスワード設定する。

    sudo su -
    passwd
    New password: 任意の文字列
    Retype new password: 任意の文字列
    
  • タイムゾーンの変更
    rootユーザで実行します。

    cp -p /usr/share/zoneinfo/Japan /etc/localtime
    

    上書きするか確認されるので、上書きします。
    dateコマンドを打って日本時間になっていれば問題ありません。

    しかし、上記方法だけでは、「/etc/localtime」はglibcパッケージが更新されると、
    パッケージ更新に含まれるスクリプトによりUTCに戻ってしまいます。
    AWSではcloud_initがインスタンスの起動時にセキュリティの更新を実行するので、
    そのタイミングで設定が初期化されてしまいます。
    そこで以下の設定も行います。

    vi /etc/sysconfig/clock
    
    ZONE="Asia/Tokyo"
    UTC=false
    

【AWS】セキュリティ向上その1

  • ・AWSログインの2段階認証
    上部の「サービス」-「IAM」を選択します。

    「ルートアカウントのMFAをアクティブ化」を行います。
    =2段階認証を行います。
    2段階認証にはiPhoneアプリの「Authy」を利用します。

    「ルートアカウントのMFAをアクティブ化」を選択し、
    「MFAの管理」ボタンを押下します。

    「仮想MFAデバイス」を選択し、「次のステップ」ボタンを押下します。
    説明を読んだら、「次のステップ」ボタンを押下します。

    QRコードを「Authy」で読み取ります。
    読み取ると6桁の数字が出るので、それを認証コード1へ、
    秒数経過でさらに6桁の数字が出るので、それを認証コード2へ。
    「仮想MFAのアクティブ化」ボタンを押下すると関連付けが完了します。

  • グループの作成
    上部の「サービス」-「IAM」を選択します。
    左側の「グループ」を選択します。
    「新しいグループの作成」ボタンを押下します。
    グループ名に任意の名前を入力し、「次のステップ」ボタンを押下します。
    ポリシーとして、「AmazonEC2FullAccess」を選択し、「次のステップ」ボタンを押下します。
    「グループの作成」ボタンを押下します。
  • IAMユーザーの作成
    AWSログインは今後、IAMユーザーと呼ばれる権限の低いユーザーで行えるようにします。
    これにより、iPhoneなどからAWSを起動したりします。

    上部の「サービス」-「IAM」を選択します。
    左側の「ユーザー」を選択します。
    「新規ユーザーの作成」ボタンを押下します。
    ユーザー名を1名分入力し、「作成」ボタンを押下します。

    認証情報を「認証情報のダウンロード」ボタンを押下し、ダウンロードしておきます。
    このファイル内の「Access Key Id」「Secret Access Key」は
    後程、iPhone用のAWS起動アプリで利用します。

  • ユーザーの詳細設定
    ユーザー名をクリックし、「グループにユーザーを追加」ボタンより、
    先ほど作成したグループに追加させます。
    次に下部の「パスワードの管理」ボタンを押下し、パスワードを設定します。

【AWS】EC2のインスタンス作成

AWS(AmazonWebService)が個人でも1年間無料とのことで利用してみました。
AWSのサイトでamazonのログインとパスワードでサインインし、
EC2でインスタンスを作成します。

  • 【手順1:Amazonマシンイメージ(AMI)】
    「Amazon Linux 64bit」を選択します。
    開発言語としては、Python、Ruby、Perl、Java
    リポジトリとしてはDocker
    DBとしてはMySQL、PostgreSQLなどが含まれているようです。

    また、使ったことはないですが、
    ローカルにAmazonコマンドラインインターフェース(AWS CLI)というツールを
    インストールしておくと、
    コマンドライン上から「aws 任意のコマンド」でAWSを操作できるようです。

  • 【手順2:インスタンスタイプの選択】
    無料利用枠の対象である「t2.micro」を選択します。
    「確認と作成」ボタンを押下します。
    手順3~手順6の手順は省略され、デフォルト設定が適用となります。
  • 【手順7:インスタンス作成の確認】
    「作成」ボタンを押下します。
    デフォルトのセキュリティグループはポート全開放されていますと、
    セキュリティ強化の警告が表示されますが、
    インスタンス作成時に手順3~手順6をすっ飛ばすと、
    自動的に新しいセキュリティグループが作成され、
    SSHのポート22のみを許可したセキュリティグループになります。

    常時起動するサーバーにしないため、許可する送信元も初期設定のままとします。

    ダイアログで「新しいキーペアの作成」を選択し、キーペア名を入力します。
    「インスタンスの作成」ボタンを押下します。

ものの5分程度の手順で仮想サーバーが作れるって
正直便利すぎると思いました。
予想請求額の通知を受け取る設定で0円より大きくなったら
通知を受け取るようにしておきます。(念のため)