F9 キーを押して BIOS 設定画面にする. 設定変更せず
マウス, キーボードの PS/2 端子を USB に変換する コネクタが kihada と blue で 1 つずつしかない. そのため一時的に繋ぎ替えて使用した.
Debian GNU/Linux 7.6 の起動 CD-ROM (debian-7.6.2-amd64)の挿入 graphical install を選択
言語
Japanese - 日本語 を選択
場所
日本
キーボード
日本語
ネットワークの設定
eth0 を選択 DHCP の設定でキャンセル ネットワークを手動で設定 IP アドレス 133.87.45.136 ネットマスク 255.255.255.0 ゲートウェイ 133.87.45.1 ネームサーバアドレス 133.87.45.70 133.87.45.66 133.87.1.11 ホスト名 aoi ドメイン名 ep.sci.hokudai.ac.jp
root のパス
root の本名
あなたの本名
アカウント名
任意のアカウント名
アカウントのパス
ディスクのパーティショニング
ガイド - ディスク全体を使う
パーティショニングするディスクの選択
sda を選択
パーティショニング機構
全てのファイルを1つのパーティションに(初心者ユーザには推奨)
パーティショニングするディスクの選択
sdb を選択
パーティショニング機構
全てのファイルを1つのパーティションに(初心者ユーザには推奨)
ソフトウェア RAID の設定
ディスクへの変更の書き込み root パーティションを RAID にする md の作成 ディスクのパーティショニング RAID1 RAID1 アレイのアクティブデバイス数 2 RAID1 アレイのスペアデバイス数 0 RAID デバイスの選択 sda1 sdb1 記憶デバイスへの変更を書き込み、 RAID を設定しますか? はい swap パーティションを RAID にする md の作成 ディスクのパーティショニング RAID1 RAID1 アレイのアクティブデバイス数 2 RAID1 アレイのスペアデバイス数 0 RAID デバイスの選択 sda5 sdb5 記憶デバイスへの変更を書き込み、 RAID を設定しますか? はい 完了 RAID1 デバイス 0. のファイルシステムを ext4 にし, マウントポジションを / にする RAID1 デバイス 1. のファイルシステムを スワップ領域にする
パーティショニングの終了とディスクへの変更の書き込み
ディスクに変更を書き込みますか?
はい を選択
パッケージマネージャの設定
日本
Debian アーカイブミラー
dennou-h.gfd-dennou.org
HTTP プロキシの情報
空
Debian パッケージ利用調査に参加しますか?
いいえ
インストールするソフトウェアの選択
「標準システムユーティリティ」のみ
マスターブートレコードに GRUB ブートローダをインストールしますか?
はい
インストールの完了
起動
$ export LC_ALL=C $ export LANG=C $ export LANGUAGE=C
$ su # apt-get install ssh
以後,遠隔ログインで作業する.
コアマネとの相談で mondo*を決める
# adduser --uid 40008 mondo8
# aptitude install sudo # visudo
mondo8 sudo 権限を追加
以後,mondo8で作業する
/etc/ssh/sshd_config の設定
X11Forwarding no PermitRootLogin no
/etc/hosts.deny の編集
sshd: ALL
を追加.
/etc/hosts.allow の編集
sshd: .ep.sci.hokudai.ac.jp
を追加.
アンインストールすべきパッケージが入っているかを確認
$dpkg -l "パッケージ名"
特になし. もしあれば
#apt-get remove パッケージ名
で削除する.
# dpkg -l ntpdate
ntpdate が入っていないがそのまま.
特に必要ない
# apt-get install bind9
# cp /etc/resolv.conf /etc/resolv.conf_bk
resolv.conf を以下のように書き直す. (前の内容は削除した上で書き直す)
search ep.sci.hokudai.ac.jp nameserver 127.0.0.1
$ dig ep.sci.hokudai.ac.jp any
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> ep.sci.hokudai.ac.jp any ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45768 ;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 2, ADDITIONAL: 0
;; QUESTION SECTION: ;ep.sci.hokudai.ac.jp. IN ANY
;; ANSWER SECTION: ep.sci.hokudai.ac.jp. 86400 IN NS yellow.ep.sci.hokudai.ac.jp. ep.sci.hokudai.ac.jp. 86400 IN NS blue.ep.sci.hokudai.ac.jp. ep.sci.hokudai.ac.jp. 86400 IN MX 10 grey.ep.sci.hokudai.ac.jp. ep.sci.hokudai.ac.jp. 86400 IN MX 20 orange.ep.sci.hokudai.ac.jp. ep.sci.hokudai.ac.jp. 86400 IN SOA yellow.ep.sci.hokudai.ac.jp. postmaster.ep.sci.hokudai.ac.jp. 2013092540 10800 3600 604800 86400
;; AUTHORITY SECTION: ep.sci.hokudai.ac.jp. 86400 IN NS blue.ep.sci.hokudai.ac.jp. ep.sci.hokudai.ac.jp. 86400 IN NS yellow.ep.sci.hokudai.ac.jp.
;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Thu Oct 3 14:27:18 2014 ;; MSG SIZE rcvd: 197
ep.zone local.rev local.zone named.root をblue から持ってくる
# scp ****@blue.ep.sci.hokudai.ac.jp:/var/named/* /var/cache/bind/
以下の記述を追加する.
zone "ep.sci.hokudai.ac.jp" { type slave; file "/var/cache/bind/ep.zone"; notify no; masters {133.87.45.70;}; };
===== yellow での作業 yellow の /etc/bind/named.conf.option に以下の記述を追加して, aoi へのゾーンファイルの転送を許可する
allow-transfer { 133.87.45.66; 133.87.1.11; 133.87.45.136; };
この記述をしないと, ゾーンファイルの転送要請をすべて許可してしまう.
逆に, この記述を加えると明示的に許可していないところからの転送要請はすべて許可されなくなるので注意.
bind の restart
# /etc/init.d/bind9 restart
/var/log/daemon.log を見る
search ep.sci.hokudai.ac.jp nameserver 127.0.0.1 nameserver 133.87.45.70 nameserver 133.87.1.11
とする.
htroff_2.0-1
# wget http://www.gfd-dennou.org/arch/cc-env/htroff/htroff_2.0-1_all.deb # dpkg -i htroff_2.0-1_all.deb
# adduser --uid 500 --disabled-password gate
管理者の名前は Administrator of gate-toroku-system とした.
gate グループに gate 管理者を加える.
/etc/group を
gate:x:500:morikawa,mym,odakker,takahisa,michi
と編集.
.shosts 認証を可能にする. /etc/ssh/sshd_config を以下のように編集する.
(変更前) IgnoreRhosts yes HostbasedAuthentication no (変更後) IgnoreRhosts no HostbasedAuthentication yes
ファイル編集後, ssh を再起動する.
# /etc/init.d/ssh restart
gate ユーザになる.
$ sudo -u gate -s -H
/home/gate へ移動する.
$ cd /home/gate/
.shosts を作成する. ファイルに以下のように書きこむ.
orange.ep.sci.hokudai.ac.jp gate
.shosts のパーミッションを変更し gate 以外のユーザが見れないようにする.
$ chmod 600 .shosts
/usr/bin/ssh, /usr/bin/ssh-keygen の s ビットを立てる.
.shosts 認証を有効にする.
/etc/ssh/ssh_config は既に
HostbasedAuthentication yes PreferredAuthentications hostbased,publickey,password,keyboard-interactive
と設定されていたので変更しない.
gate ユーザになる.
$ sudo -u gate -s -H
orange の公開鍵が既に存在しているかを調べる.
$ grep orange /home/gate/.ssh/known_hosts
orange の公開鍵を取得する.アドレスはフルドメインで入力する.
$ ssh orange.ep.sci.hokudai.ac.jp
ここで公開鍵を作るかどうかを聞かれるので yes と入力する.
Ctrl + c で出る.
gate ユーザになる.
$ sudo -u gate -s -H
.ssh/known_hosts にローカルホストの公開鍵が存在するかを確認し,あれば削除する.
$ grep aoi .ssh/known_hosts
公開鍵を取得する. (アドレスはフルドメインで入力する)
$ ssh aoi.ep.sci.hokudai.ac.jp
ここで公開鍵を作るかどうかを聞かれるので yes と入力する.
Ctrl + c で出る.
$ sudo -u gate -s -H $ cd /home/gate $ scp hogehoge@orange.ep.sci.hokudai.ac.jp:/home/gate/gate-toroku-system.tar.gz ./
$ tar xvfz gate-toroku-system.tar.gz $ cd gate-toroku-system
/home/gate/gate-toroku-system/include/gate.conf の設定
## 本気モードとデバックモード # $DEBUG_CONFIG = 1; # 0: 本気モード, 1: デバッグモード
となっていることを確認. 入れ替え直前に本気モードに変える.
- ディレクトリ構成の設定 $VAR_NAMED_DIR = /var/cache/bind';
がゾーンファイルの置き場所に対応していることを確認
Config.mk の生成
$ exit (一般ユーザに戻る) $ sudo -u gate -s -H $ cd /home/gate/gate-toroku-system $ perl ./config.pl
make によるコンパイル
$ make
インストール
$ exit (一般ユーザに戻る) $ sudo -s (root ユーザになる) # cd /home/gate/gate-toroku-system # cp include/gate.conf /etc/gate.conf # make install
インストール終了後, プログラムファイル (gate-ip-accept 等)が /usr/local/bin, /u\ sr/local/sbin, /usr/local/lib/gate にインストールされていることを確認する. また\ , /etc/passwd, /etc/shadow, /etc/group, /etc/sudoers が /ETC に存在していること\ を確認する.
/etc/gate.conf は
$USE_DAEMON = 1 ;
となっていた.
/etc/inetd.conf に以下の行を追加(1 行で書く)
gate stream tcp nowait root /usr/sbin/tcpd /usr/local/lib/gate/gate-daily -N
gate 用に 8888 番 ポートを割り当てる. /etc/services に以下の行を追加する.
gate 8888/tcp
/etc/inetd を起動する.
# /etc/init.d/inetutils-inetd start
gate のポートには登録サーバである orange 以外のホストはアクセスできないようにす\ る. /etc/hosts.deny を以下のように編集して全てのホストに対して gate ポートへの\\ アクセスを禁止する.
gate-daily: ALL [改行]
/etc/hosts.allow を以下のように編集して orange に対して gate ポートへのアクセス\ を許可する.
gate-daily: orange.ep.sci.hokudai.ac.jp [改行]
# tcpdmatch gate-daily [orange.ep.sci.hokudai.ac.jp 以外のホスト名]
access: denied と表示された.
# tcpdmatch gate-daily orange.ep.sci.hokudai.ac.jp
access: granted と表示された.
# cp /etc/passwd ~/ # cp /etc/shadow ~/ # cp /etc/group ~/ # cp /etc/sudoers ~/ # chmod 400 passwd shadow group sudoers
万一端末が動かなくなった時に作業ができるように root になった端末をもう一つ確保\\ しておく.
テストのため, /etc/gate.conf を一度以下のように書き換える
## 本気モードとデバックモード # $DEBUG_CONFIG = 0; # 0: 本気モード, 1: デバッグモード
www サーバ (orange) から aoi の gate ポートに接続する.
$ ssh orange.ep.sci.hokudai.ac.jp $ telnet aoi.ep.sci.hokudai.ac.jp 8888
正常に接続できたかを確認するには /etc/passwd, /etc/shadow などのファイルのタイ\\ ムスタンプを確認する.
(各サーバでチェック [www でじゃないよ!!]) $ date (現在時刻の確認) $ ls -l /etc/passwd /etc/shadow
また, /etc/passwd の中身がユーザ ID の順番に並び変えられていればよい.
動作確認終了後/etc/gate.conf の設定を元に戻す
## 本気モードとデバックモード # $DEBUG_CONFIG = 1; # 0: 本気モード, 1: デバッグモード
$ apt-get install syslog-ng
パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の特別パッケージがインストールされます: libdbi1 libevtlog0 libffi5 libglib2.0-0 libglib2.0-data libjson0 libmongo-client0 libnet1 libsyslog-ng-3.3.5 libsystemd-daemon0 shared-mime-info syslog-ng-core syslog-ng-mod-json syslog-ng-mod-mongodb syslog-ng-mod-sql 提案パッケージ: mongodb-server libdbd-mysql libdbd-pgsql libdbd-sqlite3 以下のパッケージは「削除」されます: rsyslog 以下のパッケージが新たにインストールされます: libdbi1 libevtlog0 libffi5 libglib2.0-0 libglib2.0-data libjson0 libmongo-client0 libnet1 libsyslog-ng-3.3.5 libsystemd-daemon0 shared-mime-info syslog-ng syslog-ng-core syslog-ng-mod-json syslog-ng-mod-mongodb syslog-ng-mod-sql アップグレード: 0 個、新規インストール: 16 個、削除: 1 個、保留: 0 個。 4,770 kB のアーカイブを取得する必要があります。 この操作後に追加で 17.0 MB のディスク容量が消費されます。 続行しますか [Y/n]?
と表示される. Y を押してつぎに進む
/etc/syslog-ng/syslog-ng.conf に,
source s_lemon { # - UDP 514 番を使う。 udp(ip("133.87.45.136") port(514)); }; destination d_lemon_log { # lemon から受信したログは /var/log/lemon_log に保存する。 file("/var/log/lemon_log"); }; filter f_lemon_log { host(133.87.45.154) and level(info..emerg); }; log { source(s_lemon); filter(f_lemon_log); destination(d_lemon_log); };
を追加.
# /etc/init.d/syslog-ng restart
で syslog-ng を再起動し,設定を有効にする.
# nano /etc/logrotate.conf
以下の記述を追加する
/var/log/lemon_log { weekly rotate 10 compress }
# aptitude install dhcp3-server
dhcp3-sserver ではなく, isc-dhcp-server がインストールされた インストール途中で
[FAIL] Starting ISC DHCP server: dhcpd[....] check syslog for diagnostics. ... failed! failed! invoke-rc.d: initscript isc-dhcp-server, action "start" failed.
と出た.
$ dpkg -l | grep isc-dhcp-*
すると, ii isc-dhcp-client 4.2.2.dfsg.1-5+deb70u6 amd64 ISC DHCP client ii isc-dhcp-common 4.2.2.dfsg.1-5+deb70u6 amd64 common files used by all the isc-dhcp* packages ii isc-dhcp-server 4.2.2.dfsg.1-5+deb70u6 amd64 ISC DHCP server for automatic IP address assignment
となっていて,インストールはされた模様.
設定ファイルの場所は /etc/dhcp/dhcpd.conf である.
# cd /etc/dhcp/ # cp dhcpd.conf dhcpd.conf.org
dhcpd.conf の中身をすべて消して以下のものを書き込む.
# dhcpd.conf # # This is dhcpd.conf, generated by gate-db-to-dhcpd. # If you are to edit this file, do not edit it directly. # # General Configuration default-lease-time 6000; max-lease-time 72000; option routers 192.168.16.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.16.255; option domain-name "ep.sci.hokudai.ac.jp"; option domain-name-servers 133.87.45.70, 133.87.45.66, 133.87.1.11; subnet 192.168.16.0 netmask 255.255.255.0 { range 192.168.16.130 192.168.16.254; }
/etc/network/interfaces の編集
auto eth1 iface eth1 inet static address 192.168.16.2 netmask 255.255.255.0 broadcast 192.168.16.255
と書き加える
同じIPを持っているマシンが存在するので, 聞かれたときに同じネットワーク内でしか答えないようにする
注意 これを行わないと現在運用中のDHCPが機能しなくなるので注意
/etc/sysctl.conf に以下の記述を書き加える
net.ipv4.conf.eth0.arp_ignore = 1 net.ipv4.conf.eth1.arp_ignore = 1
/etc/default/isc-dhcp-server の編集
INTERFACES="eth1"
とした
- DHCP に関する設定 $DHCPD_FILE = "$ETCDIR/dhcp/dhcpd.conf"; $DHCP_INIT = 'isc-dhcp-server';
となっていることを確認
特に行わない.