自分のPCにLinuxをインストールしたりVPSを借りるなりしたときにすること。
非rootの作業用アカウントをつくる。
debian系はuseraddとadduserがあるが、adduserが対話式のほう。
useraddなら
$ useradd -m -G wheel -s /bin/bash name
みたいなかんじ。
sudoできるように visudo
でwheelグループに権限を追加しておく。
IPアドレスを固定しておく。
ここの作業手順はディストリビューションによって大きく異なる。
IPアドレスの固定というのはつまりネットワークの設定なので、この作業が済んだら
$ ping 8.8.8.8 # ネットワークの疎通確認
$ curl yahoo.co.jp # DNSの作動確認
が正常に動くことを確かめる。
愛着のためにも(?)ホスト名をつけておく。
hostnamectl
を使う場合と/etc/hostname
を直接いじる場合がある。
前者が使える環境ならそっちのほうがたぶん良い。
後者の場合、要再起動。
パッケージマネージャが見に行くリポジトリを近くのミラーサーバーに指定する。
済んだらシステム全体のアップデートをかける。
/etc/ssh/sshd_configの設定を確認してからsshdを起動。
あたりを確認しておけばよいか。
ポートを22番以外に変えておくと攻撃が減るが、ファイアウォールのある環境などから自分もログインできなくなることがあるので注意。
ログインできることを確認する。
ログインできたら、公開鍵認証できるように設定する。
具体的には手元のマシンの公開鍵~/.ssh/id_ed25519.pub
をサーバーの~/.ssh/authorized_keys
に書き込む。
~/.ssh
のパーミッションは700、~/.ssh/authorized_keys
のパーミッションは600にしておくこと(ディストリビューションによってはこうしないとそもそも公開鍵認証でログインできない)。
パスワード認証が必要ないなら
にしてしまう。
設定を変えたらsshdの再起動を忘れないように。
パスワード認証を許可するならfail2ban(など)で、sshのポートへの攻撃から最低限守る。
ディストリビューションによっては日本語ロケールが有効化されていないことがあるので、その場合有効化する。
とはいっても、別にen_US.UTF-8で使い続けてもいいかもしれない。
もし「ssh経由でなく物理コンソールからも使う」かつ「GUIの環境を入れない」かつ「日本語も扱う」なら、日本語表示用にyaft、fbtermなどのフレームバッファターミナル、日本語入力用にuim-fepのようなフレームバッファターミナルで使えるIMEを入れる必要が出てくる。
それなりにめんどくさい(設定も面倒だし半角/全角キーなどの特殊キーも使えない)ので、いっそi3wmのような軽量GUI環境を入れるのも手か。
不要なポートは塞いでおく。
最近はiptablesを置き換えるものとしてnftablesというのが出た。
最終更新: 2020-05-27 12:05:42 +0900
This page is generated by sinanoki.