読者です 読者をやめる 読者になる 読者になる

(Debian)さくらのVPS 1Gへの移行と初期設定いろいろ

今まで使ってきた512プランが今月末で更新タイミングだったので、ディスク容量ほしさに1Gプランに乗り換えました。
ついでにCentOSからDebianへ変更したので、その作業メモです。

Debianのインストール

以下のページを参考にDebianをインストールします。

完了後、アップデートを実行します。

# aptitude update
# aptitude safe-upgrade

sshの設定

使用しているSSH鍵の公開鍵をサーバーへscpして、authorized_keysにセットします。

(client)$ scp ~/.ssh/id_rsa.pub vps-user@VPS-Server:/home/vps-user
(vps)$ mkdir ~/.ssh
(vps)$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
(vps)$ chmod 700 ~/.ssh
(vps)$ chmod 600 ~/.ssh/*
(vps)$ rm ~/id_rsa.pub

rootログイン禁止、パスワード認証禁止などを設定します。

# vi /etc/ssh/sshd_config
Port 1234
PermitRootLogin no
PermitEmptyPasswords no
PasswordAuthentication no
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile	%h/.ssh/authorized_keys

再起動します。

# /etc/init.d/ssh restart

iptablesの設定

(パケットフィルタ要件)

  • 許可する通信
    • ssh (1234/tcp)
  • 上記以外のINPUTは全てDROP
  • ループバックアドレスはINPUT/OUTPUT全て許可
  • INPUTでDROPした通信はログに出力
  • OUTPUTは全て許可
  • FORWARDは全てDROP

ルールの適用に、iptables-persistentを使用するのでインストールします。

# aptitude install iptables-persistent

ルール設定ファイルを作成します。

# vi /etc/iptables/iptables.rules
*filter

-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A INPUT -p TCP --dport 1234 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

-N LOGGING
-A LOGGING -j LOG --log-prefix "IPTABLES DROP: " --log-level 7
-A LOGGING -j DROP
-A INPUT -j LOGGING

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT ACCEPT

COMMIT

ルールを適用して、設定を確認します。

# iptables-restore < /etc/iptables/iptables.rules
# iptables -L

ルールを/etc/iptables/rulesに反映させて、iptables-persistentを起動します。

# iptables-save > /etc/iptables/rules
# /etc/init.d/iptables-persistent start

iptables-persistentは起動時に/etc/iptables/rulesを適用してくれます。
便利です。

DROPログ用にrsyslogを設定します。

# vi /etc/rsyslog.conf
kern.=debug			/var/log/iptables_drop.log
# /etc/init.d/rsyslog restart

その他いろいろ

  • sudo
# aptitude install sudo
# visudo
  • build-essential, module-assistant, paco
$ sudo aptitude install build-essential module-assistant paco