LoginSignup
1
3

More than 5 years have passed since last update.

VPS 借りたので① セキュリティ関係の初期設定メモ

Last updated at Posted at 2018-05-02

さくらで VPS 借りたので初期設定メモ。

ドットインストール見ながら調べた。

  • yum でパッケージアップデート

  • 日本語化

    • /etc/sysconfig/i18n ファイルが言語設定ファイル
      LANG="ja_JP.UTF-8"
  • ユーザー追加 / パスワード設定

    • # useradd hoge
      # passwsd hoge
      ちなみにユーザー追加するとホームフォルダは
      /home/hoge
      になる。
  • sudo 設定

    • # usermod -G wheel hoge
      wheel というグループは、UNIX系システム上でスーパーユーザー(root)特権を得ることのできるユーザーの属するグループの名称とのこと。
      sudo の設定は visudo コマンドで呼び出せる。
      Allows people in group wheel to run all commands
      の下の行をコメントアウト解除
  • 鍵認証

    • サーバ側に公開鍵保管場所 .ssh を作成。
    • PC側で鍵生成
      $ ssh-keygen -t rsa -b 4096 -v -C "your_email@hoge.com"
      -t 生成する鍵の種類を指定。
      -v 冗長表示モード。ssh-keygen が進行中のデバッグメッセージを表示。
      -b 鍵の長さ。初期値は 2048bit
      特にファイル名やパスは変更しなくてOKだけど、したかったら別途指定する。
      このへん参照
    • scp (Secure CoPy) で公開鍵転送
      $ scp ~/.ssh/id_rsa.pub hoge@IP.ADD.RE.SS:~/.ssh/authorized_keys //scp [オプション][転送したいファイル名][転送先ユーザ名]@[ホスト名]:[パス] ディレクトリを転送したいときは -r オプション(再帰的に実行するオプション)
    • PC 側でRSA読み込み指定
      $ ssh -i ~/.ssh/id_rsa hoge@IP.ADD.RE.SS
      -i identity
      RSAあるいはDSA認証で読み込まれるprivate keyの書かれたファイルを指定する。デフォルトでは、プロトコル1のときは~/.ssh/identityを読み込み、プロトコル2のときはRSA認証は~/.ssh/id_rsaで、DSA認証は~/.ssh/id_dsa。
    • 複数デバイスからのアクセス
      別デバイスからのアクセスは、都度、アクセスしたいデバイスで鍵ペアを作成。
      公開鍵をサーバ側の .ssh に追加して、authorized_keys に追記。
      $ cat id_rsa.hostA.pub >> ~/.ssh/authorized_keys
      ちなみに鍵の名前を id_rsa 以外にする場合は ~/.ssh/config に設定を追加する必要があるので注意。参考
    • 簡易アクセス設定
      .ssh フォルダに config ファイルを作成して設定
      詳細は以下
      参考:sshを公開鍵認証にする(複数ホスト対応)| オデの日記@WEB系
  • パーミッション

    • 変更 $ chmod *** ファイル(フォルダ)名
      *** の部分は、3桁の数字で、左からOwner権限、Group権限、Other権限。
      「4=読み込み許可(r) / 2=書き込み許可(w) / 1=実行・ディレクトリ一覧許可(x)」の数字を足し合わせて指定する。
    • 確認 $ ls -l
      -rw-rw-r-- 2 nakamuratou suri 2194 Dec 23 07:30 personal
      のように表示される。
      左からアクセス権、所有者、所有グループ、サイズ、更新日時、ファイルorディレクトリ名。
      フォルダのサイズ表示がよくわからない(中身の合計値じゃないっぽい)のと更新日時の年表示がないのが気になるけどわからなかった。
  • SSH 設定

    • ポート番号の変更
      デフォルトは22で、1024~65535 の範囲に変更する。
      設定ファイル /etc/ssh/sshd_config をバックアップ、その後編集。 バックアップのファイル名は sshd_config.org がいいんじゃないかな。
      ポート番号のところ探してコメントアウト解除。数字設定。
    • パスワードログイン禁止
      PasswordAuthentication no
    • ルートログイン禁止
      PermitRootLogin no
    • 再起動
      $ service sshd restart
    • ポートを指定してログイン
      $ ssh -p YOUR_PORT_NUMBER dotinstall@IP.ADD.RE.SS
  • ファイアウォールの設定

    • 設定ファイルの作成
      # vim /etc/sysconfig/iptables
      中身はドットインストールのソースコピペした。
    • ファイアウォールスタート
      # service iptables restart
    • ファイアウォールの設定確認
      # iptables -L (list)

ちなみに iptables は、Linuxに実装されたIPv4用のパケットフィルタリングおよびネットワークアドレス変換 (NAT) 機能(複数のNetfilterモジュールとして実装されている)の設定を操作するコマンドのこと。Netfilterは、いわゆるファイヤウォールやルータとしての役割を果たす。IPv6 用の実装は ip6tables。

  • その他
    • # は root 、\$ は一般ユーザー
    • 常に root にする場合 sudo -s

長くなったのでこの辺で!

次回からはWebサーバーの設定など!

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3