+ Responder ao Tópico



  1. #1
    jhonnybravo
    Visitante

    Padrão duvidas com o freebsd!!!

    , caros amigos sou principiante no freebsd queria saber como faço para instalar o cbq no meu servidor e queria saber tambem como faço para o cbq rodar, e tambem como faço para adiciora controle de banda no cbq. EX: o ip 192.168.0.4 eu quero que ele navegue com 256kbps e os demais com 128 como faço isso. agradeço se puderem me ajudar.

  2. #2

    Padrão Re: duvidas com o freebsd!!!

    Use o ipfw e muito bom e bem facil de implementar !!!



    Valeu !!!

  3. #3
    jhonnybravo
    Visitante

    Padrão sim mais....

    sim mais assim que eu reiniciar o servidor ele vai voltar a rodar e se não for pedir demais vc pode me dar um ex: de regra pra mim poder fazer la. obrigado pela atençao

  4. #4

    Padrão Re: sim mais....

    Supondo que vc queira controlar upload e download entao vc faz o seguinte edita o rc.local, se acaso nao tiver vc cria dentro de /etc:

    #ee rc.local

    E adiciona as seguintes linhas :

    /sbin/ipfw add 1 pipe 3 tcp from any to 192.168.0.2 out
    /sbin/ipfw add 1 pipe 4 tcp from 192.168.0.2 to any in
    /sbin/ipfw pipe 3 config bw 128kbit/s queue 10kbytes
    /sbin/ipfw pipe 4 config bw 64kbit/s queue 10kbytes

    Sai e salva as alteraçoes logo apos, vc torna o arquivo executavel:

    #chmod +x rc.local

    Depois cada vex que quiser levantar as regras vc digita:

    #./rc.local


    E sempre que reiniciar a maquina as regras estarao ativas !!!


    Cria essas 4 linhas de regra pra cada ip a ser controlado !!!


    Valeu !!!

  5. #5
    jhonnybravo
    Visitante

    Padrão sim mais.....

    Com os fontes do kernel em mãos, entre como root e vá até /usr/src/sys/i386/conf:

    $ cd /usr/src/sys/i386/conf

    Se ele retornar que a pasta destino não existe é porque os fontes do kernel não estão instaladas. Para adicionar as funções do NAT no kernel é interessante que façamos isto em uma cópia do kernel:

    $ cp GENERIC SERVER

    Agora edite o novo kernel. O editor nativo do Free é o ee:

    $ ee SERVER

    Altere a linha ident GENERIC para ident SERVER.

    Você pode fazer alterações para que o kernel não tenha suporte e hardware inexistente. Com o comando dmesg você encontra todo o hardware instalado na sua máquina, vá para o kernel e comente as linhas que representam os hardwares que você não possui.

    PS: Faça isso com atenção, pelo contrário você poderá ter que reinstalar o seu Free. Sugiro que só faça este procedimento após ter um pouco de prática com o FreeBSD.

    Encontre as linhas options e adicione estas que tratam do NAT:
    options INCLUDE_CONFIG_FILE
    options IPFIREWALL
    options IPFIREWALL_FORWARD
    options IPFIREWALL_DEFAULT_TO_ACCEPT
    options IPFIREWALL_VERBOSE
    options IPFIREWALL_VERBOSE_LIMIT=100
    options IPDIVERT
    options DUMMYNET
    options TCP_DROP_SYNFIN

    Com as opções acima é criado um firewall aberto, ou seja, toda máquina que tem ele como gateway vai conectar, a não ser que seja bloqueado o acesso daquele IP no rc.local (veremos isto mais tarde). Se você trocar a opção IPFIREWALL_DEFAULT_TO_ACCEPT por IPFIREWALL_DEFAULT_TO_REJECT, o firewall ficará fechado, bloqueando o acesso de qualquer PC, a não ser que regras liberem a acesso para aquele IP.

    Fica então a critério do administrador criar um firewall aberto ou fechado. Minha sugestão é criar ele aberto e colocar uma regra no rc.local bloqueando o acesso para IPs não permitidos (veremos mais tarde).

    Salve o arquivo:

    digite ESC, selecione a opção leave editor e após save changes.

    Agora digite:

    $ config SERVER

    Ele irá retornar uma mensagem parecida com esta:

    Don't forget to do a ``make depend''
    Kernel build directory is ../../compile/SERVER

    Traduzindo seria: não esqueça do make depend e a configuração do kernel está em ../../compile/SERVER.

    Então vamos lá:

    $ cd ../../compile/SERVER
    $ make depend
    $ make
    $ make install

    Se em nenhum destes passos ocorreu algum erro, seu kernel está compilado e deverá funcionar, então reinicie o seu servidor.

    $ reboot

    Editando o rc.conf
    Logado como root, vá ate o /etc:

    $ cd /etc
    $ ee rc.conf

    No FreeBSD as interfaces de rede são reconhecidas diferentemente do Linux. No Free elas são identificadas de acordo com seu chipset e não pelo ethx.

    Com um ifconfig você logo reconhecerá as placas de rede instaladas, deverá ser algo parecido com vr0 ou rl0. No exemplo irei utilizar duas placas Realtek, rl0 para interface externa e rl1 para a interna.

    Vamos ao arquivo:
    #CONFIGURAÇÃO GERAL DO SISTEMA
    #ativa o server como gateway
    gateway_enable="YES"

    #desativa o nível de segurança do kernel (não acho necessário ativar)
    kern_securelevel_enable="NO"

    #ativa o suporte de pacotes escritos para Linux
    #o pacote deve estar instalado anteriormente
    linux_enable="YES"

    #vou ter que pesquisar
    nfs_reserved_port_only="NO"

    #desativa o sendmail
    sendmail_enable="NONE"

    #ativa ssh
    sshd_enable="YES"

    #CONFIGURAÇÃO DA REDE
    #endereço principal da placa de rede externa
    ifconfig_rl0="inet 200.200.200.222 netmask 255.255.255.0"

    #com o alias é possível colocar mais de um endereço para a mesma placa
    #pode ser necessário para o redirecionamento de IPs
    ifconfig_rl0_alias0="inet 200.200.200.12 netmask 255.255.255.0"
    ifconfig_rl0_alias0="inet 200.200.200.156 netmask 255.255.255.0"

    #endereço principal da placa de rede interna
    ifconfig_rl1="inet 10.23.0.1 netmask 255.255.0.0"

    #gateway para o roteador
    defaultrouter="200.248.106.1"

    #nome do servidor
    hostname="nat.pdh.com.br"

    #CONFIGURAÇÃO DO FIREWALL
    firewall_enable="YES"
    firewall_type="OPEN"
    firewall_quiet="YES"
    firewall_logging="NO"

    #CONFIGURAÇÃO DO SERVIÇO NATD
    natd_enable="YES"
    natd_flags="-l -u -f /etc/natd.conf"
    #a linha abaixo deve especificar a interface externa
    natd_interface="rl0"

    Editando o natd.conf
    Logado como root vá ate o /etc:

    $ cd /etc
    $ ee natd.conf

    Este arquivo trata das configurações do NAT. É aqui também onde você seta as configurações para fazer o redirecionamento de portas e IPs.
    #a linha abaixo deve se referir a interface externa
    interface rl0
    dynamic yes
    same_ports yes
    use_sockets yes

    #exemplo de redirecionamento de IP
    #estes IPs devem estar setados como aliases na interface
    #externa dentro do rc.local

    redirect_address 10.23.0.195 200.200.200.12
    redirect_address 10.23.0.32 200.200.200.156

    #trocando em miúdos o IP 10.23.0.195 vai escutar o alias 200.200.200.12

    #exemplos de redirecionamentos de portas

    redirect_port tcp 10.23.0.84:3389 3333
    redirect_port udp 10.23.0.79:30000-30100 30000-30100

    #em miúdos, no primeiro exemplo o IP 10.23.0.84 na porta 3389 vai
    #escutar a porta 3389 do servidor, protocolo tcp
    #
    #no segundo exemplo o IP 10.23.0.79 nas portas 30000 até 30100 irá escutar
    #as portas de mesmo numero no servidor, protocolo udp
    #
    #estas configurações só precisam ser realizadas no firewall, e as máquinas que
    #irão escutar estas portas continuam com as configurações comuns de
    #uma rede de computadores
    #toda vez que este arquivo for modificado o servidor deverá ser reiniciado

    Editando o resolv.conf
    Logado como root vá ate o /etc:

    $ cd /etc
    $ ee resolv.conf
    #este arquivo configura os teus servidores DNS
    domain pdh.com.br
    nameserver 200.125.35.7
    nameserver 200.125.35.8

    Editando o rc.local
    Aqui é possível realizar configurações de controle de banda e bloqueio de portas. Também podem ser colocadas linhas de comando para levantar serviços como o Squid por exemplo.

    Com esse controle é possível cortar os problemas com aqueles usuários que ficam o dia inteiro no MSN e baixando coisas, lotando a rede que alguns precisam.

    Logado como root vá ate o /etc:

    $ cd /etc
    $ ee rc.local
    #apaga todas as regras ativas do firewall
    /sbin/ipfw -f flush

    #Levanta MPD
    /usr/local/sbin/mpd -b

    #Levanta o Squid
    #/sbin/ipfw add 2 allow tcp from 200.200.200.12 to any 80
    #/sbin/ipfw add 3 fwd 127.0.0.1,3128 tcp from any to any 80

    #é possível bloquear que protocolos NetBios passem pelo servidor
    #opção interessante para administradores de redes em provedor
    #para que o netbios de uma rede interna case problemas na rede
    #de distribuição do provedor, apesar do NetBios não ser roteável...

    #Bloqueios de NetBios
    /sbin/ipfw add 100 deny log tcp from any to any 135
    /sbin/ipfw add 101 deny log tcp from any to any 136
    /sbin/ipfw add 102 deny log tcp from any to any 137
    /sbin/ipfw add 103 deny log tcp from any to any 138
    /sbin/ipfw add 104 deny log tcp from any to any 139
    /sbin/ipfw add 105 deny log udp from any to any 135
    /sbin/ipfw add 106 deny log udp from any to any 136
    /sbin/ipfw add 107 deny log udp from any to any 137
    /sbin/ipfw add 108 deny log udp from any to any 138
    /sbin/ipfw add 109 deny log udp from any to any 139
    /sbin/ipfw add 110 deny log tcp from any 135 to any
    /sbin/ipfw add 111 deny log tcp from any 136 to any
    /sbin/ipfw add 112 deny log tcp from any 137 to any
    /sbin/ipfw add 113 deny log tcp from any 138 to any
    /sbin/ipfw add 114 deny log tcp from any 139 to any
    /sbin/ipfw add 115 deny log udp from any 135 to any
    /sbin/ipfw add 116 deny log udp from any 136 to any
    /sbin/ipfw add 117 deny log udp from any 137 to any
    /sbin/ipfw add 118 deny log udp from any 138 to any
    /sbin/ipfw add 119 deny log udp from any 139 to any
    /sbin/ipfw add 120 deny log tcp from any to any 445
    /sbin/ipfw add 121 deny log tcp from any 445 to any
    /sbin/ipfw add 122 deny log udp from any to any 445
    /sbin/ipfw add 123 deny log udp from any 445 to any

    #utilize as regras abaixo para setar valores de banda para os IPs internos

    #para o IP 10.23.0.106
    #de qualquer lugar para o 10.23.0.106...
    /sbin/ipfw add 1 pipe 1 tcp from any to 10.23.0.106 out

    #do 10.23.0.106 para qualquer lugar...
    /sbin/ipfw add 1 pipe 2 tcp from 10.0.0.106 to any in

    #seta o valor de download
    /sbin/ipfw pipe 1 config bw 256kbit/s queue 10kbytes

    #seta o valor de upload
    /sbin/ipfw pipe 2 config bw 1128kbit/s queue 10kbytes


    #para o ip 10.23.0.95
    /sbin/ipfw add 1 pipe 3 tcp from any to 10.23.0.95 out
    /sbin/ipfw add 1 pipe 4 tcp from 10.23.0.95 to any in
    /sbin/ipfw pipe 3 config bw 128kbit/s queue 10kbytes
    /sbin/ipfw pipe 4 config bw 64kbit/s queue 10kbytes

    #com a regra abaixo é fechado todos os demais IPs
    #ela deve sempre ficar após as liberações

    #Fecha Tudo
    /sbin/ipfw add 1 pipe 5 tcp from any to 10.23.0.0:255.255.255.0 out
    /sbin/ipfw add 1 pipe 6 tcp from 10.23.0.0:255.255.255.0 to any in
    /sbin/ipfw pipe 5 config bw 1bit/s queue 10kbytes
    /sbin/ipfw pipe 6 config bw 1bit/s queue 10kbytes

    Pode salvar o arquivo. Agora dê permissão de executável:

    $ chmod +x rc.local

    Assim sempre que for realizada alguma mudança neste arquivo não precisa reiniciar o server, apenas execute o comando:

    $ ./rc.local

    mais tem um porem amigo, esse comando $ cd ../../compile/SERVER
    $ make depend
    $ make
    $ make install
    não funcionam no free que eu instalei, e algumas linhas do rc.conf não existem ex: firewall_enable="YES"
    firewall_type="OPEN"
    firewall_quiet="YES"
    firewall_logging="NO"
    essas ai não existem como faço... ficarei grato se puderem me ajudar.obrigado

  6. #6

    Padrão duvidas com o freebsd!!!

    no handbook vc encontra instruções sôbre a compilação do kernel do FreeBSD. Os comandos que vc deu são próprios para o Linux. Que tal aprender um pouco mais, antes de mexer com o FreeBSD, que é diferente?

    Há que se notar também que houveram modificações significativas no conteúdo/definições do kernel, após o advento da série 5. Vc tem agora o LINT, o hints e o NOTES, que devem ser analisados adequadamente. Em resumo, voltamos à necessidade de estudar-se o handbook (que está em /usr/share/docs..)

    sem isso, vc vai ficar bem atrapalhado por um bom tempo.

    por outro lado, o google é seu amigo:

    http://www.useaporradogoogle.com/

    http://www.google.com.br/bsd?hl=pt-B...esquisar&meta=
    http://www.google.com/bsd?hl=en&lr=&...5.&btnG=Search