FreeBSD ネットワーク設定
ネットワークカードの設定
外部のマシンなどで、ネットワークカードを2枚差ししているときは、 /etc/rc.confに以下のような行を加える
network_interfaces="外部側デバイス名 内部側デバイス名 lo0" ifconfig_外部側デバイス名="inet 外部側IPアドレス netmask ネットマスク" ifconfig_内部側デバイス名="inet 外部側IPアドレス netmask ネットマスク" |
デバイス名は#ifconfigで調べてください
「外部側」というのはインターネットに接続する側で、「内部側」というのは自分がNATやDHCPなどのサービスを提供する側
セキュリティ設定
/etc/rc.conf で sendmail_enable="NONE"
セキュリティ上の理由から、特に必要の無い限り sendmail は無効にします. 普通にメールを読み書きするだけ(メールサーバとして運用しない)なら、sendmail は無効にしても大丈夫です. /etc/rc.conf に、「sendmail_enable="NONE"」と設定します. 「sendmail_enable="NO"」のような行があったとしても、実際には sendmail は無効にはなっていません。 "NO"ではなく"NONE"です.もう1度確認します.
sendmail_enable="NONE"
/etc/ttys の設定
セキュリティ上の理由から、余分な getty を止めます. /etc/ttys を編集します.
設定例は次の通りです.設定の「意味」を理解して行うこと。
# 設定の「意味」を理解して行うこと(ここに書いたのは、あくまでも例です)。 ttyv1 の行: secure を insecure へ ttyv2 から ttyv7 の行: コメントアウト ttyd0 から ttyd3 の行: コメントアウト
/etc/pam.conf
-
/etc/pam.confに以下の3行を追加(もしpam.confに既に以下の行がある ときは
この項目はとばしてください)
sshd auth sufficient pam_skey.so sshd auth required pam_unix.so try_first_pass sshd session required pam_permit.so
/etc/hosts.deny
セキュリティ上の理由から, 外部からの TCP/IP 通信は拒否するように設定しておく.
vi /etc/hosts.deny # 次の1行を先頭に書く ----- ALL: ALL -----
/etc/hosts.allow
遠隔からの TCP/IP 接続をすべて拒否しておきたいので, /etc/hosts.allow は,次のように設定しておく.
ALL : 127.0.0.1 : ALLOW
ALL : ALL : DENY

/etc/ssh/sshd_config
まず,HostKey の行を記述する
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
次に,/etc/ssh/sshd_config は次のような設定を書き加える.
hoge1 hoge2 hoge3 は, 遠隔からの ssh 接続を許すユーザ名を列挙する(つまり「hoge1 hoge2 hoge3」 のところは必ず書き換える).
AllowGroups wheel
AllowUsers hoge1 hoge2 hoge3
Match User hoge1
X11Forwarding yes
AllowTcpForwarding yes
Match User hoge2
X11Forwarding yes
AllowTcpForwarding yes
Match User hoge3
X11Forwarding yes
AllowTcpForwarding yes
研究室ネットワークにつないで使うための設定
/etc/resolv.conf の確認
/etc/resolv.conf が正しく設定されているかどうかの確認を行う
/etc/resolv.confには、 DNSで使うドメイン名の設定などを行う。 domain, nameserver, search の行が正しく設定されていることをよく確認すること
- グローバルIPアドレスを持つマシン
(xxx.yyy.zzz の部分は、DNS サーバのネットワークアドレス)。
domain <DNS ドメイン名> nameserver <DNS サーバの IP アドレス> # for example, xxx.yyy.zzz.160 (dnsmail) search <DNS ドメイン名>
- (参考)プライベートIPアドレスを持つマシン
ルータが「代理DNSサーバ」の機能をもっていることが多いので、確認の上、 「代理DNSサーバ」であれば、そのIPアドレスを設定します
domain <DNS ドメイン名> nameserver <代理 DNS サーバの IP アドレス> # for example, 192.168.33.1 (NAT) search <DNS ドメイン名>
(固定 IP アドレスを持つマシンの場合) NIS サーバ, DNS サーバに登録
- 固定 IP アドレスを持つマシンなら NIS (マシン名はdnsmail) に登録
-
dnsmail にログインして
/var/yp/nis.inputs/hostsに自ホストのエントリ追加
cd /var/yp; make - dnsmail からログアウト
-
dnsmail にログインして
- DNS に登録(固定 IP アドレスを持つ場合)
外部ネットマシンの場合、適切な DNS サーバのゾーンファイル、逆引きデータファイルにIPとホスト名を登録する- 外部のマシンならば dnsmail にログインして /usr/named/dbrev.revとdb.zoneに自ホストのエントリを追加
- (シリアルナンバー(それぞれのファイルの上部のSerialと書いてある場 所)の書き換えを忘れないこと)
- ps -ax |grep named でnamedのプロセスIDを調べて,kill -HUP する。 あるいは、named.restart を実行
/etc/network
- /etc/networksを以下を書いたファイルに置き換える。local の行は、amd に必要.
(xxx, yyy の部分は、適切なアドレスを記入してください)。
csceainet 133.xxx.yyy local 192.168.33
/etc/shells
- /etc/shellsに以下の行を追加
/usr/local/bin/tcsh
- /bin/tcshに対して以下のようにシンボリックリンクを作る
ln -s /bin/tcsh /usr/local/bin/tcsh
(オプション) NIS クライアントとしての設定
共有マシンなどでは、 NIS クライアントとしての設定を行ない、 NIS サーバで管理したデータ(アカウントデータ等)を受けとるように設定するのが便利です.
vipw の実行
vipw コマンドで、パスワードファイルを開き,末尾に 「+:::::::」を書き加えておく
これは「パスワードのデータを NIS サーバからも取り込む」という意味
vipw # 最終行に次の1行を追加 ----- +::::::::: -----
/etc/group の変更
NIS クライアントとして機能させる
vi /etc/group # 最終行に次の1行を追加 ----- +::: -----
domainname の確認 (domainname コマンド実行)
domainname # 正しい NIS ドメイン名が表示されることを確認する
もし、NIS ドメイン名が正しくないときは、次のコマンドを実行して変更しておく
domainname <NISドメイン名>
/etc/yp.conf
「NIS ドメイン名」と「NIS サーバのホスト名(または IP アドレス)」が /etc/rc.conf に正しく設定されていることを確認する
再起動し、エラーメッセージが出ないことの確認
sync sync sync sync sync reboot
NIS クライアント動作確認
/usr/bin/rpcinfo -p localhost # portmapper, ypbind についての情報が表示される /usr/bin/rpcinfo -u localhost ypbind # ypbind についての情報が表示される ypcat hosts # NIS サーバで管理されている host が表示される
再起動
以上で、インストール作業は終了したので、再起動します.
sync sync sync sync sync reboot