HOME/ FreeBSD/ Network Configure

Network設定メモ

Flet's ADSLで常時接続となり、ネットワーク構成を再構築した。

ネットワーク構成図は次のようになっている。

NetworkTopology

一番下のマシン群 (centaur, jetworld, waza, etc.) がローカルマシンを設置するセグメント (192.168.100.XXX/24) になる。 中央のkinggがルータとなる。

インターネットにはPPPoEを使った接続となる。

Domain Name : tokuda.net
Network Address : 192.168.100.0/255.255.255.0
Default Router : 192.168.100.1
DNS Server : 192.168.100.2

centaurはローカル用サーバであり、NFSなどのサービスを提供している。

ルータ (kingg)

PPPoE

Flet's ADSLはPPPoEを使わなければならない。 FreeBSDのpppはPPPoEに対応しているので多少の設定で容易にPPPoEが利用できる。

カーネルの再構築

カーネルのコンフィグファイルに

を加えて再構築しておく。

pppの設定

/etc/ppp/ppp.confを編集する。

default:
 set device PPPoE:ed1
 set MRU 1454
 set MTU 1454
 set log Phase tun command
 set dial
 set login
 set ifaddr 10.0.0.1/0 10.0.0.2/0
 add default HISADDR
 nat enable yes
# enable dns
papchap:
 set authname guest@flets
 set authkey guest

接続するにはpppコマンドを使う。

# ppp -ddial -nat -quiet papchap

enable natしているので-natはいらないが明示的に付けている。

再起動時に自動的にpppを起動したければ、/etc/rc.confに次の行を加える。

ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="papchap"

セキュリティ向上のために

セキュリティ向上のためにとりあえずやったこと。

設定は/etc/rc.confに次の行を追加する。

sendmail_enable="NO"
inetd_enable="NO"

パケットフィルタリング (ipfw)

ルーティングを許可しているので、 セキュリティ確保のためパケットフィルタリングを行う。

また、拒否したパケットに付いては全てログをとる。

次のようなファイルを作成し/etc/firewallとして配置する。

net="192.168.100.0/24"

# Local Connection 
ipfw add allow all from any to any via lo0

# Snoofing Packet
ipfw add deny log all from ${net}    to any recv tun0
ipfw add deny log all from 127.0.0.1 to any recv tun0

# TCP (established)
ipfw add allow tcp from any to any established

# TCP (Private --O--> Global)
ipfw add allow tcp from ${net} to any

# TCP (Global  --X--> Private)
ipfw add deny log tcp from any to any

# UDP (DNS Query Private <--O--> Global)
ipfw add allow udp from ${net} to any domain keep-state
ipfw add check-state

# ICMP (Private <-> Firewall Machine)
ipfw add allow icmp from any to any via ed0


# Invalid Packet Log
ipfw add deny log all from any to an

/etc/rc.confにFirewall機能を有効にさせる設定をおこなう。

firewall_enable="YES"
firewall_script="/etc/firewall"

多目的サーバ (centaur)

centaurはPrivate Networkのマシンに対するさまざまなサービスを提供する。

提供するサービスは次のとおりである (予定も含む)。

NFSサーバ

/etc/rc.confにnfs_server_enable="YES"と書いておく。

/etc/exportにNFSで見せたいディレクトリを列挙する。

/usr/home              -maproot=daemon 192.168.100.10
/usr/home              -ro -mapall=nobody
/usr                   -alldirs -maproot=daemon 192.168.100.10

NFSクライアント

/etc/rc.confにnfs_client_enable="YES"と書いておく。

そんで、/etc/fstabにマウントしたいディレクトリを書いておく。

192.168.100.2:/usr/home /usr/home       nfs     rw      0       0
192.168.100.2:/usr/ports/distfiles  /usr/ports/distfiles       nfs     rw      0       0
192.168.100.2:/usr/packages /usr/packages       nfs     rw      0       0

/usrを丸見えにするのはセキュリティ上問題があるが、 IPアドレスを指定してマウントできるホストを限定しているのと Private Networkということで大目に見ている (だめですか?)。



HOME/ FreeBSD/ Network Configure

$Lastupdate: Mon Mar 18 02:30:16 2002 $