找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5105|回复: 12

[BSD] 在FreeBSD下面怎么开启PPPOE SERVER呢?

[复制链接]
发表于 2004-10-16 20:15:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
如题
routeros
发表于 2004-10-17 01:03:12 | 显示全部楼层
请参见这里打开
routeros
回复

使用道具 举报

 楼主| 发表于 2004-10-17 01:46:42 | 显示全部楼层
我已经做好了客户端,就只差服务器端不知道怎么开启了。
routeros
回复

使用道具 举报

发表于 2004-10-17 01:50:46 | 显示全部楼层
QUOTE (jacky @ Oct 17 2004, 01:46 AM)
我已经做好了客户端,就只差服务器端不知道怎么开启了。  
  不是很明白开启什么服务器?PPPOE服务器?
routeros
回复

使用道具 举报

 楼主| 发表于 2004-10-17 10:55:10 | 显示全部楼层
是PPPOE服务器
routeros
回复

使用道具 举报

发表于 2004-10-17 11:42:39 | 显示全部楼层
在linuxsir上有一篇文章就是讲tht怎样做pppoe server的,你找一下吧。
routeros
回复

使用道具 举报

 楼主| 发表于 2004-10-17 14:41:10 | 显示全部楼层
有FreeBSD 5.X中做好的汉化包吗?
routeros
回复

使用道具 举报

发表于 2004-10-18 00:24:50 | 显示全部楼层
QUOTE (jacky @ Oct 17 2004, 02:41 PM)
有FreeBSD 5.X中做好的汉化包吗?  
  不明白“您”的意思
routeros
回复

使用道具 举报

 楼主| 发表于 2004-10-18 04:03:02 | 显示全部楼层
有做好中文输入法的安装包。
routeros
回复

使用道具 举报

发表于 2004-10-31 18:50:15 | 显示全部楼层
你想用BSD做NAS是吗?
routeros
回复

使用道具 举报

