在redhat9上建立ppp server

  以下是在redhat9上建立ppp server的过程:
  
  1.连接好modem,通上电。
  
  2.修改/etc/inittab文件,添加一行:

  7:2345:respawn:/sbin/mgetty -s 115200 -n 1 -D ttyS0

  这行的意思是在系统运行级别分别为2、3、4、5时使mgetty监听com1,并将com1设置为:速率115200,响铃一次就响应,只是纯数字modem(不会试发传真响应信号)。行首的数字7没什么意义,只要在该文件中不重复且不大于100即可。

  ttyS0代表com1
  
  3.确认已经安装了mgetty的rpm包(在redhat9中为mgetty-1.1.30-2),运行init q使mgetty开始监听,用电话拨入,听听是否是响铃一次就后应答。
  
  4.修改/etc/mgetty+sendfax/mgetty.config文件,使之具有以下一段:

  port ttyS0
  debug 3
  speed 115200
  data-only y

  此段也是设置com1,可以省略此步。
  
  5.确认已经安装了ppp的rpm包(在redhat9中为ppp-2.4.1-10),修改/usr/sbin/pppd文件的权限:chmod u+s /usr/sbin/pppd,是之具有以所有这身份执行的s权限。
  
  6.建立用户ppp并设置密码,修改其登陆脚本为/usr/sbin/pppd。
  
  7.建立/etc/ppp/options.ttyS0空文件(此步应可以省略)。
  
  8.修改/etc/ppp/options文件至如下:(可以是多行)

  /dev/ttyS0 115200 asyncmap 0 crtscts defaultroute
  192.168.168.1:192.168.168.168
  netmask 255.255.255.0
  ms-dns 61.139.2.69
  proxyarp

  pppd程序后依次读入/etc/ppp/options、~/.ppprc、/etc/ppp/options.ttyName文件,会将其内容作为参数,后读入的会覆盖先读入的相同的参数。各个参数的意义请看pppd的man。
  
  9.在windows下新建拨号连接,更改拨号属性:显示终端窗口。然后拨入,握手后会出现终端窗口,请在其中登陆,登陆后应出现pppd启动后的乱码,点击完成会建立起ppp连接。
  
  10.修改/etc/mgetty+sendfax/login.config文件,去掉下面一行的注疏:

  #/AutoPPP/ -a_ppp /usr/sbin/pppd auth -chap +pap login debug

  此行将允许自动登陆,不需要在终端窗口中登陆。
  
  11.修改/etc/ppp/pap-secrets文件,添加一行:

  * * "" *

  意思是运行任何计算机从任何地方登陆
  
  12.将windows下的拨号属性改回不显示终端窗口,填入帐号和密码,如何拨入,将会自动验证用户和密码。
  
  13.为了使拨入计算机能访问网络,应在防火墙中作响应设置,如:

  iptables -A INPUT -i ppp0 -j ACCEPT
  iptables -A FOREARD -i ppp0 -j ACCEPT
  iptables -t nat -A POSTROUTING -S 192.168.168.168 -j MASQUERADE
  
  需要注意:

  1.有些modem并不适合作拨入服务器的modem,因为它们作为客户端时没问题,但用在服务端则会出现断不开,连不上等问题。
  
  2.从windows拨入后服务器端的子网掩码为255.255.255.255;而windows客户端获得的子网掩码也为255.255.255.255,而且网关为自身。但它们可以正常通信!