  Linux Alphanumeric Pager Gateway Mini-HOWTO
  Chris Snell, chris@cs.unm.edu
  29 August 1997
  ɍ  N, isaji@mxu.meshnet.or.jp
  2 Feb 1998

  LinuxQ[gEFCɂă|Pxɓ`M@ɂĉ
  ܂B̍̕ŐVo[W͈ȉPager FTPTCgœł܂
  ftp://ftp.cs.unm.edu/pub/chris/paging [ҁF_CAoR
  bZ[W𑗐MłЂȂǂɂď񂪂܂狳Ă
  BAbvf[gɒǉƎv܂]
  ______________________________________________________________________

  ڎ

  1. ƖƐӎ
  2. ړI
  3. KvȂ
  4. p|Pbgxɂ
  5. _CAAbv|Px
  6. _CAAbv̓
  7. Q[gEFC̓̂
  8. ݒ͂߂
     8.1 \tgEFA̓
     8.2 sendpage̐ݒ
     8.3 f̐ݒ

  9. sendpage Makefile ݒ
  10. ݒ̑
  11. MOVING RIGHT ALONG...
  12. host̐ݒ
  13. sendmail̐ݒ
  14. "/etc/aliases"̐ݒ
  15. WWWQ[gEFC
  16. ƏW߂

  ______________________________________________________________________

  1.  ƖƐӎ

  ̃hLg͂낢ȏ܂Ƃ߂̂łB̓eNjJC
  ^[ł͂܂񂵂Ȃ܂BOw̉p앶NX
  łBǂ炩Ƃ΂̃hLg͂Ȃڂ
  Ă܂BƓgsendmail⃂fɊւmΈȉ̎
  ɂĂƖڂʂĂł傤BƂɂǂ݂܂傤B

  Rs[^/|Pbgx/f󂵂A邢͉Ђ̃lbg[N
  Ƃălbg[N߂ɂĂ܂ƂĂӔC͂܂
  Bɂł͂ȂNɂłsĉBVXe߂ɂȂ
  傤A sendmail͋ZIIȂ̂ňȉ̃hLgɏ]ĂΊm
  ɗVԂƂłƌĂ܂傤B

  2.  ړI

  mini-HOWTOLinux}VŁup|PxQ[gEFCvݒ肷
  @ɂĉĂ܂BQ[gEFCWWWƃC^[lbgdq
  [VXȇõbZ[Wp|Pbgxɑ邱Ƃł
  ܂B͂Ȃ֗łBƂ̂|PbgxɃbZ[W𑗂
  ɓʂȃXL͕KvȂłBɂă[WWWg
  B

  ** ʂȒӁF**

  ̃hLg͔p|Pbgx(ႦΐƂ)≹|
  Pbgx𑗂邱ƂɂĂ͎舵Ă܂BɂĂ͑
  hLgĉB

  3.  KvȂ

  o  Pȏ̉p|Pbgx(``|Pbgxɂ '' Q)B

  o  LinuxғĂ}V

  o  f(EĂhLgQ)

  o  db

  o  C^[lbgڑł邱(WWWC^[tF[Xnet-wide 
     [C^[tF[Xgꍇ)B

  o  RpCc[(gcc, makeȂǁB̊{IȎgɂĂ
     mĂĉ)B

  o  sendmail dq[nh(ĂƎv܂)B

  o  WWWC^[tF[X肽httpd(webT[o)ғB

  4.  p|Pbgxɂ

  p|Pbgx͗Lȃ|PbgxЂwł܂(LłȂ
  Ђ̂̂;-)) Bli$200(Q~)ȉł悢̂ɓ܂B
  ҂̂$180ł(ƍ)B|Pbgx𔃂ɍs͈ȉ̂
  Ƃ𒲂ׂĂ܂F

  o  uhĩ|Pbgx(Ⴆ΃g[ЂƂ)B

  o  **dv**Bw|Px͂Ȃ̃|PxЂ̃_CAo
     RĎg邩ǂB

  o  M邽߂Ƀ|PxɃ\邢ǂ

  o  w|Px̃[J̕]͂ǂH ``_CAAbv|Px
     ''

     낢ȃ|PxiɂĂ悭ׂĂ܂񂪁Ag[А
     ̃|PxS炨߂܂B̎Ă̂̐MAϋv
     ۏ؂܂BہA낢ȏʂŃRN[gnʂɗ肵
     ܂AP[Xꂽxŉ悤ȂƂ͂܂łB
     ȉ̃y[Wɂ̃|Px̏񂪌ł傤F

  g[Ђ̃y[W http://www.mot.com/MIMS/MSPG/Products/Alpha/

  {g[Ђ̃y[W http://www.mot.co.jp/PPD/index.html

  5.  _CAAbv|Px

  Q[gEFC𓮍삳邽߂ɁA|PxЂɃbZ[W𑗐M邽
  ̕@KvłBbZ[WGR[h󒆂ɔ΂Ȃ̃|
  Pxɓ]܂B̓|PxЂւ̃_CAAbv(f)ڑ
  oRčs܂B̐ڑgȂƃ|PxQ[gEFCݒł
  ܂BŃ|PxЂ̂悤ȃ_CAT[rXĂ
  Ƃ͂ȂdvłBcOȂƂɑ̃|PxЂ͂̂悤ȃ_
  CAĂȂЂ̉gɂĂmȂƂ
  Ƃ悭܂B̉ɂă|PxЂɕĂ݂AЂ
  up|Pbgx𑗐M邽߂̃Rs[^\tgEFAv񋟂
  Ă邩ǂ̂悢ƂɋCÂ܂B̂悤ȃ\tgEFA
  ł悤ɂȂ΁AgKv̂_CAɓq(bet)݂邱
  Ƃł܂B

  6.  _CAAbv̓

  _CAAbv͒PɃ[gRs[^̃fł(łΐ
  ̃}V)B҂̃voC_łv.22b(󒍁FʐMKiv.22bisł)
  g 2400bpsŐڑł܂Aʃf300`1200bpsŐڑ
  BڑmƁARs[^TAP(̂IXO)ƂĒm
  ĂvgRgă[gTCgɑ܂B̃vgȐڍ
  ͒mȂĂ悢łAΈȉ̃hLg`FbN
  ݂ĉB

  ftp://ftp.cs.unm.edu/pub/chris/paging/ixo.txt

  ҂FTPTCgłB

  7.  Q[gEFC̓̂

  bi߂OɁAdq[->|PxQ[gEFC̓̎dɂĂ
  ܂Ȑ܂BWWWQ[gEFClł͌㔼Ő܂B

  1. dq[oRLinux}V̓AhXփ|Pxɑ肽
     bZ[W𑗐M܂B

  2. sendmailgLinux}V̓bZ[W󂯎tB^vO
     ɔ܂BtB^vO̓wb_̃bZ[WoM
     ҂̖O⃁[AhXAbZ[W̃^CgȂǏdvȏ
     ܂B̃tB^.signaturebZ[WoďdvłȂ
     ɂă|Px̓WȂ悤ɂ܂B

  3. |PxtB^sendpage|Pbgx\tgEFAɃbZ[Wn
     ܂B

  4. sendpage̓|PxЂ̃_CAɃ_CA(TAPvgR
     g) bZ[W𑗐M܂B

  5. |PxЂ̓|PxɃbZ[WdgŔ˂܂B

  8.  ݒ͂߂

  Q[gEFC̐ݒ͈ȉS̃p[gȂ܂F

  o  sendpage̐ݒB

  o  (IvVI)|PxQ[gEFCpɒǉDNSGgB

     o  IPAhX𑀍삷邽߂̐ݒ

  o  bZ[WM𑀍삷悤sendmail̐ݒB

  o  WWWC^[tF[X̐ݒB

  8.1.  \tgEFA̓

  |PxQ[gEFCݒ肷Kv\tgEFAQ͒҂̃z[y
  [Wł܂B

  ftp://ftp.cs.unm.edu/pub/chris/pagingB

  ݂̃t@COLTCgɒuĂ悤w͂Ă܂A
  ʂ̃TCgɒuƂ܂B

  8.2.  sendpage̐ݒ

  sendpage̓|PxQ[gEFC̏dvȃvOłB̃vWFNg
  JnɂāÃ\tgEFA肵ăRpCĉB
  sendpage\tgEFAȉFTPTCgœł܂F

  ftp://ftp.net.ohio-state.edu/pub/pagers/sendpage7a.tar.z

  邢͒҂̃}VF

  ftp://ftp.cs.unm.edu/pub/chris/paging/sendpage/sendpage7a.tar.z

  pagingTufBNgāA\tgEFAW߂ēWJĉ
  (tar zxvf)B sendpagepbP[W̐ݒAreadmeAinstallt@C
  ǂłĉBsendmailݒ̉ӏ͔΂đɂ̕ɏ
  Ă@sĉB

  sendpageRpC邽߂installt@CɏĂ菇ɏ]
  ĉBҏWKv̂sendpage.ht@C̐ݒɂ 2,3ӂ
  ܂B

  o  premedyVXej^[pbP[WĂȂA
     "#define arsystem_notifier"s"/*"A"*/"găRgAEg
     邩mF܂B

  o  arsystem_notifiersɏ]āA`Kv̂Linux(POSIX)̍s
     ܂B

             #define posix_signals
             #define posix_open

  o  f`ɂāB

             #define modem_dev "/dev/modem"

  gƂ߂܂BfoCX"/dev/cua0" [com 1]A"/dev/cua1"
  [com 2]ȂǁB

  o  fɂĊȒPȕgNVRAMݒɂ܂B

             #define modem_init atevxh

  o  RTS/CTSt[g܂F

             #define c_flag ctrscts|hupcl

  o  DTRgOg܂F

             #define toggle_dtr

  Β҂FTPTCgsendpage.cfJĂ܂B

  ftp://ftp.cs.unm.edu/pub/chris/paging/sendpage/sendpage.h.example

  8.3.  f̐ݒ

  ҂ZyXEL 1496+gĂ܂(sendpageł܂삵܂)B̃f
  ɂĂÓłƎv܂B|PbgxЂ̃f(sendpage
  "|PbgxZ^[(Paging Central)" Ƃ܂)͎̂̂Ƃ͈Ⴂ
  A̐ݒœǂĂ݂Ǝv܂BKȏ
  Ă̓f̃}jAQƁBȉ͎̐ݒłF

  o  fv.22bis 2400/1200vgRɐݒ肷(lSVG[V
     ͕s)B

  o  VA|[g1200bpsɂB

     (sendpage.h)͂łɏĂB

  o  (eLXg)͈ȉ̂悤ɉ܂F

             0   "OK"
             5   "CONNECT 1200"
             7   "BUSY"

  sendpage𓮍삳邽߂ɃfɃANZX\Ă܂B܂胂
  ffoCXœǂݏɂȂĂKv܂B҂̃VXe
  sendpageUID[U[usendpagevŎsĂ܂B
  /etc/groupt@Cł́A[U[usendpagevo[ƂȂĂ
  umodemvƂO[v܂Bf(/dev/cua1)p̃foCXt@C
  [U[urootvAO[vumodemvLɂȂĂ܂B͏L
  ƃO[vœǂݏ\ł (chown root.modem /dev/cua1 ; chmod
  ug+w /dev/cua1)B

  9.  sendpage Makefile ݒ

  ҂LinuxŎgĂ\zIvV܂B

          CC = gcc
          CFLAGS =  -DLINUX -O2 -m486 -I/usr/include
          LIBS = -ldb -lbsd

  

  ftp://ftp.cs.unm.edu/pub/chris/paging/sendpage/Makefile.example

  Œ҂Makefilet@CJĂ܂BQƂĉB

  10.  ݒ̑

  ܂ΈꔭŐsendpageRpCł܂BŏeXg
  ̂߂sendpageݒ肵܂BINSTALLt@C̎wɏ]āAqueuefB
  Ngݒ肵sendpage.cft@C̐ݒ͂߂܂ (̃t@C
  /etcɒuĂ܂)B

  /etc/sendpage.cfݒ2,3̃F

  o  "bofh"ɊւStrMapZNV("#"g)RgAEg
     B

  o  "Global Options"(O[oϐ)ZNV͈ȉ̂悤ɂȂ܂F

     ___________________________________________________________________
     global maxMsgSize=480 maxMsgSplit=5 syslogFacility=LOG_MAIL\
             timeFormat=dayFirst replyToSender=no\
             emailFrom="sendpage@pager.unm.edu (UNM Pager Gateway)"
     ___________________________________________________________________

  o  "Paging Central Definiton"(|PbgxZ^[`)ZNV͈
     ̂悤ɂȂ܂F

     ___________________________________________________________________
     pc      name=westlink phone=92437243 speed=1200 parity=even\
             databits=7 stopbits=1 protocol=pet-pg1 msgretries=10\
             answertime=25 modemdial=atdt dialer=internal\
             modeminit=atevxh modemdev=/dev/cua1\
                     emailFrom="sendpage@pager.unm.edu (UNM Pager Gateway)"
     ___________________________________________________________________

  o  "Aliases"(GCAX)ZNVłB"chrisauto"`̈Ӗ́A|
     PbgxMdq[𑗐MÃ|Pbgxɑ
     鎞VXeƂĎgƂƂłB

     ___________________________________________________________________
     alias      chris     9246403.westlink
     alias      chrisauto     9246403.westlink emailReply=no msgIncTime=yes
     alias      nicolas   2515025.westlink
     ___________________________________________________________________

  o  Ō"Profile"ZNVłF

     ___________________________________________________________________
     profile default emailReplyErr=yes emailReply=yes msgIncSender=yes\
                     msgIncDate=yes msgIncTime=yes

     profile numeric emailReplyErr=yes emailReply=yes msgIncSender=no\
                     msgIncDate=no msgIncTime=no

     set profile=default
     ___________________________________________________________________

  Β҂sendpage.cfJĂ̂ŎQƂĉB

  ftp://ftp.cs.unm.edu/pub/chris/paging/sendpage/sendpage.cf.example

  11.  MOVING RIGHT ALONG...

  낵BŏȂsendpageR}hCC^[tF[Xɑ邱
  ƂłƉ肵܂BꂪłȂꍇINSTALLt@Cx
   sendpage.hAsendpage.cfă`FbNĂB̂ق܂
  ȂIXO[OXgɎQĂŎ₵ĉB

  12.  host̐ݒ

  |PbgxQ[gEFCɂēȉzhostgꍇ (Ⴆ
   pager.yourcompany.comƂO)A]Kv̂2,3̃Xebv
  ܂B܂Ozhostݒ肵Ȃ/łȂȂ
  ``sendmail̐ݒ''͂ɔŉB

     ***** UPDATED 11.12.96 ***********************************************
     KvȂƂ[->|PbgxQ[gEFC(WWWł͂Ȃ)ȂA
     UPAhX(ȉ)͕Kv܂BKvȂƂ͈ȉ̎wɏ]
     B

       ftp://ftp.cs.unm.edu/pub/chris/paging/Sendmail-and-virtual-domains.txt

     |PbgxMXGgݒ     s"SETTING UP SENDMAIL"
     ZNVɃXLbvĉB
     **********************************************************************

  Vhostݒ肷邽߂ɍsKv̂邱Ƃ̈ڂ́Albg[N
  Ǘ҂ɐVIPAhXhostDNSe[uɒǉĂ炦邩܂
  ƂłBupagervƂhost߂܂Ȃł܂܂
  BVAhXƑΉIPio[肵A}Vɂ
  Ă܂B͂Q̕@̂̂ЂƂłBLinuxfBXg
  r[Ṽ^CvɈˑĂ܂B

  o  LinuxJ[l1.2.xxV[YgĂȂAIPGCAXpb`

     ftp://ftp.cs.unm.edu/pub/chris/paging/ip_alias

     肵܂BREADME.aliast@C̎wɂĐVo^
     IP AhXƃQ[gEFCAhX̃t@CŏĂ
     ɒuĉB

  o  LinuxJ[l2.0.xxV[YgĂȂAJ[l̍\zIvV
     

               Network aliasing
               IP: aliasing support

  IčăRpC܂BX^[gAbvXNvg (Slackware[
  U[/etc/rc.d/rc.inet1ARedHat[U[
  /etc/sysconfig/network-scripts/ifup-eth)Ɉȉ̍sǉ܂B

          ifconfig eth0:0 191.59.16.224
          route add -host 191.59.16.224 dev eth0:0

  (󒍁FVIPAhXƃfoCX̒ǉBڂ́uNET-2/3-HOWTOvQ
  )B 191.59.16.224͂Ȃ̐ݒ肷̂ɒuĉB

  13.  sendmail̐ݒ

  GCAXKv肻̌sendmail
  you@somemachine.dink.comyou@pager.dink.comɃbZ[Wʂđ
  Ƃł܂(somemachinepager͎ۂ͓}Vł)Bs
  ߂sendmailGCAXf[^x[Xݒ肷Kv܂B

  1. t@C܂B/etc/domainaliashostupagervۂhost
     ɕϊ܂B҂̃}V(luckenbach)ł͕ϊt@C͈ȉ̂悤
     ɂȂĂ܂F

             chris@pager.unm.edu      cjs-pager@luckenbach.unm.edu
             droux@pager.unm.edu      nicolas-pager@luckenbach.unm.edu

  /etc/domainaliasłBłقƂǂłĂ܂Bȉ̃XCb`
  tăRpCsendmailoCig܂G

          -DNDBM -DNEWDB

  domainalias.dbt@CǂޕKv̂f[^x[XR[hɋ
  ^܂B

  2. makemap[eBeB邱ƂmF܂(sendmailzzpbP[W
     ̈ꕔł)BĂȂRpCĂĉB
     Kvł͂Ȃ܂Bhash, dbm, btreeT|[gĂ悤
     Ȃ낤`FbNĉBꂪǂ̂悤ɍsĂ邩
     ̃Xebv`FbNĉ)

             # cd /usr/src/sendmail-8.7.x/makemap
             # rm Makefile makemap
             # make CFLAGS='-m486 -O2 -I../src -DNDBM -DNEWDB' LDFLAGS='-s
                     -lgdbm -ldb' makemap
             # cp makemap /usr/bin

  3. /etc/sendmail.cfɈȉ̍sǉ܂BsendmailVzhost
     ̃[邽߂łF

          Cw pager.yourdomain.com

  4. /etc/domainaliasesf[^x[XtH[}bgɕϊ܂F

          makemap btree domainaliases.db < domainalisaes

  5. /etc/sendmail.cfɕʂ̍sǉ܂B̓RpC
     domainaliases.db ϊt@CsendmailɎw邽߂łF

          Kdomainaliases btree /etc/domainaliases.db

  6. [Zbgɂ/etc/sendmail.cfɐmɏĂ邱ƂmF
     ĉBGgTABŋ؂Ă܂BSPACE͎gȂŉ
     IIS98[Zbg}Ă܂B

     o  PRE 8.7.1

        ________________________________________________________________
                R$+  < @ $+ . >         $: $1 < @ $2 > .
                R$+  < @ $+ . > $*              $: (domainaliases $1@$2 $: $1 < @ $2 > $3 $)
                R$+  < @ $+ . > $*              $: (domainaliases $2 $: $1 < @ $2 > $3 $)
                R$+  < @ $+ > .                 $: $1 < @ $2 . >
        ________________________________________________________________

     o  POST 8.7.1

        ________________________________________________________________
                R$+< $+. >              $1< $2 >
                R$+< $+ >               $: < > $(domainaliases $1$2 $)
                R< > $+ @ $*            $: < $1 > $(domainaliases * @ $2 $)
                R< $+ > * $*            $: < > $1 $2
                R< > $*                 $: $>3 $1
        ________________________________________________________________

  7. sendmailf[killčăX^[gAVݒL
     ܂B

         /sbin/killall sendmail
         sendmail -bd -q15m

  8. ŌɐVݒ肪s邩mF܂BG[bZ[W
     /var/log/maillogɏo͂܂B

     ___________________________________________________________________
     lonestar~>  sendmail -bt
     ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
     Enter <ruleset> <address>
     > 0 chris@PAGER.phys.unm.edu
     rewrite: ruleset  0   input: chris @ pager . phys . unm . edu
     rewrite: ruleset 98   input: chris @ pager . phys . unm . edu
     rewrite: ruleset 98 returns: chris @ pager . phys . unm . edu
     rewrite: ruleset 97   input: chris @ pager . phys . unm . edu
     rewrite: ruleset  3   input: chris @ pager . phys . unm . edu
     rewrite: ruleset 96   input: chris < @ pager . phys . unm . edu >
     rewrite: ruleset 96 returns: chris < @ pager . phys . unm . edu . >
     rewrite: ruleset  3 returns: chris < @ pager . phys . unm . edu . >
     rewrite: ruleset  0   input: chris < @ pager . phys . unm . edu . >
     rewrite: ruleset 98   input: chris < @ pager . phys . unm . edu . >
     rewrite: ruleset  3   input: cjs-pager @ lonestar . phys . unm . edu
     rewrite: ruleset 96   input: cjs-pager < @ lonestar . phys . unm . edu >
     rewrite: ruleset 96 returns: cjs-pager < @ lonestar . phys . unm . edu . >
     rewrite: ruleset  3 returns: cjs-pager < @ lonestar . phys . unm . edu . >
     rewrite: ruleset 98 returns: cjs-pager < @ lonestar . phys . unm . edu . >
     rewrite: ruleset  0 returns: $# local $: @ cjs-pager
     rewrite: ruleset 97 returns: $# local $: @ cjs-pager
     rewrite: ruleset  0 returns: $# local $: @ cjs-pager
     ___________________________________________________________________

  9. ꂪƓ삵Ȃ藝łȂꍇsendmail
     GLXp[gɑkĂ݂ĉB
  14.  "/etc/aliases"̐ݒ

  sendpageɃbZ[W𑗂tB^ɓdq[bZ[WpCv邽
  ߂ /etc/aliasesݒ肷Kv܂BO
  chris@pager.unm.eduAcjs-pager@luckenbach.unm.edu ̍肩ۂ
  Ă݂܂B𓮍삳邽߂ /etc/aliasest@CɈȉ̍s
  ǉāA[Scjs-pager ɑ܂F

     cjs-pager: "|/usr/local/bin/sendpagefilter chris"

     ^^^^^^^^^    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^
     Ȃ  ̓|PxtB^(ȉ)  sendpage.cfŒ`
     GCAXB  ւ̃tpXłB            [U[łB

  ̗ŎgĂtB^

  ftp://ftp.cs.unm.edu/pub/chris/paging/paging_filter.tar.gz ɂ
  B READMEt@C̎wǂŃtB^RpCĉB
  /usr/local/binƂfBNgɒu܂B newaliasesR}hV
  GCAXLɂ邽߂Ɏs܂B炿ƍsꂽA
  |PbgxQ[gEFC͓삵܂B /etc/aliasesɍGCAX
  Ƀ[𑗂Ă݂ĉ(Ⴆ cjs-pager)B삵O͂ō
  z[GCAXɃ[𑗂Ă݂Ă(Ⴆ
  chris@pager.unm.edu)Bȏオ삵琬łII

  15.  WWWQ[gEFC

  ̏ڂ܂Bǎ҂HTML̃XLCGIɂĒmĂ邱
  OƂĂ܂BQ[gEFCCGIXNvgwebuEUsendpage
  vOԂ̒ʐM邽߂Ɏg܂BTvXNvgHTMLy[W
  

  ftp://ftp.cs.unm.edu/pub/chris/paging/example_www_gateway.tar.gz

  ł܂B̃XNvg͂Q̒ǉvO𗘗pĂ
  B

     uncgi
        CGIf[^CGIvO~OȒPɂ邽߂shellϐɕ
        ܂B

     d2utxt
        ^MLN^sendpageŃy[WbZ[W痎܂B

  ̃[eBeB̓TvHTMLFTPTCgƓfBNg
  ɂ܂BRpCoĂwǂłB͊ȒP
  B

  16.  ƏW߂

     IXO[OXg
        Qɂ͖{subscribeƏđĂB

        ixo-request@plts.org

     Sendpage[OXg
        QɂUNIXvvg

            echo 'subscribe' | Mail sendpage-hackers-request@lists.net.ohio-state.edu

     ƎsĂ(󒍁F邢bodysubscribeƏđĉ
     Bsubject ͕Kv܂)B

     
        ҂͑wŎdẐŁA₷܂ɂR͂悭ׂĂ
        ɂĉBЂ̕Œ҂̏KvƂꍇ͂
        ИAĉB

