📄 ppp-howto.txt
字号:
9.5 测试你的数据机的拨出功能 在你完成了串列埠与数据机的设定之时试著拨到你的 ISP 上看看能否连上以确定 设定是否有误. 使用你的终端机通讯软体(像是 minicom),拨到你想使用 PPP 连线的那台 PPP 伺服器. (注意: 在这个阶段我们并不尝试建立 PPP 连线 - 只是要证实我们拥有正确的 电话号码以及为了签入并且起动 PPP 而确实地找出伺服器究竟传送给我们什麽讯 息). 在这个过程中,可以截取(记录到一个档案里)整个签入的过程或者是小心地( 非常小心地)确实写下远端伺服器所给你提示输入你的使用者名称以及密码的讯 息(以及任何建立 PPP 连线需要下达的指令). 如果你的伺服器使用 PAP,你可能不会看见签入的提示符号,而是(以文字表示 的)连结通讯协定(看起来像是垃圾)出现在你的萤幕上. 一些警告:- * 某些伺服器相当聪明: 你可以用文字模式的使用者名称/密码方式或使用 PAP 签入. 因此如果你的 ISP 或公司站台使用 PAP 但你没有立刻在萤幕上 看到垃圾,也并不表示你做错了. * 某些站台要求你先输入一些起始的文字然後才启动标准的 PAP 程序. * 某些 PPP 伺服器是被动的 - 它们就坐在那里等待而不送出任何资料,直到 客户端拨入并送出合法的连结控制协定. 如果你要连接的 PPP 伺服器是被 动模式的,你将不会看到任何垃圾! * 某些伺服器在你按下 ENTER 前不会启动 PPP - 因此如果你正确签入但未看 到垃圾的话可以试试! 这最少值得拨接两次 - 某些伺服器会在每次你签入时改变提示(例如依时间改 变!). 你的 Linux 机器在每次你拨入的时候要能够辨认的两个主要的提示 是:- * 要求你输入使用者名称的提示; * 要求你输入密码的提示; 如果你必须发出某个指令来起动伺服端的 PPP,那麽你也需要找出一旦你签入之 後伺服器所给你输入指令以启动 PPP 的提示. 如果你的伺服器自动起动 PPP 的话,一旦你签入完成,你将开始见到萤幕上出现 垃圾 - 这是 PPP 伺服端传送给你的机器以起动并且配置 PPP 连线的资讯. 这看起来应该会是像这样的东西:- _________________________________________________________________ ~y}#.!}!}!} }8}!}$}%U}"}&} } } } }%}& ...}'}"}(}"} .~~y} _________________________________________________________________ (而且它还会一直进来! ) 在某些系统中 PPP 必须在伺服端上明确地加以起动.这通常是因为该伺服器被设 定成允许使用相同使用者名称/密码配对来做 PPP 签入及一般使用界面(shell) 的签入. 如果是这样,一旦你签入就发出该指令.再一次,你将会见到 PPP 连 线伺服端起动的垃圾资讯 - 所以现在你可以挂断了. 如果你没有在连上时立即在萤幕上看到这些垃圾(如果必要的话先签入并启动 PPP 伺服器), 按下 Enter 试试能否启动 PPP 伺服器... 这个时候,你就可以挂断你的数据机(通常是,快速地键入 +++ 一旦你的数据机 回应 OK 然後接著下 ATHO 指令). 如果你不能使你的数据机运作的话,阅读你的数据机使用手册,你通讯软体的线 上使用手册以及 Serial HOWTO! 一旦你解决该问题,继续进行前面所说的. 10. 建立名称到位址解析(DNS) 虽然我们人类喜欢给事物取个名称,电脑喜欢数字. 在 TCP/IP 网路上(这也就 是网际网路),我们藉由特定的名称呼叫某台机器,而且每台机器都存在於一个 特定的领域标记里面. 举例而言,我的 Linux 工作站称为 archenland 而它是 存在於 interweft.com.au 这个领域里. 所以它在人们心目中的位址就是 archenland.hedland.edu.au. (称为 FQDN - fully qualified domain name .) 然而,为了使网际网路上的其它电脑找的到这台机器,事实上电脑在网际网路上 沟通时它是藉由其 IP 号码来认知的. 把机器(以及领域)的名称转译(解析)成为在网际网路上所实际使用的 IP 号 码是提供领域名称服务之机器的工作. 它是这样子运作的:- * 你的机器需要知道某部特定电脑的 IP 位址.需要这项资讯的应用程式向你 的 Linux PC 上的'名称解析器'询问此资讯; * 名称解析器查询机器内部的主机名称档案(可能是 /etc/hosts 以及/或是知 道这项资讯的领域名称伺服器,而名称解析器实际的行为由 /etc/host.conf 档案决定); * 如果答案在主机名称档案中,就以此答案回答; * 如果是在指定的领域名称伺服器中,你的 PC 就向该机器询问; * 如果这部领域名称伺服器已经知道被询问名称的 IP 号码,就以此回答.否 则,它会透过网际网路向其它的名称伺服器找寻资讯. 最後这部名称伺服器 会将资讯传回给原来询问的名称解析器,然後传给要求此资讯的应用程式. 当你创造出 PPP 连线时,你需要告诉你的 Linux 机器它可以在哪里找到主机名 称对照到 IP 号码(位址解析)的资讯,如此你就可以使用机器的名称而你的电 脑可以把这些名称转译成它运作所需的 IP 号码. 一个方法是输入所有你想联络的主机到 /etc/hosts 档案里(如果你是连上网际 网路的话这真的是完全不可能的事); 另一个方法是使用相对於机器名称的 IP 号码(要记得全部的 IP 位址是不可能的除非在最小的区域网路上). 最好的方法是设定你的 Linux 使它知道该到哪取得这项名称到号码的资讯 - 自 动地. 这项服务是由领域名称伺服器系统所提供.需要做的全部工作是把 IP 号 码输入到你的 /etc/resov.conf 档案里. 10.1 /etc/resolv.conf 档案 你的 PPP 伺服器系统管理/使用者支援人员应该要提供给你两个 DNS 的 IP 号 码(只需要一个 - 但是两个在出问题时可以多些帮助). 如前所述,Linux 不能以像 MS Windows 95 一样的方式来设定它的名称伺服器的 IP 号码. 所以你必须(有礼貌地)坚持你的 ISP 提供你这项资讯! 你的 /etc/resolv.conf 看起来应该会像这样: _________________________________________________________________ domain your.isp.domain.namenameserver 10.25.0.1nameserver 10.25.1.2 _________________________________________________________________ 编辑这个档案(如果没有的话就建一个新的)以呈现你的 ISP 提供的资讯.它的 拥有者以及权限应该像下面这样:- -rw-r--r-- 1 root root 73 Feb 19 01:46 /etc/resolv.conf 如果你因为本来就在区域网路上所以已经设立 /etc/resolv.conf 档案的话,只 要简单的把 PPP 连线的 DNS 伺服器 IP 号码加到你已有的档案里即可. 10.2 /etc/host.conf 档案 你也应该检查你的 /etc/host.conf 档案是否设定正确.它看起来应该像这样 _________________________________________________________________ order hosts,bindmulti on _________________________________________________________________ 它告诉你的名称解析器在向名称伺服器询问之前先使用主机名称档案中的资讯. 11. 使用 PPP 与 root 权限 因为 PPP 需要设定网路设备,变更核心递送表格以及诸如此类的动作,所以它需 要以 root 的权限来做这些事. 如果 root 以外的使用者要能建立 PPP 连线,那麽 pppd 程式应该设为以 root 的身分执行(setuid):- -rwsr-xr-x 1 root root 95225 Jul 11 00:27 /usr/sbin/pppd 如果 /usr/sbin/ppd 不是设定为这样,那麽以 root 的身分下这个指令: chmod u+s /usr/sbin/pppd 这样是让 pppd 以 root 的权限执行,即使是由一般使用者所执行的. 这能让一 般使用者执行的 pppd 具有必要的权限建立网路界面及核心递送表格. 以 root 的身分执行的程式在安全上是潜在的漏洞,所以你对於设定为 'setuid' 的程式必须非常地小心. 许多地程式(包括 pppd)已经被小心地撰写以 将用 root 的身分执行的危险降到最低,所以这样做应该是安全地(不过不保证) . 根据你希望你的系统如何运作而定,特别是如果你希望你系统里的任何使用者都 能启始 PPP 连结,你应该把你的 ppp-on/off 指令稿设定为全部的人都可以读取 /执行.(如果你的 PC 只由你使用那麽这样大概不错). 然而,如果你不希望任何人都能起始 PPP 连线(例如,你的孩子在你的 Linux PC 上有帐号而你不希望他们在没有你的监督下连上网际网路),你将得建立一个 PPP 群组(编辑 /etc/group 档案)并且: * 将 pppd 设定为以 root 的权限执行,拥有者是 root 而群组是 PPP,而其 它的权限都关闭.它看起来应该像这样 -rwsr-x--- 1 root PPP 95225 Jul 11 00:27 /usr/sbin/pppd * 使 ppp-on/off 指令稿由使用者 root 以及群组 PPP 所拥有 * 使 ppp-of/off 指令稿能由群组 PPP 读取/执行 -rwxr-x--- 1 root PPP 587 Mar 14 1995 /usr/sbin/ppp-on -rwxr-x--- 1 root PPP 631 Mar 14 1995 /usr/sbin/ppp-off * 关闭其它的存取权限 * 把能够起动 PPP 的使用者加入 /etc/group 档案的 PPP 群组里 即使如此,一般使用者仍然无法以软体的方式中止连结. 执行 ppp-off 指令稿 需要 root 的权限.然何,任何使用者都可以关掉数据机(或将电话线由内接式数 据机拔下). 另外一种(更好的)办法,允许使用者使用 sudo 来起动 ppp 连结. 这样可以提 供更佳的安全性并且可以让你设定让任何(可信任的)使用者使用指令稿来启动/结 束连结. 使用 sudo 可以让一位可信任的使用者乾净而安全地启动/结束 PPP 连 结. 12. 设定 PPP 连接档案 你必须以 root 身份签入来建立这些目录并且编辑这些设立 PPP 连线所需的档案 ,即使你想让所有的使用者都能使用 PPP. PPP 使用几个档案来建立并设定 PPP 连结.这些档案在 PPP 2.1.2 与 2.2 中的 名称与位置都不同. 在 PPP 2.1.2 中这些档案是:- _________________________________________________________________ /usr/sbin/pppd # PPP 执行档/usr/sbin/ppp-on # 拨号/连线指令稿/usr/sbin/ppp-off # 断线指令稿/etc/ppp/options # 所有连线所使用的选项/etc/ppp/options.ttyXX # 给某一特定通讯埠使用的选项 _________________________________________________________________ 在 PPP 2.2 中这些档案是:- _________________________________________________________________ /usr/sbin/pppd # PPP 执行档/etc/ppp/scripts/ppp-on # 拨号/连线指令稿/etc/ppp/scripts/ppp-on-dialer # 拨号的 chat 指令稿部份/etc/ppp/scripts/ppp-off # 断线指令稿/etc/ppp/options # 所有连线所使用的选项/etc/ppp/options.ttyXX # 给某一特定通讯埠使用的选项 _________________________________________________________________ Red Hat Linux 的使用者应注意标准的 Red Hat 4.X 安装将这些指令稿放在 /usr/doc/ppp-2.2.0f-2/scripts. 在你的 /etc 目录里应该要有个目录: drwxrwxr-x 2 root root 1024 Oct 9 11:01 ppp 如果它不存在的话 - 以这样的权限建立它. 如果这个目录已经存在,它应该会包含一个称为 options.tpl 的选项档案样板. 这个档案包括在下面. 因为它包含所有 PPP 选项的解释所以请你把它印出来(配合 pppd 的线上使用手 册来阅读将会是很有用的). 虽然你可以使用这个档案作为 /etc/ppp/options 档案的基础,但是建立你自己的,没有包含所有在这个样板里的指令的选项档案 可能会更好 - 它会短得多而且比较容易阅读/维护. 如果你有多个串列线路/数据机(典型的例子是 PPP 伺服器),那麽建立一个一 般化的 /etc/ppp/options 档案,其中包含每个你提供支援拨入的串列埠所使用 的共同选项并且为每一个需要个别设定以建立 PPP 连线的串列线路设立个别的选 项档案. 这些档案名为 options.ttyx1, options.ttyx2 依此类推(其中 x 是你串列埠的 适当代码). 然而,对於单一 PPP 连线,你可以直接使用 /etc/ppp/options 这个档案.另外 一种办法,你可以把所有的选项放进 pppd 指令作为参数. 使用 /etc/ppp/options.ttySx 档案的设定方式会比较容易加以维护. 如果你使 用 PPP 来连线到好几个不同的节点去的话,那麽你就可以在 /etc/ppp/options.site 里面为每个节点建立选项档案然後在你连线时指定选项 档案作为 PPP 指令的参数. (使用 file option-file 参数於 pppd 的指令列) . 12.1 替代的 options.tpl 档案 某些个 PPP 的发行套件似乎漏失了 options.tpl 这个档案,所以在这里有个完 整的档案. 我建议你不要直接编辑这个档案来建立你自己的 /etc/ppp/options . 把它拷贝到一个新的档案然後编辑该档案比较好.如果你弄乱了你编辑的档案 ,你可以回头从原始档案再度开始. _________________________________________________________________ # /etc/ppp/options -*- sh -*- general options for pppd# created 13-Jul-1995 jmk# autodate: 01-Aug-1995# autotime: 19:45# Use the executable or shell command spec
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -