今回はMACのターミナルから、さくらのVPSにssh接続するための初期設定をご説明します。
さくらのVPSコントロールパネルにアクセスします。
コントロールパネルの右上「各種設定」の「OSインストール」から「標準OSインストール」を選択。
今回、インストールするOSは「CentOS x86_64」にします。
コントロールパネルの「>_コンソール」から「>_シリアルコンソール」を選択。
シリアルコンソールを立ち上げるとアップデートが始まりますので、全てのアップロードが完了後、OSインストール時に設定した新しい管理ユーザのパスワードでログインします。
aa1-234-56789.vs.sakura.ne.jp login : root Password : (新しい管理ユーザで設定したパスワードを入力)
ログインできると下記の通り表示されます。
SAKURA Internet [Virtual Private Server SERVICE] [root@aa1-234-56789 ~]#
VPSの日本語化
初期状態では、英語表示のみとなりますので、VPS応答時などの言語を日本語化します。
[root@aa1-234-56789 ~]# vi /etc/sysconfig/i18n
LANG=”C” の C の文字を削除し、 ja_JP.UTF-8 に変更します。
次に、ESCキーを押して編集モードを終了させ、 :wq を入力し、Enterキーを押して保存します。
LANG="ja_JP.UTF-8" SYSFONT="latarcyrheb-sun16"
一度、VPSを再起動します。
[root@aa1-234-56789 ~]# reboot
一般ユーザの作成
管理者でログインして、一般ユーザを作成します。今回はユーザ名をsakuraにします。
[root@aa1-234-56789 ~]# useradd sakura
次にパスワードを設定します。
[root@aa1-234-56789 ~]# passwd sakura
作成した一般ユーザを管理者グループ(Wheel)に追加します。
[root@aa1-234-56789 ~]# usermod -G wheel sakura
作成した一般ユーザが管理者グループに追加されたか確認します。
[root@aa1-234-56789 ~]# groups sakura sakura : sakura wheel
管理者グループ(Wheel)がsudoコマンドを使用できるように設定します。
[root@aa1-234-56789 ~]# visudo
編集画面が開いたら下記箇所の#(コメントアウト)を削除します。
# %wheel ALL=(ALL) ALL (↓行頭にある#を削除) %wheel ALL=(ALL) ALL
設定を保存します。
これで管理者グループに追加されているユーザはsudoを使えるようになります。
さらに、管理者グループ(Wheel)だけがsuコマンドを使用できるように設定します。
[root@aa1-234-56789 ~]# vi /etc/pam.d/su
#auth required pam_wheel.so use_uid (↓行頭にある#を削除) auth required pam_wheel.so use_uid
設定を保存します。
これで管理者グループに追加されているユーザのみがsuコマンドを使えるようになります。
MACからSSH接続するために必要な鍵の設定
MACからSSH接続するために必要な鍵の設定を行います。
まずは、MAC側でターミナルを立ち上げて、下記の通り鍵を作成します。
$ ssh-keygen
MAC内の鍵を保存する場所と鍵のファイル名を聞かれます。
そのままでも大丈夫ですが、/Users/user-name/.sshのディレクトリに分かりやすいように”id_rsa_sakura_vps”という名前を付けて鍵を作成します。
Enter file in which to save the key (/Users/user-name/.ssh/id_rsa): /Users/user-name/.ssh/id_rsa_sakura_vps
パスフレーズを聞かれるので、入力します。パスフレーズは鍵を使用する時に設定しますので、複雑かつ忘れないものを設定してください。
Enter passphrase (empty for no passphrase): Enter same passphrase again:
鍵が問題なく作成されているか確認します。
$ ls -al /Users/user-name/.ssh
-rw------- 1 user-name staff 1766 1 3 07:20 id_rsa_sakura_vps -rw-r--r-- 1 user-name staff 400 1 3 07:20 id_rsa_sakura_vps.pub
以上でMAC側での作業は終了です。
次に、MACで作成した鍵の公開鍵をVPSに登録します。
管理者ユーザではなく、先程作成した一般ユーザでログインしてください。
.sshディレクトリを作成します。
[sakura@aa1-234-56789 ~]$ mkdir .ssh
作成した.sshディレクトリの権限設定を変更します。
[sakura@aa1-234-56789 ~]$ chmod 700 .ssh
.sshディレクトリ内にauthorized_keysというファイルを作成します。
[sakura@aa1-234-56789 ~]$ vi .ssh/authorized_keys
authorized_keysの編集画面が表示されますので、先程MACで作成した公開鍵(id_rsa_sakura_vps.pub)の内容を貼り付けて保存します。
保存後、authorized_keysの権限設定を変更します。
[sakura@aa1-234-56789 ~]$ chmod 600 .ssh/authorized_keys
sshdの設定を変更する
sudoコマンドを使用してsshd_configの設定を変更します。
[sakura@aa1-234-56789 ~]$ sudo vi /etc/ssh/sshd_config
sshでアクセスする際のポート番号を変更します。
今回は、55522というポート番号を設定してみます。
#Port 22 ↓ Port 55522
管理者権限(root)でsshから直接接続できないようにします。
#PermitRootLogin yes ↓ PermitRootLogin no
鍵交換方式でログインする設定を行ったので、パスワード認証によるログインを禁止
PasswordAuthentication yes ↓ PasswordAuthentication no
変更した設定を適用するため、sshdを再起動します。
[sakura@aa1-234-56789 ~]$ sudo service sshd restart
以上でsshdの設定変更は完了です。
MACのターミナルからssh接続する
MACのターミナルから先程設定したポート番号を指定してVPSに接続をしてみます。
$ ssh sakura@VPSのIPアドレス -p 55522
接続しようとして、下記のようなエラーが発生しました。
このエラーは、先程設定したsshのポート番号を開放していないため発生します。
ssh: connect to host VPSのIPアドレス port 55522: Connection refused
先程設定したsshのポート番号を開放するため、VPSのコンソールに戻り、下記の通りiptablesの設定を変更していきます。
[sakura@aa1-234-56789 ~]$ sudo vi /etc/sysconfig/iptables
先程設定したsshのポート番号に変更。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT ↓ -A INPUT -m state --state NEW -m tcp -p tcp --dport 55522 -j ACCEPT
変更した設定を適用するため、iptablesを再起動します。
[sakura@aa1-234-56789 ~]$ sudo /etc/rc.d/init.d/iptables restart
もう一度、MACのターミナルから先程設定したポート番号を指定してVPSに接続をしてみます。
$ ssh sakura@VPSのIPアドレス -p 55522
MACのターミナルで次の通り表示されればVPSへの接続成功です。
SAKURA Internet [Virtual Private Server SERVICE] [sakura@aa1-234-56789 ~]#
以上でMACのターミナルから、さくらのVPSに接続して作業することができます。