PPPサーバを作る

mgetty+sendfax と pppdを使って PPP Serverを構築する方法です。
ここではFreeBSDマシンをPPP Serverに仕立てあげますが、 Linuxでもシリアルポート名を変えれば動くでしょう。
動作環境
OS FreeBSD 2.2.8R

使用ソフト
mgetty+sendfax 1.1.20
pppd 2.3.5

モデム Suntac MS56KEF III
使用ポート /dev/cuaa1

  1. mgettyのインストール
    • policy.hを環境に合わせて修正
    • Makefile中のCFLAGSに -DAUTO_PPP がある事を確認し、無ければ追加する。
    • make ; make install
  2. モデム設定
    注意する点はモデムの設定で、モデムの電源再投入時に再設定出来るように設定をモデムに記録しておく事です。 cu,minicom,ktx,wterm,hterm等、使いなれた物で設定すればいいでしょう。
    	ATS0=0Q0&D3&C1
    	AT&W1
    
    でOKです。
  3. /etc/ttys の修正
    ttyd1を無効にして下の行に差し替える
    cuaa1   "/usr/local/sbin/mgetty"        dialup on insecure
    
  4. /usr/local/etc/mgetty+sendfax/mgetty.config
    変更点だけ記述します。
    port cuaa1
    speed 115200
    init-chat "" ATS0=0Q0&D3&C1 OK
    autobauding NO
    
  5. /usr/local/etc/mgetty+sendfax/login.config
    /AutoPPP/ -   a_ppp   /usr/sbin/pppd auth -chap +pap login kdebug 7 debug \
    			:192.168.10.100 dns1 192.168.1.1 dns2 192.168.1.2
    
    192.168.10.100 : クライアントに与えるIP Address
    192.168.1.1  : DNS 1
    192.168.1.2  : DNS 2  なくてもいい
    
    
    pppdのオプションは全て書いてしまいましたので/etc/ppp/optionsは空にします。
    touch /etc/ppp/options とでもやっておきましょう。
  6. /etc/ppp/pap-secrets
    /etc/ppp/pap-secrets にユーザ名、パスワードを書けば完了です。 (/etc/passwdエントリも必要)  でたらめな文字列を使ってPPP専用アカウントを作る方が良いでしょう。
    例
    # Username      Server      Password      IP addresses
    "multi"            *       "toheart"         ""     192.168.10.100
    "hatsune"          *       "kizuato"         ""     192.168.10.100
    "ayuayu"           *        "kanon"          ""     192.168.10.100
    

戻る