Linode申込後の初期設定のメモ(ssh編)

ログインページ

ログインページよりログインをします。

注意事項

OSは、使い慣れているCentOSの最新版(現状では、5.3)を選択しているので、それを前提として今後話をすすめていきます。

事前準備

Networkのタブを選択し、Network Configurationのエリアに表示されている自分のサーバのeth0(IPアドレス)を確認しておきます。

以下、このように表示されていたものとして話をすすめます。

  • eth0: xxx.xxx.xxx.xxx(lixx-xxx.members.linode.com)
  • Gateways: xxx.xxx.xxx.1
  • Netmask: 255.255.255.0
  • DNS Servers: xxx.xxx.xxx.zzz, xxx.xxx.yyy.zzz

アカウント作成

まずはrootでしかアカウントは存在しないので、rootでログインします。

$ ssh root@xxx.xxx.xxx.xxx

何はともあれ、自分用のアカウント(xxxxx)を作成してしまいます。その際、wheelグループに所属するようにしておきます。忘れずにパスワードも設定しておきます。

# useradd -u 400 -G wheel xxxxx
# passwd xxxxx

sudoのインストールと設定

素の状態では、sudoパッケージすらインストールされていないので、インストールしておきます。

# yum install sudo

wheelグループに所属するユーザのみsudoを許可するように設定しておきます。

# visudo
# コメントアウトされているのを外す
%wheel  ALL=(ALL)       ALL

公開鍵でのsshログイン設定

linodeサーバへsshログインするマシンにて公開鍵/秘密鍵を作成し、公開鍵をlinodeサーバにscpで転送しておきます。

$ ssh-keygen -t rsa
$ scp ~/.ssh/id_rsa.pub xxx.xxx.xxx.xxx:~

linodeサーバへsshログインします。

$ ssh xxxxx@xxx.xxx.xxx.xxx

そのままだと、ホームディレクトリ直下に.sshディレクトリが存在しないので、作成します。(mkdir ~/.ssh && chmod 700 ~/.sshでもOK)

$ ssh localhost
※コマンド実行後に ~/.ssh/ ディレクトリが作成されたことを確認してください

公開鍵をauthorized_keysに追記しておきます。(追記後は、元ファイルは削除しておくこと)

$ cat id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ rm id_rsa.pub

sshdの設定変更

そのままだとセキュリティ上の問題があるので、サーバへのsshログインの制限をかけておきます。

設定ファイル(sshd_config)の変更は以下の通りです。

$ sudo vi /etc/sshd_config

# パスワード認証を無効化し、公開鍵認証を有効化する
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no

# rootでの直接ログインは認めない
PermitRootLogin no

# PAM認証は使わない
UsePAM no
# リモートホスト名の確認は行わない
UseDNS no

# X11 Forwardingは使わない
X11Forwarding no

# 許可ユーザを制限
AllowUsers xxxxx

最後にsshdを再起動します。

$ sudo service sshd restart

もちろんsshログインできることを確認して下さい。