GMO ConohaでLaravelをインストールする
- サーバーの作成
サーバーの作成
SSH Keyは、自分のMacのid_rsa.pubを使う
完了
これで作成。
ターミナル
サーバーを作成した時に表示されるIPアドレスを使って、Macのターミナルからログインする。
$ssh root@[IPアドレス]
一般ユーザーの作成
参考記事
ConohaにVPSを設置して、SSHログイン、ポート番号変更、rootログイン禁止までを30分で!
ユーザー作成の作成
$ useradd [ユーザー名]
ユーザーパスワードの設定
$ passwd [ユーザー名]
ユーザーをwheelグループに追加
$gpasswd -a [ユーザー名] wheel
作成した[ユーザー名]でログインできるか確認
$ su [ユーザー名]
SSHログインを許可
一般ユーザーのsshd_configファイルを編集する
$ sudo vi /etc/ssh/sshd_config
以下の部分のコメントを外す
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
.sshフォルダを作成
$ cd ~/
$ mkdir .ssh
$ chmod 700 .ssh
ここまできたらrebootをする
$ systemctl reboot -i
ローカルのMacにあるid_rsa.pubをアップロードする
自分のMacにてターミナルで .sshフォルダに移動
$ cd ~/.ssh
id_rsa.pubをコピーしてauthorized_keysにする
$ cp id_rsa.pub authorized_keys
SCPコマンドを使ってサーバーにauthorized_keysをアップロードする
(一般ユーザーはまだSSHログインできないので、rootでおこなう)
scp authorized_keys root@[IPアドレス]:/home/[ユーザー名]/.ssh
ポートが22から他に変更されている場合は -P(大文字)を使う
scp -P ポート番号 authorized_keys root@[IPアドレス]:/home/[ユーザー名]/.ssh
これでアップロード完了。
サーバーにアップロードしたauthorized_keys
サーバーにSSHログイン
$ ssh root@[IPアドレス]
一般ユーザーの.sshフォルダに移動
$ cd /home/[ユーザー名]/.ssh
フォルダ内のファイルを確認。(先程SCPでアップロードしたauthorized_keysがあるはず)
$ ls -al
先程はscpをrootで上げたので、ファイルの所有者がrootになっている。
これを、[ユーザー名]に変更する
$ chown [ユーザー名]:[ユーザー名] authorized_keys
これで準備OK
サーバーからログオフする
$ exit
一般ユーザーでsshログインできるか確認
$ ssh [ユーザー名]@[IPアドレス]
無事にログインできたらOK
VPSの安全性を高める
sshd_configを編集
$ sudo vi /etc/ssh/sshd_config
Rootからのログイン禁止
パスワードによるログインを禁止
ポート番号を変更
PermitRootLogin no PasswordAuthentication no Port 10022
sshdを再起動
$ sudo systemctl restart sshd.service
SSHのポートの変更(firewalld)
$ sudo vi /etc/firewalld/zones/public.xml
<port protocol="tcp" port="10022"/> # ココを追加
<?xml version="1.0" encoding="utf-8"?> <zone> <short>Public</short> <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description> <service name="ssh"/> <service name="dhcpv6-client"/> <service name="http"/> <port protocol="tcp" port="10022"> </zone>
firewalldを再起動
$ sudo systemctl restart firewalld.service
ポートが変更になったことを確認
ポートを指定しないでssh接続しようとすると
$ ssh [ユーザー名]@[IPアドレス]
ssh: connect to host 150.95.178.64 port 22: Connection refused
先程変更したポートでログインする
$ ssh [ユーザー名]@[IPアドレス] -p 10022
これで無事にログインされる。