自宅サーバを立てようと思った。結局は諸事情によりUbuntu Serverを使わないことにしたのだけど、メモの為に残す。といってもSambaとSSH入れただけだけど…。
インストールしたのは Ubuntu Server 14.04.2 LTS 。マシンはHP ProLiant MicroServer N54L。
CD/DVDドライブがなかったので、Ubuntu ServerのisoファイルをDD(DD for windows, 管理者権限で実行する必要あり)でUSBメモリに書き込み、起動した。
とりあえずウィザードに従ってインストール。OpenSSHとSambaを入れた。
sshの設定。
などを参考に。
iptablesもついでに設定した。
iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP
ここで、再起動するとiptablesはリセットされてしまう。
- iptables-persistent
をインストールすると再起動しても設定が保持されるらしい。
Sambaの設定。
- Ubuntu 14.04 LTS : Sambaサーバー : フルアクセスの共有フォルダ作成 : Server World
- smb.conf
- SambaでWindowsファイル共有を行う正しいやり方 - ももいろテクノロジー
などを参考に設定した。
またiptablesの設定…以下の設定を追加した。
iptables -A INPUT -p udp --dport 137:138 -j ACCEPT iptables -A INPUT -p tcp --dport 139 -j ACCEPT iptables -A INPUT -p tcp --dport 445 -j ACCEPT
再起動しても適用されるように
sudo /etc/init.d/iptables-persistent save
などとしておく。
ここでなぜだが、インストールしたままの状態だと、起動時にネットワークからアクセスできないようだ。(sudo service smbd restart するとアクセスできるようになる)。バグ?
これは
/etc/init/smbd.conf
を編集し
start on (local-filesystems and net-device-up)
を
start on (local-filesystems and net-device-up IFACE!=lo)
に変更( IFACE!=lo を追加)することで回避でき、サーバ起動時にもネットワークからアクセスできるようになるらしい。