さくらVPS 2GB SSDのCentOS 6.4をセットアップしてイケているRailsサーバに仕上げるまでのシリーズ企画です。第1回は初期状態からSSHで接続できるようにするまです。一般的にインターネットに公開しているLinuxサーバはいろんな所からアクセスが来やすいので契約したらできるだけ早くこのパートを実施してください。
🏈 SSH認証鍵の作成
今回のVPS用にローカルにSSH認証鍵を新規作成する場合は、SSH認証キーをBitbucket/GitHubに設定しよう!の「SSHキーの作成」のセクション
を参考にSSHキーを作成。すでにSSHキーをローカルに保持している場合はスキップ。
😸 ユーザー作成
ローカルのターミナルを起動してsshでサーバにログイン。xxx.xxx.xxx.xxx
は今回のサーバのIPです。また、パスワードはさくらVPSでは仮登録完了時のメールに記載されています。
ssh root@xxx.xxx.xxx.xxx -p 22 |
ログイン用のユーザーUSER_NAME
(名前は自由)を作成。
useradd USER_NAME -G wheel |
🐰 yumのアップデート
とりあえず、yumを最新の状態にアップデート。
sudo yum update |
🏀 sudoの設定
UNIX系のOSには一般ユーザーに一時的にroot権限を与えるsudo
コマンドがあります。通常は一般ユーザーとして作業をして、root権限が必要な時のみsudoでコマンドを実行することがサーバのセキュリティ管理として適切です。
このsudo
を適切に使えるように設定を行っていきます。
まず、root権限を使えるwheelグループについて設定していきます。sudo vi /etc/pam.d/su
でファイルを開いて次の行のコメントアウトを外す(先頭の#を取る)。
# auth required pam_wheel.so use_uid |
sudo vi /etc/login.defs
に次の行を追加して保存。
SU_WHEEL_ONLY yes |
sudo visudo
で次の行のコメントアウトを外す(先頭の#を取る)。
# %wheel ALL=(ALL) ALL |
セキュリティを強化するためにrootでのログインを禁止。(sshd再起動後反映)sudo vi /etc/ssh/sshd_config
で次のように修正。
PermitRootLogin no |
セキュリティを強化するためにSSHのポート番号を変更。sudo vi /etc/ssh/sshd_config
で次の行をファイルの一番下に追加して保存。SSH_PORT
は0 ~ 65535から選べます。
ほかのサービスとかぶらないためにも10000以上の番号で好きな番号にしてください。
Port SSH_PORT |
サーバに~/.ssh/
フォルダを作成する。
su - USER_NAME |
サーバからログアウトして、ローカルサーバで次のコマンドを実行する。
このコマンドは公開鍵をサーバ側に送るためのコマンドです。
パラメータ ida_rsa.VPS_NAME.pub: 最初に作成したsshキーの公開鍵 VPS_NAME: 今回のサーバの識別用の名前(自分の好きな名前)
またSSH認証鍵を作成する場合はSSH認証キーをBitbucket/GitHubに設定しよう![Mac簡単手順]
scp id_rsa.VPS_NAME.pub root@xxx.xxx.xxx.xxx:/home/USER_NAME/.ssh/authorized_keys |
サーバに公開鍵を送信したら、authorized_keys
の所有者とパーミッションを変更してサーバ側のsshdを再起動します。
ssh root@xxx.xxx.xxx.xxx -p 22 |
以後はrootでのsshへのアクセスはできなくなります。
次にローカルのターミナルを起動してvim ~/.ssh/config
を実行指定可を追加します。
Host VPS_NAME |
設定が完了したら、次のコマンドでログインできます。
ssh VPS_NAME |
🐡 sshの接続ホストの制限
sshに接続できるホストを制限する。
sudo vim /etc/hosts.allow
を次のように編集。
ALL: 127.0.0.1 |
.jp
の部分は、hogehoge.ne.jp
みたいに使っているプロバイダで指定する方がより安全
続いて、sudo vim /etc/hosts.deny
を次のとおりに編集。
sshd: ALL |
🐞 おまけ:さくらVPSコンソールにアクセス方法
さくらインターネットVPSコントロールパネルにアクセスしてログイン。(初回の方はさくらVPSで登録に登録完了したらくるメールに載ってます)
(1) 左メニューの「リモートコンソール」を開く
(2) root/パスワードを打ってログイン
😎 参考リンク
さくらのVPS を改めて使いはじめる 1 – 使用準備、SSH 公開鍵認証
😀 変更来歴
12/17 14:00 scpでの公開鍵送信の部分で送付先フォルダの指定が間違っていたので修正
02/02 08:25 sudo yum update
を追加
09/22 12:01 CentOS 6.4対応 & 記述ミスの修正
🐹 検証環境
今回の記事の検証環境は以下のとおりです。
Local/Server: Ruby: 2.0.0 Rails: 4.0.0 Local: OS: Mac Mountain Mountain Lion(macOS 10.8.4) Server(さくらVPS 2G SSD): CentOS release 6.4 (Final)