|
URL(Domain)が変更になりなりました! sawada.dyn.toは廃止になり、bwt.jpになりました。 トップページののURLはhttp://www.bwt.jp/です。 今までのURL「sawada.dyn.to」は7/1に廃止手続きが完了しました。 また、So-netの方のアドレスもU-Page+へのアップグレードに伴い、http://www002.upp.so-net.ne.jp/sawada/へ変更になりました。 |
LinuxのSlackwareではインストール時にxntpdは導入されません。
ここに、ダイヤルアップユーザーの為の導入メモをまとめました。
1.xntpdの入手
timesyncのホームページ(http://www.eecis.udel.edu/~ntp/)よりxntpdをftpする。
→ ftp://ftp.udel.edu/pub/ntp/ntp3/xntp3-5.93-export.tar.gz
2.アーカイブを展開する
$ tar zxvf xntp3-5.93-export.tar.gz
3.自分の環境に合わせ、コンパイルして、インストールする
$ su
# cd xntp3-5.93-export
# ./configure
# make
# make check
# make install
4.設定ファイルを作る
/etc/ntp.confserver clock.tl.fukuoka-u.ac.jp
driftfile /etc/ntp.drift
authenticate no
5.デーモン起動ファイルを作る
/etc/rc.d/rc.ntp# start NTP
echo 'Starting NTP service'
/usr/local/bin/xntpd -p /var/pid/xntpd.pid
6.boot時に自動起動するようにする
/etc/rc.d/rc.local# start NTP
/etc/rc.d/rc.ntp
7.時刻同期用スクリプトを作る
/usr/local/bin/ntpsync#!/bin/sh# kill ntpd process
/bin/kill -9 `cat /var/pid/xntpd.pid`
# ppp connection
/bin ping -c 3 <適当な外部のサーバーアドレス>
# NTP sync
/usr/local/bin/ntpdate clock.tl.fukuoka-u.ac.jp
# write to C-MOS clock
/sbin/clock -w
# start daemon
/usr/local/bin/xntpd -p /var/pid/xntpd.pid
8.cronに/usr/local/bin/ntpsyncを登録する
1.ソースとパッチの入手
# ls3.Linux shadow passwdに対応させるため、Makefileを修正する
netatalk-1.4b2.tar.gz afpd-macos8.diff afpd-btree.diff
# tar zxvf netatalk-1.4b2.tar.gz
# cd netatalk-1.4b2
# patch -l < ../afpd-macos8.diff
# patch -l < ../afpd-bfree.diff
# cd etc/afpd4.makeする
# vi MakefileCFLAGSのエントリに“-DSHADOWPW”を追加する
# cd ../../5.各種設定
# make
# make install
/etc/servicesに次の内容を追加rtmp 1/ddp # Routing Table Maintenance Protocol/usr/local/atalk/etc/atalkd.confの編集
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol# cp netatalk-1.4b2/config/atalkd.conf /usr/local/atalk/etc/atalkd.conf/usr/local/atalk/etc/AppleVolumes.default
# cd /usr/local/atalk/etc/
# vi /usr/local/atalk/etc/atalkd.conf次の1行だけでOK
etho -phase 2
/usr/local/atalk/etc/AppleVolumes.system の編集# cd /usr/local/atalk/etc//etc/rc.d/rc.atalkの設定
# cp netatalk-1.4b2/config/AppleVolumes.* ./AppleVolumes.defaultはげストに見せるフォルダの設定。
AppleVolumes.systemの方だけ編集してやればOK。
書式は、/pub "Public Folder"
実パス セレクタで見える共有名
1.ソースの入手
2.ソースを展開
# tar zxvf qpopper3.0.2.tar.gz3.make
Linuxのshadow passwordに対応するためにはオプションを付けてconfigします。4.インストール# cd ./qpopper3.0.2APOPを使用したい場合は下記のようにオプションを付けてconfigします。
# ./configure --enable-specialauth
# make# cd ./qpopper3.0.2
# ./configure --enable-specialauth --with-apop --with-apopuid
# make
標準で入っているpopperをリネームし、新たにmakeしたpopperをコピーします。5.各種設定# mv /usr/local/lib/popper /usr/local/lib/popper.old
# cp ./popper/popper /usr/local/lib/
/etc/services に、次の記述があるか確認します。無ければ追加します。6.inetdを再起動pop3 110/tcp # POP version 3/etc/inetd.conf のpop3に関する行を書き換えます。
pop3 110/udp
この時、他のpop3で始まる行はコメントアウトします。pop3 stream tcp nowait root /usr/local/lib/popper qpopper -s
1.条件
Sendmail 8.9.1+3.1W/8.9.02.sendmail.cfの作成
host godzilla
domain sawada.dyn.to
user@godzilla.sawada.dyn.toだけでなく、user@sawada.dyn.toでもメールをやりとりしたい。
送信はISPのSMTPサーバーに転送させず、MXを使用した配送とする。
私はm4マクロを使ってsendmail.cfを生成しました。普通はCFを使うそうですが。3.各種設定# cd /usr/src/sendmail/cf/cfsendmail.mc を作成します。include(`../m4/cf.m4')m4マクロでsendmail.cfを生成します
VERSIONID(`linux for smtp-only setup')dnl
OSTYPE(linux)
FEATURE(nouucp)dnl
FEATURE(always_add_domain)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(genericstable, `hash -o /etc/mail/genericstable')dnl
FEATURE(relay_hosts_only)dnl
GENERICS_DOMAIN_FILE(`/etc/mail/genericsdomain')
define(`ALIAS_FILE',`/etc/mail/aliases')
MAILER(local)dnl
MAILER(smtp)dnl# m4 sendmail.mc > sendmail.cf
sendmail関係の設定は/etc/mail に置く事としました。4.inetdを再起動する# cd /etc/etc/mail 内に設定ファイルを置きます。
# mkdir mail
# mv sendmail.cf sendmail.cf.old
# cp /usr/src/sendmail/cf/cf/sendmail.cf /etc/mail/
# ln -s /etc/mail/sendmail.cf /etc/mail/sendmail.cf
# cd mail"genericsdomain"の内容
自ホストのFQDN名を書いておきます。通常は以下でOK。# hostname -f > genericsdomain"genericstable"の内容
このホストからメール送信した場合のアドレス書き換えリストをならべます。
user@sawada.dyn.toで出したいので、下記のリストを作成しました。user1 user1@sawada.dyn.to"aliases"の内容
user2 user2@sawada.dyn.to
user3 user3@sawada.dyn.toroot: user1" relay-domains"の内容
news: root
postmaster: root
mail: root
www: root
webmaster: root
nobody: /dev/null
MAILER-DAEMON: nobody
これを書かないと、LAN内のクライアントから外にメールを送信できません。
無制限にする方法もあると思うが、今のところ分かりません。
とりあえず、*.jpと*.com宛てに送信できるようにしました。jp設定ファイルをhashする
com# makemap -r hash genericstable.db < genericstable
# newaliases
●sendmailとqpopperとdracdを使った POP before SMTPの実装
1. BerkeleyDB
1.1 入手
http://www.sleepycat.com/update/2.7.7/db-2.7.7.tar.gz
1.2 展開、コンパイル、インストール
$ tar xvzf db-2.7.7.tar.gz
$ cd db-2.7.7
$ cd build_unix
$ ../dist/configure
$ make
$ make install
2. DRACd
2.1 入手
ftp://mail.cc.umanitoba.ca/src/drac.tar.Z
2.2 展開
$ mkdir tmp
$ cp drac.tar.Z
$ cd tmp
$ tar xvzf drac.tar.Z
2.3 Makefileの修正
INSTALL = install
DEFS = -DSOCK_RPC -DFCNTL_LOCK -DGETHOST -DDASH_C
CFLAGS = $(DEFS) -g
LDLIBS = -ldb
TSTLIBS = -L. -ldrac
RPCGENFLAGS = -C
MANADM = 8
2.4 コンパイル、インストール
$ make
$ make install
$ make install-man
2.5 dracd.allowの作成
$ cd /etc/mail
$ touch dracd.allow
dracd.allowファイルには、POP3/IMAPサーバが稼動しているマシンのネットマスクと
IPアドレスを書きこむ。これはDRACD(rpc.dracd)とPOP3/IMAP サーバが通信できるよ
うにするため。標準では、rpc.dracdは POP3/IMAPサーバから受け取ったIPアドレスを
30分間保持する。つまり、POP3/IMAPサーバにログインしてから30分以内ならメールを
送信できる。
$ cat /etc/mail/dracd.allow
255.255.255.255 172.0.0.1
255.255.255.255 192.168.1.2
2.6 dracdの起動と確認
$ /usr/local/sbin/rpc.dracd &
$ ps -aux | grep rpc.dracd
root 182 0.0 0.6 892 416 ? S 03:08 0:00 rpc.dracd
$ pwd
/usr/src/tmp
$ ./testing 127.0.0.1 192.168.1.2
$ /usr/local/BerkeleyDB/bin/db_dump -p /etc/mail/dracd.db
format=print
type=btree
bt_minkey=2
db_pagesize=512
HEADER=END
192.168.1.2
972890074
dracd.dbファイルにIPアドレスが記録される事を確認する。
3. qpopper
3.1 入手
ftp://RING_SERVER/pub/net/mail/qpopper/qpopper3.1.2.tar.gz
v3.1以降だとパッチをあてなくてもdracdに対応している。
3.2 展開、コンパイル、インストール(dracd対応、APOP対応)
$ tar xvzf qpopper3.1.tar.gz
$ cd qpopper3.1
$ ./configure --enable-specialauth --with-apop --with-apopui --enable-drac=/dracがあるディレクトリ/
$ make ↑
例)/usr/src/tmp/
$ cp ./qpopper/popper /usr/sbin
3.3 inetd.confの修正
$ cd /etc/inetd.conf
pop3の行を下記の通りに書き換える
pop stream tcp nowait root /usr/sbin/popper qpopper -D 127.0.0.1 -s
3.4 inetdを再起動
$ ps -aux | grep inetd
$ kill -HUP
3.5 動作確認
$ telnet 127.0.0.1 110
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
+OK QPOP (version 3.1) at hoge starting.
user hogehoge <- 実際のユーザを入力
+OK Password required for hogehoge.
pass abcdefg <- パスワードを入力
+OK hogehoge has 0 visible messages (0 hidden) in 0 octets.
quit <- quitにて終了
+OK Pop server at hoge signing off.
Connection closed by foreign host.
続いて、dracdにIPアドレスが引き継がれているかを確認。
$ /usr/local/BerkeleyDB/bin/db_dump -p /etc/mail/dracd.db
format=print
type=btree
bt_minkey=2
db_pagesize=512
HEADER=END
127.0.0.1
972892612
4. sendmail
ついでなのでsendmailも最新版にアップデートする。
4.1 入手
ftp://RING_SERVER/pub/net/mail/sendmail/sendmail.8.11.2.tar.gz
4.2 展開、コンパイル、インストール
$ tar xvzf sendmail.8.11.2.tar.gz
$ cd sendmail.8.11.2
$ ./Build clean
$ ./Build -I/usr/local/BerkeleyDB/include -L/usr/local/BerkeleyDB/lib/
$ ./Build install
4.3 CF-3.7Wpl12を使ってsendmail.cfを作成
4.3.1 CFにdracd対応パッチをあてる
パッチを入手して展開
ftp://akagai.kuee.kyoto-u.ac.jp/pub/archives/net/CF-3.7Wpl2-drac.patch.gz
パッチをあてる
$ pwd
/usr/src
$tar zxvf CF-3.7Wpl2-drac.patch.gz
$ cd CF-3.7Wpl12/Master
$ patch < ../../CF-3.7Wpl2-drac.patch
4.3.2 sendmail.defの作成
$ pwd
/use/src/CF-3.7Wpl12
$ cp ./Standards/sendmail-v8.def sendmail.def
4.3.3 まず、通常通り設定する。
[version.v8]の項目の修正(3ケ所)
→ VERSION=3.7Wp12
→ VERSION_SEPARATOR=/
#LOCAL_VERSION=
##LOCAL_VERSION=`date +%D`
→ LOCAL_VERSION=`date +%y%m%d`
[ostype]の項目の修正(1ケ所)
# [ostype]
# OS type (choose a file name in ostype directory)
→ OS_TYPE=linux-slackware
[general]項目の修正(4ケ所)
# [general]
# with sendmail.mx (yes/no)
→ MX_SENDMAIL=yes
# local domain name (defined automatically)
→ MY_DOMAIN=ドメイン名
# local host name (defined automatically)
# V1: with domain name; V5: without domain name
→ MY_NAME=ホスト名
# default my official SMTP hostname
#OFFICIAL_NAME='$w' # for V1/NMTC
→ OFFICIAL_NAME='$w.$m' # for V5
# my internet aliases
#MY_ALIAS=
# define the class "w" with /etc/sendmail.cw (yes/no)
[adress]項目の修正(1ケ所)
# [address]
# user names which require host.domain
#LOCAL_ADMIN_USERS='root daemon news usenet postmaster MAILER-DAEMON'
##LOCAL_USERS='user1 user2 ...'
# default from-address (can be $j, $m or another generic address)
#FROM_ADDRESS='$j'
→ FROM_ADDRESS='$m'
# apply FROM_ADDRESS for receipients (yes/no)
#RECIPIENT_GENERIC=no
# rewrite address which has official name already into generic form
# (yes/lower/no)
[canon]項目の修正(1ケ所)
# [canon]
# canonicalization with nameserver lookup
# (all/one/short/unknown/cname/no; or *-append)
→ CANON=one # if MX_SENDMAIL = yes
#CANON=no # if MX_SENDMAIL = no
# domains which are already completed
##NO_CMPLT_DOMS='/etc/sendmail.topdomains'
[nosourceroute]の項目(1ケ所)
# generate rules not to relay source routed mails (yes/no)
→ REJECT_SOURCE_ROUTE_RELAY=yes
[option.v8]の項目(2ケ所)
# (True/False)
#OLD_STYLE_HEADERS='True'
# who (if anyone) should get extra copies of error messages
#
→ COPY_ERRORS_TO='postmaster'
# privacy flags
# (public/needmailhelo/needexpnhelo/needvrfyhelo/noexpn/
# novrfy/restrictmailq/restrictqrun/noreceipts/noetrn/noverb/
# goaway/authwarnings)
→ PRIVACY_FLAGS='goaway,restrictmailq,restrictqrun'
[smtpcheck]項目の修正(1ケ所)
# [smtpcheck]
→ MAIL_RELAY_RESTRICTION=no
#WITH_OLD_CF=no # (just for smtpcheck.def)
##CHECK_HOST_ALLOW=/etc/sendmail.allow
##CHECK_HOST_DENY=/etc/sendmail.deny
#CHECK_RELAY_DEFAULT=allow # (allow/deny)
# LOCAL_HOST_* does not check senders address
##LOCAL_HOST_IPADDR=/etc/sendmail.localip
##LOCAL_HOST_IPADDR=130.54.0
##LOCAL_HOST_DOMAIN=/etc/sendmail.localdomain
##LOCAL_HOST_DOMAIN=sub.kyoto-u.ac.jp
4.3.4 dracd関係の設定を変更、追加
MAIL_RELAY_RESTRICTION=yes
LOCAL_HOST_IPADDR=/etc/mail/localIP
LOCAL_HOST_DOMAIN=/etc/mail/localDomain
一番下に次の3行を追加
USE_DRAC=yes ← 必修
USE_MAPS_RBL=yes ← black list に載ったサイトからのメールをはじく
USE_SENDER_DNS_CHECK=yes ← 存在しないサイトからのメールをはじく
4.3.5 sendmail.cfの生成とインストール
$ make sendmake.cf
$ cp ./sendmail.cf /etc/mail
4.5 sendmailの再起動
5.自動起動するように設定する
/etc/rc.d/rc.local に次の行を追加する。(認証の有効時間を10分にした例)
echo 'Starting DRACd daemon...'
/usr/sbin/rpc.dracd -e 10 &
6. メモ
/etc/mail/localIP ファイルにIPアドレスを書いておくと、そのIPアドレスを持った
クライアントからの送信は認証せず許可する。
ex) 255.255.255.255 192.168.1.2
255.255.255.255 192.168.1.3
/etc/mail/localDomain ファイルにドメイン名を書いておくと、そのドメインのクラ
イアントからの送信は認証せず許可する。
http://www.nanet.co.jp/rlytest/relaytest.html で中継拒否の確認が出来る。
WEPは現在128Bitが主流ですが、ここで紹介したドライバで対応しているかは不明です。 また、WEPビット数の表記で40Bitと書いてあるところと64Bitと書いてあるところがありましが、 これはどちらも同じ意味でした。通常、WEP暗号化キーにはMAC Addressが埋め込まれるので、 (ユーザー指定暗号化キー 40bit)+(MAC Address 24bit)=64bitというわけです。
|
[ADSL MDOEM/ROUTER]
|
| 192.168.1.0/24
--------+------------+-----------
| Ethernet (100Base-Tx)
[Linux BOX]
|
: Wireless LAN (192.168.2.0/24)
|
[Windows2000 Note]