AWSのEC2インスタンスをたてたときにいつもやってること(1) ~ sshの設定まで
AWSのEC2インスタンスを立てた時にしている作業を備忘録的な感じで書いていきます
大前提
- CentOS7
- AWS EC2
今回やったこと
これ以上は(2)で書いていきます
最初に、全てのyum関係のソフトウェアをアップデート。open-sslの脆弱性とかをできるだけ潰します。
$ sudo yum update
yumリポジトリの追加編
remi, epel, rpmforgeを追加します
まず、rpm repositoryを取得するためにwgetをyum install
$ sudo yum install -y wget curl
epel
$ wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm $ sudo rpm -Uvh epel-release-latest-7.noarch.rpm
remi
$ wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm $ rpm -Uvh remi-release-7.rpm
rpmforge
$ wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm $ sudo rpm -ivh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
yum install時にデフォで適用にならないようにする
$ vi /etc/yum.repos.d/epel.repo $ vi /etc/yum.repos.d/remi.repo $ vi /etc/yum.repos.d/rpmforge.repo
上記の編集でenabled=1
となっていたら、enabled=0
に編集する。
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=0 ##ここを0にする gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
$ yum --enablerepo=remi install ~~
みたいにして使う
ユーザー追加編
ここでは、sysuserというユーザーを追加する
$ sudo useradd sysuser #ユーザを追加 $ sudo passwd sysuser #パスワード設定
sysuserにsudo権限を追加する
root権限になれるユーザーを限定する
$ sudo vi /etc/pam.d/su
以下の行のコメントアウトをはずす
# auth required pam_wheel.so use_uid
root権限になれるユーザーを限定する(2)
sudo vi /etc/login.defs
以下の行を追加する
SU_WHEEL_ONLY yes
sudo可能ユーザーをwheelだけにする
$ sudo visudo
以下の行のコメントアウトを外す
# %wheel ALL=(ALL) ALL
sysuserユーザーをwheelグループに所属させる
$ sudo usermod -G sysuser,wheel sysuser
ログイン, ssh設定編
sysuserになる
$ sudo su - sysuser
ローカルで、公開認証鍵を作成する
$ ssh-keygen $ scp ./.ssh/id_rsa.pub 作成したサーバ
何かしらの方法で、id_rsa.pub
をもってくる。
ここでは、~/id_rsa.pub
にもってきた前提ですすめる。
$ mkdir .ssh $ chmod 700 .ssh/ $ cd .ssh/ $ touch authorized_keys $ chmod 600 authorized_keys $ cat ~/id_rsa.pub >> authorized_keys
これで、sshログインが、公開鍵認証でできるようになる。
公開鍵認証でログインできるようになったことを確認したら、 sshでrootログイン、passwordログインをできなくする
$ sudo vim /etc/ssh/sshd_config
以下のように編集する
... PermitRootLogin no ... PasswordAuthentication no ...
sshdを再起動
$ sudo service sshd restart