Debian 8(jessie)をインストールするときのまとめ

Debian 8ことJessieのインストーラは、Wheezyのころとほとんど変わらない。目立つ違いといえば、スプラッシュの画面が緑色になったことと、パーティション分割を選んだ際にルート領域を大き目に確保するようになったぐらいだろうか。WheezyのころはLVMパーティションを構成し自動分割を行うと、インストール後にパーティションの調整がほぼ必須だったが、とくに作業する必要はなくなっている。

インストール時

lvm、パーティション分割、パッケージ(tasksel)はsshサーバーと標準ツールでインストール。インストール時に気合を入れてカスタマイズしなくてもあとで何とかなる。

jessie01

jessie02

jessie03

LVMの空き領域を作る

ファイル復旧やパーティションの調整用に、あらかじめ/homeを削って、未割当の領域を少し作っておく。

# umount /home
# e2fsck -f /dev/mapper/xxxx-vg-home
# resize2fs /dev/mapper/xxxx--vg-home 10G
# lvreduce -L 10G /dev/mapper/xxxx--vg-home
WARNING: Reducing active logical volume to 10.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce home? [y/n]: y
Size of logical volume xxxx-vg/home changed from 86.22 GiB (22072 extents) to 10.00 GiB (2560 extents).
Logical volume home successfully resized
# mount /home

# pvdisplay
--- Physical volume ---
:
Free PE 19512
:

 

削除するツール

rcpbind (nfsを使わない=111ポートを閉じる=サーバーサービスを利用しているなど)

# aptitude purge rpcbind

良く使うツールのインストール

  • extundelete (ジャーナルからのファイル復旧)
  • ntp、ntpdate(時刻合わせサーバー・クライアント)
  • wget(HTTPなどでのファイルダウンロード)
  • dnsutils(nslookup、digコマンドなど)
  • vim(エディタ:好み?癖?の問題)
  • lv(ビューア)
  • apache2-utils(htpasswdやlogresolveなど)

を入れておく。

aptitude install extundelete ntp ntpdate wget dnsutils vim lv apache2-utils

ntpは自動起動しないようにして、ときどきcronで起動するようにしておく。

# update-rc.d ntp disable

vimの設定

vimを標準エディタに設定する。2つ設定箇所がある。

# update-alternatives --config editor
alternative editor (/usr/bin/editor を提供) には 3 個の選択肢があります。

選択肢 パス 優先度 状態
------------------------------------------------------------
* 0 /bin/nano 40 自動モード
1 /bin/nano 40 手動モード
2 /usr/bin/vim.basic 30 手動モード
3 /usr/bin/vim.tiny 10 手動モード

現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください: 2
update-alternatives: /usr/bin/editor (editor) を提供するためにマニュアルモードで /usr/bin/vim.basic を使います

crontabのエディタはselect-editorで設定する。

# select-editor

Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.basic
  3. /usr/bin/vim.tiny

Choose 1-3 [1]: 2

IPv6の無効化

/etc/sysctl.d/以下にnet.ipv6.conf.all.disable_ipv6=1を記載したconfファイルを置き、再起動する。

# vi /etc/sysctl.d/disable_ipv6.conf

net.ipv6.conf.all.disable_ipv6 = 1

iptablesの設定(iptables-persistentの利用)

iptables-persistentでiptablesを管理する。

# aptitude install iptables-persistent

IPv6を使わない場合はすべてDROPに変更してして塞いでおく。

vi /etc/iptables/rules.v6
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
COMMIT

IPv4はSSHと必要なものを開けてあとは閉じておく。

# vi /etc/iptables/rules.v4

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 ! -i lo -j REJECT --reject-with icmp-port-unreachable
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# たとえばHTTP
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# SSHで設定したポートを指定
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
# -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
# -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables_log: " --log-level 7
-A INPUT -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -j REJECT --reject-with icmp-port-unreachable
-A OUTPUT -j ACCEPT
COMMIT

設定の反映は、jessieからinit.dのスクリプトではなく、

# netfilter-persistent reload

を実行するように変わっている。

Nginxは開発元から最新版を取得

# wget http://nginx.org/keys/nginx_signing.key
# apt-key add nginx_signing.key
# rm nginx_signing.key

/etc/apt/sources.listに以下の行を追加

# vi /etc/apt/sources.list

deb http://nginx.org/packages/debian/ jessie nginx deb-src http://nginx.org/packages/debian/ jessie nginx

一度パッケージ情報を更新しておく。

# aptitude update