COMBO ENGINEERINGの公式ブログ

COMBO ENGINEERINGの公式ブログです。リリースするアプリについてアナウンスします。

【メモ】さくらVPSのssh設定について

アプリで参照するサーバをAWSからさくらVPSにしました。
それで自分のローカルmacPCから、さくらサーバにsshするだけでも苦労したのでメモしておきます。

f:id:taka230035:20170810001456p:plain

ちょっと愚痴になりますが。。。

さくらにもssh関連のドキュメントがあるのですが、centOS 6でwindowsからの接続の場合の記載だけしかありませんでした。

サーバに入れられるOSは他にもcentOS 7やubuntuなどがあるのですが、やり方が少し違うので、詳しく無い場合は調べる必要があります。

私は今回centOS 7を入れて、その事例となるのですが、
せめてcentOS 7のドキュメントも欲しいものでした。


ちなみにWebブラウザ経由で仮想コンソールみたいなのでサーバに接続できるのですが、凄く使いづらいです。
なのでローカルPCから接続を試みた次第です。


このあたりAWSはやはり手頃だなと思いました。



手順

手順としては以下となります。
メインは赤文字の部分です。

  • 一般ユーザの追加方法
  • SSH接続の設定変更方法
  • sudoの設定方法


    一般ユーザの追加方法

    ssh接続用ユーザの作成です。
    これはさくらのドキュメントどおりで設定できました。



    SSH接続の設定変更方法

    まずmac側で公開鍵の設定です。
    $ ssh-keygen -t rsa
    $ chmod 600 ~/.ssh/id_rsa.pub


    次にさくらサーバ側です。
    ここもほとんどさくらのドキュメントどおりですが、vi .ssh/authorized_keysがmac特有です。
    ssh接続ユーザにて
    $ mkdir .ssh
    $ chmod 700 .ssh
    $ vi .ssh/authorized_keys
    ->Macのid_rsa.pubの内容を貼り付け
    $ chmod 600 .ssh/authorized_keys


    次にドキュメントどおりにSSH接続の設定変更をするのですが、ここでssh接続ポートも変更します。
    そしてなんと、centOS 7で設定方法が変わっていて、調査が必要でした。


    以下でポートの開放状況を確認
    $ firewall-cmd –list-ports –zone=public

    以下で開放するポートを追加 例:99999ポートの場合
    firewall-cmd –add-port=99999/tcp –zone=public –permanent

    firewalldをリロード
    firewall-cmd –reload


    どうやらcentOS 7からfirewallコマンドでポートを開放する必要があるようでした。


    sudoの設定方法

    一般ユーザがコマンド毎にroot権限を持つことができる設定です。
    ここもさくらのドキュメントどおりでしたが、設定を反映させるのに再起動が必要でした。

    ドキュメントには記載がなく。


    これで完了です。
    macからの接続は
    $ ssh -p ‘port’ ‘ユーザ’@‘サーバipアドレス
    となります。



    まとめとして、
    centOS 7でssh設定をする場合は
    firewallコマンドでポートを開ける必要がある
    ということです。