发表于 2004-11-1 10:50:43 | 显示全部楼层
FREEBSD NAS+BAS的设置Montando um servidor PPPoE com autenticacao por radius + controle de volume de usuarios Jean Milanez MeloEsta solucao pode ser usada em provedores q pretendem montar um servicode banda larga e tambem em empresas em geral.Antes de comecar gostaria de esclarecer q todas as configuracoes aquidescritas foram feitas em um PII 550MHZ, 256RAM, 6GB de hard disk nosistema operacional FreeBSD versao 4.3, portanto recomendo primeiro ainstalacao do sistema para que a solucao seja feita.Nesse tutorial faremos a solucao em 4 etapas: montagem do servidor PPPoE,Montagem do radius, montagem do controle de volume de usuarios e limitacaode banda por IP.1) Montando o servidor PPPoE (PPP over Ethernet).-------------------------------------------------Edite seu kernel e coloque as seguintes opcoes nele:options         NETGRAPHoptions         NETGRAPH_PPPOEoptions         NETGRAPH_SOCKEToptions         NETGRAPH_IFACEoptions         IPFIREWALLoptions         IPFIREWALL_DEFAULT_TO_ACCEPToptions         IPFIREWALL_VERBOSEoptions         IPFIREWALL_FORWARDoptions         IPDIVERToptions         BRIDGEoptions         DUMMYNETDepois de colocada as opcoes recompile seu kernel:# cd /sys/i386/conf/# config SEUKERNEL# cd ../../compile/SEUKERNEL# make depend# make# make installagora crie o arquivo do servidor pppoe em /etc/ppp/ppp.conf com asseguintes linhas:----------------------recorta /etc/ppp/ppp.conf------------pppoe-in: allow users enable chap enable pap allow mode direct set mru 1492 set mtu 1500 set speed sync enable lqr set ifaddr 192.168.1.1 192.168.2.1-192.168.3.255# No lugar de 192.168.1.1 coloque o IP da sua placa de rede q vai ser a # servidora pppoe. No lugar de 192.168.2.1-192.168.3.255 coloque os IPs # que vc quer q seja atribuido aos seus usuarios quando conectarem. accept dns# Coloque essa linha abaixo para que futuramente ela possa ler suas # informacoes do radius /etc/radius.conf load server set radius /etc/radius.confSalve o arquivo /etc/ppp/ppp.confAgora crie/edite o arquivo /etc/radius.conf e coloque as seguintes linhas:#/etc/radius.conf# A simple entry using all the defaults:     auth  192.168.1.1  teste     acct  192.168.1.1  teste# # substitua o IP 192.168.1.1 por seu IP da placa q vai autenticar Agora adicione as seguintes linhas no seu /etc/rc.conf para que o pppoe seja inicializado no boot:gateway_enable="YES"pppoed_enable="YES"pppoed_provider="pppoe-in"pppoed_flags="-P /var/run/pppoed.pid"pppoed_interface="rl1"     #substituia rl1 por sua interface de redefirewall_enable="YES"firewall_script="/etc/ipfw.rules"firewall_quiet="NO"# Adicione tambem essas regras abaixo se vc quiser fazer NAT em sua redenatd_program="/sbin/natd"natd_enable="YES"natd_interface="rl1" #substitua rl1 por sua interface de redenatd_flags="-l -f /etc/natd.conf"Salve o arquivo. No /etc/natd.conf coloque as seguintes linhas para ter acesso a ftp e dcc.dynamic yessame_ports yesuse_sockets yesSalve o arquivo.Agora crie as seguintes regras no /etc/ipfw.rules       /sbin/ipfw -f flush     /sbin/ipfw add divert natd all from any to any via rl0     /sbin/ipfw add pass all from any to anyPronto o PPPoE ja esta pronto, pode inicia-lo agora com o comando:# /usr/libexec/pppoed -P /var/run/pppoed.pid -p pppoe-in rl0ou se preferir reinicie sua maquina.Para clientes Windows se conectarem via PPPoE recomendo o uso do RASPPPoEque se encontra em anexo.2) Montagem do radius----------------------O Radius fara a autenticacao dos seus usuarios, aqui usaremos oradiusd-cistron versao 1.6.4 que pode ser pego em ftp://ftp.freeradius.org/pub/radius/ .Copie o radiusd-cistron-1.6.4.tar.gz para /usr/ports/distfiles e depoisdigite:# cd /usr/ports/net/radiusd-cistron# make installCom isso o radius foi instalado, e tb foi colocado automaticamente um shell script em /usr/local/etc/rc.d para que ele seja iniciado noboot do sistema. Agora vamos configurar o radius.Os arquivos de configuracao dele sao instalados por default em/usr/local/etc/raadb . Edite o arquivo clientes e coloque o seu IP da placa de rede e a "key"por ex:# Client Name           Key#----------------       ----------#portmaster1.isp.com    testing123#portmaster2.isp.com    testing123#proxyradius.isp2.com   TheirKey192.168.1.1             testeAgora edite o arquivo naslist e coloque seu IP o nome da maquina e o tipo.Os tipos validos sao: "livingston", "cisco", "multitech", "computone","max40xx", "portslave", "tc", "pathras", "usrhiper", "other".Por ex:# NAS Name              Short Name      Type#----------------       ----------      ----192.168.1.1             falcao          otherAgora edite o arquivo mais importante que eh o users , eh nele que ficamtodos os seus usuarios q serao autenticados no radius. Coloque nele asseguintes linhas:# essa primeira linha deve ser padrao, ela deve ser colocada no arquivoDEFAULT Framed-Protocol = PPP        Simultaneous-Use = 1,        Fall-Through = Yes# substitua "LOGIN" pelo login do seu usuario, "SENHA" pela senha do seu# usuario e "IP" pelo IP fixo que seu usuario sempre recebera qdo# conectar. O "IP" tem q ser dado pois ele eh fundamental para que mais# pra frente seja limitado o volume de trafego por usuario. LOGIN   Framed-Protocol = PPP, Password = SENHA        Framed-IP-Address = IP,        Service-Type = Framed-User,        Framed-MTU = 1492,        Framed-Protocol = PPP,        Framed-Compression = Van-Jacobson-TCP-IP# abaixo um exemplo de como ficaria:joao    Framed-Protocol = PPP, Password = abcd1234        Framed-IP-Address = 192.168.3.3,        Service-Type = Framed-User,        Framed-MTU = 1492,        Framed-Protocol = PPP,        Framed-Compression = Van-Jacobson-TCP-IPPronto, seu radius esta configurado. Rode-o com executando: # radiusd -y Eh importante salientar que o radius possui diversas outras configuracoes,como: autenticao por grupo, liberacao que mais de um usuario logue com omesmo login, entre outras coisas. Para isso aconselho que seja lida adocumentacao, ja que aqui estamos configurando somente o necessario para anossa solucao.3) Montagem do controle de volume de usuarios. (IPA - IP Accounting Software)---------------------------------------------------------------------------Primeiramente vou explicar oq eh controle de volume de usuarios. Essa parte pode ser uma das mais uteis para empresas e para servicos debanda larga, isso porque atraves do IPA ( IP Accounting Software ) que eho programa q utilizaremos aqui e tb esta em anexo, nos podemos controlar otrafego dos usuarios por IP ( por isso eh tao importante setar o IP dousuario no radius). Por ex, vamos supor que vc gostaria q o usuario joao que sempre conectacom o IP 192.168.3.3 (setado no radius) so pudesse trafegar 15MB por dia,e que se ele ultrapasse esse limite ele seria bloqueado, sendodesbloqueado automaticamente no outro dia e ainda seria direcionadopara uma pagina falando q ele ultrapassou o seu limite diario. Com o IPA isso q foi descrito acima eh possivel, eh oq veremos abaixo.Primeiro pegue o ipa em http://www.simon.org.ua/ipa e descompacte-o e instale-o:# tar zxfv ipa-1.1.3.tar.gz# cd ipa-1.1.3# make# make install# cd /usr/local/etc/rc.d; mv ipa.sh.sample ipa.shO arquivo de configuracao do ipa fica em /usr/local/etc/ipa.conf ehnele que sao colocadas todas as configuracoes. Usaremos no arquivo de configuracao o exemplo citado acima, mas vc podemuda-lo de acorda com suas necessidades.Edite e coloque no /usr/local/etc/ipa.conf as seguintes linhas:global {   update_db_time = 1m}rule 192.168.3.3 {   ipfw = 214 215   startup {      exec = /sbin/ipfw add 214 allow all from 192.168.3.3 to any      exec = /sbin/ipfw add 215 allow all from any to 192.168.3.3   }   limit 15m {      byte_limit = 15m      info = 15 Mbytes por dia      zero_time = +d      reach {    exec = /sbin/ipfw add 210 fwd 192.168.1.1,80 tcp from 192.168.3.3 to any 80    exec = /sbin/ipfw add 211 deny tcp from any to 192.168.3.3      }      expire {         expire_time = +d         exec = /sbin/ipfw del 210         exec = /sbin/ipfw del 211      }   }}Salve o arquivo.Vou agora explicar parte por parte da configuracao para que caso vc queiramudar/adicionar mais coisas, fique facil:global {   update_db_time = 1m}# Essa linha como o proprio nome diz, ela eh global, sera lida# por todas as regras. O update_db_time significa de quanto em quanto# tempo sera feito o update do volume de dados trafegados pelo(s) IP(s).------------------------rule 192.168.3.3 {# "rule" no caso seria o nome da regras, ai fica a criterito de cada um# dar o nome que quiser a regras, mas em nosso caso eh melhor dar o nome# da regra o numero IP para que nao fique confuso.----------------------   ipfw =  214 215   startup {      exec = /sbin/ipfw add 214 allow all from 192.168.3.3 to any      exec = /sbin/ipfw add 215 allow all from any to 192.168.3.3   }# Essas regras sao iniciadas na inicializacao do ipa, elas sao muito# importantes pois eh atraves delas eh q se faz a contagem do numero de# bytes utilizado pelo IP.------------------------   limit 15m {# Caso queira mudar o limite vc pode alterar para Nk, Nm, Ng onde "N" eh o# numero de limite "k" kbytes, "m" mgbytes e "g", gigabytes.      byte_limit = 15m# Caso queira mudar o limite vc pode alterar para Nk, Nm, Ng onde "N" eh o# numero de limite "k" kbytes, "m" mgbytes e "g", gigabytes.      info = 15 Mbytes por dia# Somente uma informacao para controle. vc pode alterar com o seu limite# desejado.      zero_time = +d# zero_time, significa qdo sera zerada a contagem de bytes, +d significa# que sera zerada no proximo dia, vc pode usar Ns, Nm, Nh, +d, +m onde# "N" eh o tempo, "s" segundos, "m" megabytes e "h" hora, +d dia e +m mes.      reach {# Caso atinja o limite executar os comandos abaixo:    exec = /sbin/ipfw add 210 fwd 192.168.1.1,80 tcp from 192.168.3.3 to any 80# Essa linha de execucao do ipfw eh importante pois eh ela que redireciona# o usuario para a pagina do servidor falando q ele ultrapassou o seu# limite. Troque o IP 192.168.1.1 para o IP do seu servidor e o IP# 192.168.3.3 para o IP do seu cliente. Com isso qdo chegar ao limite dele# ele ao tentar acessar uma pagina caira diretamente na pagina do# servidor.    exec = /sbin/ipfw add 211 deny tcp from any to 192.168.3.3# Essa linha bloqueia qqer pacote tcp vindo de qqer lugar para o seu# cliente de IP 192.168.3.3------------------------      expire {# expiracao          expire_time = +d# tempo de expiracao, esse sera quanto tempo o usuario ficara bloqueado,# por ex: como acima esta "+d" significa que ele sera desbloqueado, para# que possa acessar novamente somente no outro dia. Pode ser usado tb Ns,# Nm, Nh onde "N" eh o tempo, "s" segundos, "m" minutos e "h" hora.         exec = /sbin/ipfw del 210  exec = /sbin/ipfw del 211# Depois um dia bloqueado, eh liberado novamente o acesso do usuario eh# deletando-se a regras 210 e 211 do ipfwAgora seu ipa esta pronto para ser usado. Eh importante ressaltar que noarquivo ipa.conf vc pode acrescentar quantos IPs quiser basta criar umanova "rule" para cada IP.  Por ex vamos supor que quero criar regras para3 IPs 192.168.2.1, 192.168.2.2 e 192.168.2.3 ai neste caso ficaria assim:global {   update_db_time = 1m}rule 192.168.2.1 {   ipfw =  214 215   startup {      exec = /sbin/ipfw add 214 allow all from 192.168.2.1 to any      exec = /sbin/ipfw add 215 allow all from any to 192.168.2.1   }   limit 100k {      byte_limit = 100k      info = 100 Kbytes por dia      zero_time = +d      reach {         exec = /sbin/ipfw add 210 fwd 192.168.1.1,80 tcp from 192.168.2.1to any 80         exec = /sbin/ipfw add 211 deny tcp from any to 192.168.2.1      }      expire {         expire_time = +d         exec = /sbin/ipfw del 210         exec = /sbin/ipfw del 211      }   }}rule 192.168.2.2 {   ipfw = 224 225   startup {      exec = /sbin/ipfw add 224 allow all from 192.168.2.2 to any      exec = /sbin/ipfw add 225 allow all from any to 192.168.2.2   }   limit 10m {      byte_limit = 10m      info = 10m Mbytes por dia      zero_time = +d      reach {         exec = /sbin/ipfw add 220 fwd 192.168.1.1,80 tcp from 192.168.2.2to any 80         exec = /sbin/ipfw add 221 deny tcp from any to 192.168.2.2      }      expire {         expire_time = 1h         exec = /sbin/ipfw del 220         exec = /sbin/ipfw del 221      }   }}rule 192.168.2.3 {   ipfw = 234 235   startup {      exec = /sbin/ipfw add 234 allow all from 192.168.2.3 to any      exec = /sbin/ipfw add 235 allow all from any to 192.168.2.3   }   limit 1g {      byte_limit = 1g      info = 1 Gbytes por dia      zero_time = 1h      reach {         exec = /sbin/ipfw add 230 fwd 192.168.1.1,80 tcp from 192.168.2.3to aany 80         exec = /sbin/ipfw add 231 deny tcp from any to 192.168.2.3      }      expire {         expire_time = 10s         exec = /sbin/ipfw del 230         exec = /sbin/ipfw del 231      }   }}      Caso vc queria informacoes sobre como esta um determinado IP, pode-se usaro ipastat que mostra estatisticas de cada IP, a sintaxe de uso eh:# ipastat -r regras -l limiteEx:# ipastat -r 192.168.2.1 -l 100k+-------------+-----------+-------+--------------------+| Rule        | Rule.Info | Limit | Limit.Info         |+-------------+-----------+-------+--------------------+| 192.168.2.1 |           | 100k  | 100 Kbytes por dia |+-------------+-----------+-------+--------------------++-------+------------+--------+------------+| Cntr  | Byte_limit | Cntr   | Byte_limit || Bytes | Bytes      | Mbytes | Mbytes     |+-------+------------+--------+------------+|     0 |     102400 |      0 |          0 |+-------+------------+--------+------------++--------+---------------------+| Status | Date                |+--------+---------------------+| Start  | 2001.07.11/18:36:59 || Zero   | 2001.07.12/00:00:00 |+--------+---------------------+Para outras regras do ipastat digite:# ipastat --hPara maiores detalhes sobre o ipa recomendo as manpages dele# man ipa# man ipa.confHa tambem otimos exemplos de configuracao do IPA em:/usr/local/share/ipa/examples4) Limitacao de banda por IP------------------------------Essa parte do howto eh opcional, so faca se vc quiser limitar banda por IPou classe de seus usuarios.Vamos pegar ainda o exemplo citado na secao 3 onde o usuario joao que temo IP 192.168.3.3, onde vc quer limitar seu IP a 128k. Para isso use aseguinte sintaxe com o ipfw:# ipfw add 1 pipe 10 tcp from any to 192.168.3.3# ipfw pipe 10 config bw 128Kbit/sAgora caso queira limitar sua classe inteira:# ipfw add 2 pipe 11 tcp from any to 192.168.3.0/24# ipfw pipe 11 config bw 128Kbit/sAgora caso queira limitar a entrada e saida de trafego ou seja odownload/upload da rede faca o seguinte:# ipfw add 4 pipe 13 tcp from 192.168.3.0/24 to any out# ipfw add 5 pipe 14 tcp from any to 192.168.3.0/24 in# ipfw pipe 13 config bw 128Kbit/s# ipfw pipe 14 config bw 128Kbit/sSubstitua os valores acima ou o IP de acordo com sua necessidade.Agora para que isso seja iniciado no boot coloque no arquivo/etc/ipfw.rules ( que foi criado na secao 1) as seguintes regras:/sbin/ipfw add 1 pipe 10 tcp from any to 192.168.3.3/sbin/ipfw pipe 10 config bw 128Kbit/s Nota: ou uma das regras acima citada nos exemplos que melhor lhesatisfazer.salve o arquivo e pronto, qdo sua maquina for rebootada as configuracoesja serao setadas automaticamente.Finalmente chegamos ao final, agora seu servidor esta pronto para sercolocado para uso, reinicie e boa sorte, qualquer duvida me mande umemail.Jean Milanez Melo Jean Milanez Melo
routeros
回复

使用道具 举报

 楼主| 发表于 2004-11-3 13:34:39 | 显示全部楼层
不错,收藏.
routeros
回复

使用道具 举报

发表于 2004-12-6 20:43:16 | 显示全部楼层
呵呵,还有广告。
routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-11-24 06:17 , Processed in 0.153454 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表