Ubuntu 12.04 LTS Server のお勉強メモ。
Ubuntu 12.04以降なら sysv-rc-conf or insserv を使う。sysv-rc-confのほうがchkconfigに似ている。
SysV管轄:
# sysv-rc-conf -list
Upstart管轄:
# ls /etc/init
ただし、Sysv管轄のように見えて実体はUpstartにリンクされてたりするので、以下のディレクトリの内容とその関連性に注意しておくこと。
/etc/init.d /etc/init
公式ガイド参照:
ネットワークアダプタがうまく行かない時の情報収集:
# cat /etc/network/interfaces # env LANG=C ifconfig # aptitude search network-manager | grep ^i # sudo dhclient
参考: https://forums.ubuntulinux.jp/viewtopic.php?id=8555
インターフェイスの検出はudevがやってくれる。
/etc/udev/rules.d/70-persistent-net.rules
↑でNAME="eth0"とかNAME="eth1"とか入ってたら、それを
/etc/network/interfaces
に記載して、
ifup ethX
とかする。もしうまくup出来なかったら、もしかしたらマシンを再起動した方が良いかも。
"/etc/network/interfaces" については "man 5 interfaces" 参照。
とりあえずloopbackデバイス+DHCPのeth0設定だとこんな感じに。
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp
ネットワークサービス制御のUpstart設定:
/etc/init/networking.conf /etc/init/network-interface.conf /etc/init/network-interface-container.conf /etc/init/network-interface-security.conf
SysVInit互換設定:
/etc/init.d/network-interface /etc/init.d/network-interface-container /etc/init.d/network-interface-security ※この3つは全部 /lib/init/upstart-job へのsymbolic link
↑周りは ifupdown パッケージが提供してました:
dpkg -L ifupdown
"network-interface" 動作中はこんな感じ。:
network-interface (eth0) start/running network-interface (eth1) start/running network-interface (lo) start/running
network-interface-security (networking) start/running network-interface-security (network-interface/eth0) start/running network-interface-security (network-interface/eth1) start/running network-interface-security (network-interface/lo) start/running
ifupdownパッケージ自体では "/etc/apparmor/init/network-interface-security/" 以下のファイルは提供していない。
isc-dhcp-clientパッケージが
/etc/apparmor/init/network-interface-security/sbin.dhclient -> ../../apparmor.d/sbin.dhclient /etc/apparmor.d/sbin.dhclient
の2ファイル(内1つはsymbolic link)を提供してる。内容的にはAppArmorでDHCP関連のセキュリティを設定してるっぽい。
公式ドキュメント
デフォルトは無効化されてる。
参考:
設定ファイル配置は "man 8 ufw-frameowrk" の "OVERVIEW" 参照。
ufwはiptablesを使いやすくするラッパーとして動作する。
ufwコマンドで色々操作した結果は、
/lib/ufw/ user.rules user6.rules
に保存される。
その他、細かく調整したい場合は
/etc/default/ufw
とか
/etc/ufw/
の下の設定ファイルでいろいろ調整できるし、最終的にはiptables-restoreコマンドに食べさせる出力を生成するラッパーなので、iptablesのルールなども/etc/ufw/の下の".rules"ファイルでいろいろ調整できる。
例えば
ufw allow 22
とかすると、
/lib/ufw/user{6}.rules
が更新される。ので、再起動したあとも"ufw enable"しておけばちゃんと上記設定が反映された状態になってくれる。
(あんまり、実行したコマンドによる設定がどこに保存されるかわかりやすく書いてくれてなかったのでそこがわかんなかった。)
SSHでいろいろ試しても良いけど、"nc -l (port)" でUbuntu上で待ち受けさせといていろいろためしてみるとわかりやすい。
ufw enable
とか
ufw disable
とかすると、
/etc/ufw/ufw.conf
の中の
ENABLED=...
が"yes"とか"no"に自動的に切り替わる。
WindowsホストからUbuntuの仮想マシンに、大きめのファイルをまるっとコピーしたいときなどに便利。
ポイント:
あとは、共有用のディレクトリを用意して以下を追記
[Share] # Windows側から見える名前 path = /work/share writable = yes guest ok = yes guest only = yes create mode = 0777 directory mode = 0777 share modes = yes # 複数人が同一ファイルに同時アクセス時に警告