ずっと5月

3日坊主してます

Conohaサーバー借りてUbuntu16.04の設定をした

nヶ月ぶりの更新になってしまってまずい感。。圧倒的三日坊主。 でもどうせ誰も見てない。1ヶ月に1アクセスもない。本人すらアクセスしないとこうなるんですねぇ
過疎ブログもほどほどにして今年はちゃんと更新してやっていきを高めたい。。。

昨日出来心でconohaサーバーを契約したので設定してみる。具体的には以下を設定する。

  • rootユーザーでログイン

  • root権限を持ったユーザーの作成

  • 作成したユーザーでのSSHログイン

  • rootユーザーでのログイン禁止

  • パスワードによるログイン禁止

  • ファイアウォールの設定

  • SSHのポート番号変更

  

サーバー契約

とりあえず↓参考にサーバーを契約する。今回選んだOSはUbuntu16.04の64bit

qiita.com

Qiitaの記事と若干選択肢が違うけどこのような感じで。
f:id:uminokaze521:20180207155314p:plain

rootでログイン

無事にサーバー追加出来たら、サーバーリストから先程追加したサーバーのネームタグをクリックしてサーバーの情報を見る。 ネットワーク情報にIPアドレスが書いてあるのでSSHする

$ ssh root@xxx.xxx.xxx.xxx

サーバー契約する時に決めたrootパスワードを入力する。   

ユーザー作成

ユーザーを作成する。

//ユーザー作成
# adduser maru  

//パスワード設定
# passwd marumaru3

//root権限を付与する
# usermod -G sudo maru

//作成したユーザーでログインしてみる
# su maru

maruユーザーになった後はちゃんとroot権限持ってるか確認する。

作成したユーザーでのSSHログイン

設定を編集

$ sudo vim /etc/ssh/sshd_config

sshd_configを編集して以下の項目がそれぞれ設定されているか確認する。
ちなみに、最初に載せたQiita記事にはRSAAuthenticationの設定も編集する必要があると書いてあるがサポートが終了したので書く必要は無いらしい。

PubkeyAuthentication yes
//以下のファイル名は任意に変更して良い
//後で作成するファイルを同じ名前にすること。
AuthorizedKeysFile      .ssh/authorized_keys

したらsshdを再起動する。

$ sudo service sshd restart

RSAAuthenticationの話は以下を参照。 qiita.com  

SSH鍵の生成・リモートログイン

~/.sshディレクトリを作成→鍵の生成→設定ファイルの編集(ローカルPC)→リモートログインの順で行う

$ cd ~/
$ mkdir .ssh
$ chmod 700 .ssh
$ cd .ssh
//鍵を生成する
//ファイル名とパスワードを聞かれるので任意のものを設定する
$ ssh-keygen -t rsa -b 2048
Enter file in which to save the key: maru 
Enter passphrase:                          
Enter same passphrase again:
$ mv maru.pub authorized_keys
$ chmod 600 authorized_keys
$ cat maru

生成した公開鍵は先程AuthorizedKeysFileで設定したファイル名に変更して権限を600にしておく。 秘密鍵は今後使用するのでcatして出てきたものをコピーしておく

#### ローカルPCの設定 次はサーバーに接続する側で設定を行う。

$ cd ~/.ssh
//さっきコピーした秘密鍵をペーストする
$ vim maru
$ chmod 600 maru
$ vim ~/.ssh/ssh_config
//以下を追記。ユーザー名・秘密鍵の名前は適宜変更する。
#ConoHa
Host conoha
  HostName xxx.xxx.xxx.xxx
  User maru
  Port 22
  IdentityFile ~/.ssh/maru
$ ssh conoha

ここまで上手く設定できていればローカルPCからSSH接続ができる。
上手く行かなかった場合は

$ ssh conoha -vvv

SSHする時のログが表示されるのでこれを参考に対処すると良い。 私は読み込んでいるconfigファイルが違って上手く行かなかった。

rootユーザーでのログイン禁止

再び設定を編集

$ sudo vim /etc/ssh/sshd_config
//PermitRootLoginをnoにする
$ sudo service sshd restart

パスワードによるログイン禁止

これも設定を編集

$ sudo vim /etc/ssh/sshd_config
//PasswordAuthenticationをnoにする
$ sudo service sshd restart

ファイアウォールの設定

SSHのポート番号変更

sshd_configとufwの設定を変更する必要がある。

$ sudo vim /etc/ssh/sshd_config
//Portを任意のポート番号にする。
$ sudo service sshd restart

あとはufw
CentOSとかだとiptables の編集が必要だが、Ubuntuufwというのを編集する必要がある。

# ufw default deny
# ufw allow [任意のポート番号]
# ufw enable

ufwの詳しい使い方は以下のQiitaを参考にすると良さそう。

qiita.com

ローカルPCの~/.ssh/ssh_configのPortも任意のポート番号に変更する必要があるので注意。

以上!