Chinaunix首页 | 论坛 | 博客
  • 博客访问: 610273
  • 博文数量: 152
  • 博客积分: 2684
  • 博客等级: 少校
  • 技术积分: 1126
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-29 11:03
文章分类
文章存档

2012年(6)

2011年(96)

2010年(50)

分类: BSD

2011-08-30 17:58:38

本文由在 tutux 论坛所发,CU技术文章整理,供大家参考学习,转载请注明出处,谢谢。
查了一下,似乎关于mpd的文章不多,把自己的一个笔记贴出来,大家多指教

  1. mpd pptp server 配置实例

  2. from: php?s=&act=ST&f=1&t=125

  3. mpd pptp server 配置实例

  4. Aborigen Yin(阿土)
  5. tutu@bsdbase.com
  6. 2003.03.12

  7. mpd 是FreeBSD下的pptp 综合工具,可以用来做pptp客户端和服务器,通过适当配置作vpn也不错,这里只是一个作pptp server的实例

  8. mpd自己带的文档已经很详细了,如果你需要其他的功能,看看文档吧,E文的。

  9. #内核应该有如下支持
  10. # for mpd pptp server
  11. options         NETGRAPH                #netgraph(4) system
  12. options         NETGRAPH_ASYNC
  13. options         NETGRAPH_BPF
  14. options         NETGRAPH_ECHO
  15. options         NETGRAPH_ETHER
  16. options         NETGRAPH_HOLE
  17. options         NETGRAPH_IFACE
  18. options         NETGRAPH_KSOCKET
  19. options         NETGRAPH_LMI
  20. # MPPC compression requires proprietary files (not included)    
  21. #options        NETGRAPH_MPPC_COMPRESSION
  22. options         NETGRAPH_MPPC_ENCRYPTION
  23. options         NETGRAPH_PPP
  24. options         NETGRAPH_PPTPGRE
  25. options         NETGRAPH_RFC1490
  26. options         NETGRAPH_SOCKET
  27. options         NETGRAPH_UI
  28. #end
  29. #如果没有系统会自动加载相应的内核模块,所以你可以先继续,不必急着编译内核

  30. #安装、配置mpd pptp server.

  31. cd  /usr/ports/net/mpd
  32. make install
  33. cd /usr/local/etc/mpd

  34. #开放5个拨入;
  35. #vi /usr/local/etc/mpd/mpd.conf
  36. #begin of mpd.conf
  37. #
  38. default:
  39.        load client1
  40.        load client2
  41.        load client3
  42.        load client4
  43.        load client5
  44.        
  45. client1:
  46.        new -i ng0 pptp1 pptp1
  47.        set ipcp ranges 172.16.120.80/32 172.16.120.100/32
  48.        load client_standard
  49. #
  50. client2:
  51.        new -i ng1 pptp2 pptp2
  52.        set ipcp ranges 172.16.120.81/32 172.16.120.101/32
  53.        load client_standard
  54. #
  55. client3:
  56.        new -i ng2 pptp3 pptp3
  57.        set ipcp ranges 172.16.120.82/32 172.16.120.102/32
  58.        load client_standard
  59. #
  60. client4:
  61.        new -i ng3 pptp4 pptp4
  62.        set ipcp ranges 172.16.120.83/32 172.16.120.103/32
  63.        load client_standard
  64. #
  65. client5:
  66.        new -i ng4 pptp5 pptp5
  67.        set ipcp ranges 172.16.120.84/32 172.16.120.104/32
  68.        load client_standard
  69. #

  70. client_standard:
  71.        set iface disable on-demand
  72.        set iface enable proxy-arp
  73.        #set iface idle 1800
  74.        set bundle enable multilink
  75.        set link yes acfcomp protocomp
  76.        set link no pap chap
  77.        set link enable chap
  78.        set link mtu 1460
  79.        set link keep-alive 10 60
  80.        set ipcp yes vjcomp
  81.        set ipcp dns 211.239.166.211
  82. #       set ipcp nbns 172.16.120.4
  83.        set bundle enable compression
  84.        set ccp yes mppc
  85.        set ccp yes mpp-e40
  86.        set ccp yes mpp-e128
  87.        set ccp yes mpp-stateless
  88. #end of mpd.conf

  89. #vi /usr/local/etc/mpd/mpd.links
  90. #bengin of mpd.links
  91. pptp1:
  92.        set link type pptp
  93.        set pptp self 0.0.0.0
  94.        set pptp enable incoming
  95.        set pptp disable originate
  96. #
  97. pptp2:
  98.        set link type pptp
  99.        set pptp self 0.0.0.0
  100.        set pptp enable incoming
  101.        set pptp disable originate
  102. #
  103. pptp3:
  104.        set link type pptp
  105.        set pptp self 0.0.0.0
  106.        set pptp enable incoming
  107.        set pptp disable originate
  108. #
  109. pptp4:
  110.        set link type pptp
  111.        set pptp self 0.0.0.0
  112.        set pptp enable incoming
  113.        set pptp disable originate
  114. #
  115. pptp5:
  116.        set link type pptp
  117.        set pptp self 0.0.0.0
  118.        set pptp enable incoming
  119.        set pptp disable originate
  120. #
  121. #end of mpd.links

  122. #注意:mpd.conf里面,每一个配置项的link名称(new -i ng0 pptp1 pptp1,这一行定义),
  123. #比如client1(links = pptp1),client2(links = pptp2),在mpd.links中必须有相应的link type定义,
  124. #pptp1:
  125. #        set link type pptp
  126. #pptp2:
  127. #        set link type pptp
  128. #其他类推;

  129. #用户名和密码;
  130. #vi /usr/local/etc/mpd/mpd.secret
  131. #bengin of mpd.secret
  132. #username <--->; password <----->; ip address range to user
  133. #这里可以指定某个用户拨号时使用的地址
  134. #user1 fortest   172.16.120.111/24
  135. #也可以不指定
  136. user1 fortest   

  137. #end of mpd.secret

  138. #注意:杀死进程时不要使用-9强行结束,否则可能导致进程不能正常关闭设备,必须重新启动系统才能恢复;

  139. #服务管理脚本;
  140. #vi /usr/local/sbin/mpd.sh

  141. #!/bin/sh
  142. case "$1" in

  143. start)
  144.        if [ -x /usr/local/sbin/mpd ]; then
  145.                /usr/local/sbin/mpd -b -d /usr/local/etc/mpd -f mpd.conf && echo 'Mpd PPtP server started.'
  146.        fi
  147.      ;;

  148. stop)
  149.        killall mpd && echo 'Mpd PPtP server stopped.'
  150.      ;;
  151. restart)
  152.        echo .
  153.        echo Restart Mpd PPtP server ......
  154.        $0 stop                     
  155.        sleep 10
  156.        $0 start                     
  157.      ;;
  158. *)
  159.        echo "$0 start | stop | restart"
  160.      ;;

  161. esac
  162. #end of mpd.sh

  163. chmod 700 /usr/local/sbin/mpd.sh
  164. #设置开机自动执行
  165. ln -s /usr/local/sbin/mpd.sh /usr/local/etc/rc.d/mpd.sh

  166. #配置日志记录
  167. touch /var/log/mpd.log
  168. #vi /etc/syslog.conf
  169. #添加如下,!mpd表示mpd这个进程;
  170. !mpd
  171. *.*                                             /var/log/mpd.log
  172. #vi /etc/newsyslog.conf
  173. /var/log/mpd.log                        644  5     100  *     Z
  174. #重新启动syslogd
  175. killall -HUP syslogd

  176. ####################################
  177. mpd.sh restart
复制代码



另外,红袖曾经投诉过论坛吃空格的问题,我发现,可以用code这个功能解决,试试?
阅读(2008) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~