You are on page 1of 22

Redes Linux: Livro de Receitas

Carla Schroder

00_redelinux.indd 1

19/01/2009 08:49:22

Redes Linux: Livro de Receitas Do original Linux Networking Cookbook Copyright 2008 da Starlin Alta Con. Com. Ltda. Authorized translation from English language edition, entitled Linux Networking Cookbook, published by OReilly Media, Inc. Copyright 2008 by OReilly Media, Inc.. Portuguese language edition published by Starlin Alta Con. Com. Ltda, Copyright 2008 by Starlin Alta Con. Com. Ltda. Todos os direitos reservados e protegidos pela Lei 5988 de 14/12/73. Nenhuma parte deste livro, sem autorizao prvia por escrito da editora, poder ser reproduzida ou transmitida sejam quais forem os meios empregados: eletrnico, mecnico, fotogrfico, gravao ou quaisquer outros. Todo o esforo foi feito para fornecer a mais completa e adequada informao, contudo a editora e o(s) autor(es) no assumem responsabilidade pelos resultados e usos da informao fornecida. Recomendamos aos leitores testar a informao, bem como tomar todos os cuidados necessrios (como o backup), antes da efetiva utilizao. Este livro no contm CD-ROM, disquete ou qualquer outra mdia. Erratas e atualizaes: Sempre nos esforamos para entregar a voc, leitor, um livro livre de erros tcnicos ou de contedo; porm, nem sempre isso conseguido, seja por motivo de alterao de software, interpretao ou mesmo quando alguns deslizes constam na verso original de alguns livros que traduzimos. Sendo assim, criamos em nosso site, www.altabooks.com.br, a seo Erratas, onde relataremos, com a devida correo, qualquer erro encontrado em nossos livros. Avisos e Renncia de Direitos: Este livro vendido como est, sem garantia de qualquer tipo, seja expressa ou implcita. Marcas Registradas: Todos os termos mencionados e reconhecidos como Marca Registrada e/ou comercial so de responsabilidade de seus proprietrios. A Editora informa no estar associada a nenhum produto e/ou fornecedor apresentado no livro. No decorrer da obra, imagens, nomes de produtos e fabricantes podem ter sido utilizados, e desde j a Editora informa que o uso apenas ilustrativo e/ou educativo, no visando ao lucro, favorecimento ou desmerecimento do produto/fabricante. Produo Editorial: Starlin Alta Con. Com. Ltda Coordenao Editorial: Marcelo Utrine Traduo: Renata Rodrigues e Raquel Marques Reviso: Elza Maria Diagramao: Tamine Valente Reviso Tcnica: Raimundo Nonato Fechamento: Angel Cabeza Impresso no Brasil O cdigo de propriedade intelectual de 1 de Julho de 1992 probe expressamente o uso coletivo sem autorizao dos detentores do direito autoral da obra, bem como a cpia ilegal do original. Esta prtica generalizada nos estabelecimentos de ensino, provoca uma brutal baixa nas vendas dos livros a ponto de impossibilitar os autores de criarem novas obras.

Rua Viva Claudio, 291 - Jacar Rio de Janeiro - RJ CEP 20970-031 Tel: 21 3278-8069 Fax: 21 3277-1253 www.altabooks.com.br altabooks@altabooks.com.br

00_redelinux.indd 2

19/01/2009 08:49:23

Para Terry Hanson obrigado! Voc faz tudo valer a pena.

00_redelinux.indd 3

19/01/2009 08:49:23

00_redelinux.indd 4

19/01/2009 08:49:23

Sumrio
Prefcio xv 1.0 Introduo rede Linux 1 1.0 Introduo 1

2. Construindo um Gateway Linux em um Computador de Placa nica 11 2.0 Introduo 2.1 Obtendo Familiaridade com a Soekris 2.2 Configurando Perfis Minicom Mltiplos 2.3 Instalando a Pyramid Linux em um Carto Compact Flash 2.4 Instalao de Rede da Pyramid no Debian 2.5 Instalao de Rede da Pyramid no Fedora 2.6 Dando Boot na Pyramid Linux 2.7 Encontrando e Editando Arquivos da Pyramid 2.8 Solidificando a Pyramid 2.9 Obtendo e Instalando a ltima Construo da Pyramid 2.10 Adicionando Software Adicional para a Pyramid Linux 2.11 Adicionando Novos Drives de Hardware 2.12 Customizando o Ncleo da Pyramid 2.13 Atualizando a Soekris comBIOS 11 13 15 16 17 19 21 23 24 25 26 29 30 31

3. Construindo um Firewall no Linux 33 3.0 Introduo 3.1 Montando uma Caixa de Firewall no Linux 3.2 Configurando Cartes de Interface de Rede no Debian 3.3 Configurando Cartes de Interface de Rede no Fedora 3.4 Identificando Qual NIC Qual 3.5 Construindo um Firewall Compartilhado de Conexo com a Internet em um Endereo IP WAN Dinmico um Endereo IP WAN Esttico 47 51
v

33 40 41 44 46

3.6 Construindo um Firewall Compartilhado de Conexo com a Internet em

00_redelinux.indd 5

19/01/2009 08:49:23

3.7 Exibindo o Estado do seu Firewall 3.8 Desativando um Firewall iptable

52 53

3.9 Iniciando iptables no Boot, Levantando e Derrubando Manualmente o Seu Firewall 54 3.10 Testando seu Firewall 3.11 Configurando o Firewall para Administrao Remota via SSH 3.12 Permitindo SSH Remoto Atravs de um Firewall NAT 3.13 Obtendo Mltiplas Chaves Host SSH Alm da NAT 3.14 Rodando Servios Pblicos em Endereos IP Privados 3.15 Configurando um Firewall para Host nico 3.16 Configurando um Firewall de Servidor 3.17 Configurando os Logs do iptables 3.18 Escrevendo Regras de Sada 56 59 60 62 63 65 69 71 73

4. Construindo um Ponto de Acesso Wireless no Linux 75 4.0 Introduo 4.1 Construindo um Ponto de Acesso Wireless no Linux 4.2 Trazendo o Wireless para Ligado com Fio 4.3 Configurando Servios de Nome 4.4 Determinando Endereos IP Estticos a partir do Servidor DHCP 4.5 Configurando o Linux e Clientes de DHCP Esttico do Windows 4.6 Adicionando Servidores de Correio ao dnsmasq 4.7 Tornando o WPA2-Personal Quase To Bom Quanto o WPA-Enterprise 4.8 Autenticao Empresarial com um servidor RADIUS 4.9 Configurando Seu Ponto de Acesso Wireless para Usar o FreeRADIUS 4.10 Autenticando Clientes para FreeRADIUS 4.11 Conectando a Internet e Usando Firewall 4.12 Usando Roteador ao Invs de Ponte 4.13 Experimentando Carto de Interface Wireless 4.14 Mudando o Hostname do Roteador Pyramid 4.15 Desativando a Diversidade de Antena 4.16 Gerenciando o Cache de DNS do dnsmasq 4.17 Gerenciando os Caches de DNS do Windows 4.18 Atualizando o Tempo de Boot 75 79 80 82 85 86 88 89 92 96 97 98 99 103 105 106 107 110 111

vi

Sumrio

00_redelinux.indd 6

19/01/2009 08:49:23

5. Construindo um Servidor VOIP com o Asterisk 113 5.0 Introduo 5.1 Instalando o Asterisk a partir do Cdigo Fonte 5.2 Instalando o Asterisk no Debian 5.3 Iniciando a Parando o Asterisk 5.4 Testando o Servidor Asterisk 5.5 Adicionando Extenses de Telefone ao Asterisk e Fazendo Chamadas 5.6 Configurando Softphones 5.7 Obtendo VoIP Real com o Free World Dial-up 5.8 Conectando Seu Asterisk PBX em Linhas de Telefone Analgicas 5.9 Criando uma Recepcionista Digital 5.10 Gravando Prompts Customizados 5.11 Mantendo uma Mensagem do Dia 5.12 Transferindo Chamadas 5.13 Roteando Chamadas para Grupos de Telefones 5.14 Estacionando Chamadas 5.15 Customizando Msica de Espera 5.16 Tocando Arquivos de Som MP3 no Asterisk 5.17 Entregando Transmisses de Correio de Voz 5.18 Fazendo Conferncias com o Asterisk 5.19 Monitorando Conferncias 5.20 Passando Trfego SIP Atravs de Firewalls iptables com NAT 5.21 Passando Trfego IAX Atravs de Firewalls iptables com NAT 5.22 Usando AsteriskNOW, Asterisk em 30 Minutos 5.23 Instalando e Removendo Pacotes no AsteriskNOW 5.24 Conectando Road Warriors e Usurios Remotos 113 116 120 121 124 124 131 133 138 138 140 143 145 145 146 147 148 149 150 151 152 154 155 156 157

6. Roteando com o Linux 159 6.0 Introduo 6.1 Calculando Sub-redes com o ipcalc 6.2 Determinando um Gateway Padro 6.3 Configurando um Roteador Local Simples 6.4 Configurando Compartilhamento de Conexo com a Internet mais Simples 6.5 Configurando Roteamento Esttico Atravs de Sub-redes 6.6 Fazendo Roteadores Estticos Persistentes 6.7 Usando Roteamento Dinmico RIP no Debian
Sumrio

159 161 163 165 167 169 171 172 |


vii

00_redelinux.indd 7

19/01/2009 08:49:23

6.8 Usando Roteamento Dinmico RIP no Fedora 6.9 Usando a Linha de Comando do Quagga 6.10 Fazendo Login no Quagga Daemons Remotamente 6.11 Rodando o Daemons Quagga a partir da Linha de Comando 6.12 Monitorando o RIPD 6.13 Descartando Roteadores com o Zebra 6.14 Usando o OSPF para Roteamento Dinmico Simples 6.15 Adicionando Alguma Segurana ao RIP e OSPF 6.16 Monitorando o OSPFD

175 176 178 179 181 181 183 184 186

7. Administrao Remota Segura com SSH 187 7.0 Introduo 7.1 Iniciando e Parando o OpenSSH 7.2 Criando Frases Secretas Fortes 7.3 Configurando Chaves de Host para Autenticao mais Simples 7.4 Gerando e Copiando Chaves SSH 7.5 Usando Autenticao via Chave Pblica para Proteger Senhas de Sistema 7.6 Gerenciando Mltiplas Chaves de Identidade 7.7 Solidificando o OpenSSH 7.8 Mudando uma Senha Secreta 7.9 Resgatando uma Impresso Digital da Chave 7.10 Checando Configurao de Sintaxe 7.11 Usando Arquivos de Configurao de Cliente OpenSSH Para Logins Mais Fceis 7.12 Tunelamento Seguro do X Windows sobre o SSH 7.13 Executando Comandos Sem Abrir um Shell Remoto 7.14 Usando Comentrios para Rotular Chaves 7.15 Usando DenyHosts para Frustrar Ataques de SSH 7.16 Criando Um Arquivo de Inicializao DenyHosts 7.17 montando Sistemas de Arquivos Remotos Inteiros com sshfs 187 190 191 192 193 195 196 197 198 199 199 200 201 202 203 204 206 207

8.0 Usando Desktops Grficos Remotos Cross-Plataform 209 8.0 Introduo 8.1 Conectando o Linux ao Windows via rdesktop 8.2 Gerando e Gerenciando Chaves FreeNX SSH 8.3 Usando o FreeNX para Rodar o Linux a partir do Windows 8.4 Usando o FreeNX para Rodar o Linux a partir do Solaris, Mac OS X ou Linux
viii

209 211 213 214 218

Sumrio

00_redelinux.indd 8

19/01/2009 08:49:23

8.5 Gerenciando Usurios do FreeNX 8.6 Vigiando Usurios Nxclient a partir do Servidor FreeNX 8.7 Iniciando e Parando o Servidor FreeNX 8.8 Configurando um Desktop Customizado 8.9 Criando Sesses Adicionais de Nxclient 8.10 Habilitando Compartilhamento de Arquivo e Impresso, e Multimdia no Nxclient 8.11 Prevenindo Salvamento de Senha no Nxclient 8.12 Soluo de Problemas no FreeNX 8.13 Usando o VNC para Controlar o Windows a partir do Linux 8.14 Usando o VNC para Controlar o Windows e o Linux ao Mesmo Tempo 8.15 Usando o VNC para Administrao Remota Linux-to-Linux 8.16 Exibindo o Mesmo Desktop do Windows para Mltiplos Usurios Remotos 8.17 Mudando a Senha do Servidor Linux VNC 8.18 Customizando o Desktop Remoto com VNC 8.19 Determinando o Tamanho do Desktop Remoto com VNC 8.20 Conectando o VNC a uma Sesso Existente X 8.21 Tunelamento Seguro x11vnc sobre o SSH 8.22 Tunelamento do TightVNC Entre o Linux e o Windows

219 220 221 222 224 226 226 227 228 230 231 233 236 236 238 239 240 241

9. Construindo Redes Privadas Virtuais com Cross-Platform Seguras  245 9.0 Introduo 9.1 Configurando um Laboratrio de Teste Seguro de OpenVPN 9.2 Iniciando e Testando o OpenVPN 9.3 Testando Criptografia com Chaves Estticas 9.4 Conectando um Cliente Remoto Linux Usando Chaves Estticas 9.5 Criando Seu Prprio PKI para o OpenVPN 9.6 Configurando o Servidor OpenVPN para Clientes Mltiplos 9.7 Configurando o OpenVPN para Iniciar em Boot 9.8 Revogando Certificados 9.9 Configurando o Servidor OpenVPN em Modo de Ponte 9.10 Rodando o OpenVPN como um Usurio No Privilegiado 9.11 Conectando Clientes do Windows 245 247 250 252 253 255 258 259 260 262 263 264

10. Construindo um Servidor Linux PPTP VPN 265 10.0 Introduo 10.1 Instalando o Poptop no Linux Debian
Sumrio

265 268 |
ix

00_redelinux.indd 9

19/01/2009 08:49:23

10.2 Modificando o Kernel do Debian para Suporte MPPE 10.3 Instalando o Poptop no Linux Fedora 10.4 Modificando o Kernel do Fedora para Suporte MPPE 10.5 Configurando um Servidor Independente PPTP VPN 10.6 Adicionando Seu servidor Poptop ao Diretrio Ativo 10.7 Conectando Clientes Linux a um Servidor PPTP 10.8 Obtendo PPTP Atravs de um Firewall iptables 10.9 Monitorando Seu Servidor PPTP 10.10 Soluo de Problemas do PPTP

269 270 271 272 275 276 277 278 279

11. Single Sign-on com Samba para LANs Mistas de Linux/Windows 283 11.0 Introduo 11.1 Verificando Que Todas as Partes Esto No Lugar 11.2 Compilando Samba a partir do Cdigo Original 11.3 Iniciando e Parando Samba 11.4 Usando Samba Como um Controlador de Domnio Primrio 11.6 Unindo Linux a um Domnio Active Directory 11.7 Conectando Windows 95/98/ME a um Domnio Samba 11.8 Conectando Windows NT4 a um Domnio Samba 11.9 Conectando Windows NT/2000 a um Domnio Samba 11.10 Conectando Windows XP a um Domnio Samba 11.11. Conectando Clientes Linux a um Domnio Samba com Programas de Linha de Comando 302 305 11.12 Conectando Clientes Linux a um Domnio Samba com Programas Grficos 283 285 287 290 290 296 299 300 300 301

11.5 Migrando para um Controlador de Domnio Primrio Samba a partir de um NT4 PDC 294

12. Diretrio de Rede Centralizada com OpenLDAP 307 12.0 Introduo 12.1 Instalando OpenLDAP em Debian 12.2 Instalando OpenLDAP em Fedora 12.3 Configurando e Testando o servidor OpenLDAP 12.4 Criando um Novo Banco de Dados em Fedora 12.5 Adicionando Mais Usurios ao Seu Diretrio 12.6 Corrigindo Entradas de Diretrio 12.7 Conectando a um Servidor Remoto OpenLDAP 12.8 Encontrando Coisas no Seu Diretrio OpenLDAP
x

307 313 315 315 318 320 322 324 325

Sumrio

00_redelinux.indd 10

19/01/2009 08:49:23

12.9 Indexando Seu Banco de Dados 12.10 Gerenciando Seu Diretrio com Interfaces Grficas 12.11 Configurando o Banco de Dados Berkeley 12.12 Configurando Login OpenLDAP 12.13 Fazendo Backup e Recuperando Seu Diretrio 12.14 Refinando Controles de Acesso 12.15 Modificando Senhas

327 328 330 334 336 337 341

13. Monitoramento de Rede com Nagios 343 13.0 Introduo 13.1 Instalando Nagios a partir de Cdigos Fonte 13.2 Configurando Apache em/para Nagios 13.3 Organizando Equilibradamente Arquivos de Configurao de Nagios 13.4 Configurando Nagios para Monitorar Localhost 13.5 Configurando Permisses CGI para Acesso Web Completo de Nagios 13.6 Iniciando Nagios no Boot 13.7 Adicionando Mais Usurios Nagios 13.8 Aumente a Velocidade de Nagios com check_icmp 13.9 Monitorando SSHD 13.10 Monitorando um Servidor Web 13.11 Monitorando um Servidor de Email 13.12 Usando ServiceGroups para Agrupar Servios Relacionados 13.13 Monitorando Servios de Nome DNS 13.14 Configurando Administrao Remota Segura de Nagios com OpenSSH 13.15 Configurando Administrao Remota Segura de Nagios com OpenSSL 343 344 348 350 352 359 361 361 362 363 366 369 371 372 374 375

14. Monitoramento de Rede com MRTG 377 14.0 Introduo 14.1 Instalando MRTG 14.2 Configurando SNMP em Debian 14.3 Configurando SNMP em Fedora 14.4 Configurando Seu Servio HTTP para MRTG 14.5 Configurando e Iniciando MRTG em Debian 14.6 Configurando e Iniciando MRTG em Fedora 14.7 Monitorando a Carga (Load) da CPU Ativa 14.8 Monitorando Uso do CPU e Tempo Ocioso
Sumrio

377 378 379 381 382 383 387 388 391 |


xi

00_redelinux.indd 11

19/01/2009 08:49:23

14.9 Monitorando Memria Fsica 14.10 Monitorando Espao Swap e Memria 14.11 Monitorando Troca de Espao e Memria  14.12 Monitorando Conexes TCP 14.13 Encontrando e Testando MIBs e OIDs 14.14 Testando Pedidos SNMP Remotas 14.15 Monitorando Hospedeiros Remotos 14.16 Criando Mltiplas Pginas Index MRTG 14.17 Executando MRTG como um Daemon

393 394 395 396 397 399 400 401 402

15. Familiarizando-se com Ipv6 405 15.0 Introduo 15.1 Testando Seu Sistema Linux por Suporte IPv6 15.2 Pingando Link Local em Servidores IPv6 15.3 Configurando Endereos de Unicast Locais nicos em Interfaces 15.4 Usando SSH com IPv6 15.5 Copiando Arquivos em Ipv6 com scp 15.6 Auto-configurao com IPv6 15.7 Calculando Endereos IPv6 15.8 Usando IPv6 na Internet 405 409 410 411 413 414 415 416 417

16. Configurando sem as Mos Instalaes de Novos Sistemas 419 16.0 Introduo 16.1 Criando Mdia de Boot de Instalao de Rede para Linux Fedora 16.2 Instalao de Rede de Fedora Usando Mdia de Boot de Rede 16.3 Configurando um Servidor de Instalao Fedora Baseado em HTTP 16.4 Configurando um Servidor de Instalao Fedora Baseado em FTP 16.5 Criando uma Instalao Linux Fedora Personalizada 16.6 Usando um Arquivo Kickstart para uma Instalao Linux Fedora Sem as Mos 16.7 Instalao de Rede Fedora atravs de Netboot PXE 16.8 Instalao de Rede de um Sistema Debian 16.9 Construindo um Mirror Debian Completo com apt-mirror 16.10 Construindo um Mirror Debian Parcial com apt-proxy 16.11 Configurando PCs de Clientes para Usar Seu Mirror Debian Local 16.12 Configurando um Servidor Netboot PXE Debian
xii

419 420 421 423 424 427 429 430 432 433 435 436 437

Sumrio

00_redelinux.indd 12

19/01/2009 08:49:23

16.13 Instalando Novos Sistemas a partir do Seu Mirror Debian Local 16.14 Automatizando Instalaes Debian com Arquivos Preseed

438 439

17. Administrao do Servidor Linux atravs do Console Serial 442 17.0 Introduo 17.1 Preparando um Servidor para Administrao de Console Serial 17.2 Configurando um Servidor Descentralizado com LILO 17.3 Configurando um Servidor Descentralizado com GRUB 17.4 Fazendo Boot em Modo Texto em Debian 17.5 Configurando o Console Serial 17.6 Configurando Seu Servidor para Administrao de Discagem 17.7 Discando no Servidor 17.8 Adicionando Segurana 17.9 Configurando Login 17.10 Fazendo Upload de Arquivos ao Servidor 442 443 446 448 450 452 454 457 458 460 461

18. Executando um Servidor Dial-up Linux 463 18.0 Introduo 18.1 Configurando uma nica Conta Dial-Up com WvDial 18.2 Configurando Contas Mltiplas em WvDial 18.3 Configurando Permisses Dial-up para Usurios Nonroot 18.4 Criando Contas WvDial para Usurios Nonroot 18.5 Compartilhando uma Conta de Internet Dial-up 18.6 Configurando Dial-on-Demand 18.7 Agendando Disponibilidade Dial-Up com cron 18.8 Discando com Voicemail Stutter Tones 18.9 Cancelando Chamada em Espera 18.10 Deixando a Senha de Fora do Arquivo de Configurao 18.11 Criando um Arquivo de Log pppd Separado 463 463 465 466 468 469 470 471 472 473 474 474

19. Soluo de Problemas de Rede 476 19.0 Introduo 19.1 Construindo um laptop para Diagnstico de Rede e Restaurao 19.2 Testando Conectividade com ping 19.3 Montando o Perfil de Sua Rede com Fping e Nmap 19.4 Encontrando Endereos de IP Duplicados com arping
Sumrio

476 477 480 482 484 |


xiii

00_redelinux.indd 13

19/01/2009 08:49:23

19.5 Testando Taxa de Transferncia e Latncia de HTTP com httping 19.6 Usando traceroute, tcptraceroute e mtr para Localizar Problemas de Rede 19.7 Usando tcpdump para Capturar e Analisar Trfego 19.8 Capturando Flags TCP com tcpdump 19.9 Medindo a Taxa de Transferncia (Trhoughput), Instabilidade (Jitter) e Perda de Pacote com o iperf

485 487 489 493 495 497 499 501 504 505 507 509 514 516 517

19.10 Usando o ngrep para Farejamento Avanado de Pacote 19.11 Usando o ntop para Monitoramento Colorido e Rpido de Rede 19.12 Soluo de Problemas em Servidores DNS 19.13 Soluo de Problemas em Clientes DNS 19.14 Soluo de Problemas em Servidores SMTP 19.15 Soluo de Problemas em Servidor POP3, POP3s ou IMAP 19.16 Criando Chaves SSL para Seu Servidor Syslog-ng em Debian 19.17 Criando Chaves SSL para Seu Servidor Syslog-ng em Fedora 19.18 Configurando o stunnel para Syslog-ng 19.19 Construindo um Servidor Syslog

A. Referncias Essenciais 520 B. Glossrio de Termos de Rede 523 C. Referncia de Construo de Ncleo do Linux 549 ndice Remissivo 557

xiv

Sumrio

00_redelinux.indd 14

19/01/2009 08:49:23

Contedo Deste Livro


Este livro dividido em 19 captulos e 3 apndices: Captulo 1, Introduo Rede Linux Aqui est sua viso superior de rede de computadores, trata de cabeamento, roteamento e switch, interfaces, os diferentes tipos de servios de Internet e os fundamentos de estrutura e desempenho de rede. Captulo 2, Construindo um Gateway Linux em um Computador de Placa nica No qual somos introduzidos ao fascinante e adaptvel mundo do Linux em routerboards, como aqueles feitos pelos Soekris e PC Engines, e como o Linux, em uma dessas pequenas placas d mais poder e flexibilidade a voc do que equipamentos comerciais com custo muitas vezes igual. Captulo 3, Construindo um Firewall no Linux Aprenda a usar os poderosos pacotes de filtros iptables do Linux para proteger sua rede, com receitas completas para limite de firewalls, firewalls de host nico, obter servios atravs do NAT (Traduo de Endereo de Rede), bloqueio de acesso externo a servios internos, acesso remoto seguro atravs do seu firewall, e como seguramente testar novos firewalls antes de implement-los em sistemas de produo. Captulo 4, Construindo um Ponto de Acesso Wireless no Linux Voc pode usar o Linux e um routerboard (ou qualquer hardware de PC ordinrio) para construir um seguro, poderoso, completamente caracterstico ponto de acesso wireless customizado para corresponder s suas necessidades, incluindo autenticao de alto nvel e criptografia, servios de nome, roteamento e conexo de ponte. Captulo 5, Construindo um Servidor VOIP com o Asterisk Este captulo mergulha nas entranhas do revolucionrio e popular servidor Asterisk VoIP. Certamente, esses dias, todos tm bons point-and-click GUIs para gerenciar seus sistemas iPBX, mas voc ainda precisa entender o que est embaixo da tampa. este captulo mostra a voc como instalar o Asterisk e configurar o Asterisk do zero: como criar extenses de usurio e correios de voz, gerenciar saudaes e mensagens customizadas, fazer transmisses de correios de voz, fornecimento de telefones, configurar uma recepcionista virtual, fazer integrao de PSTN (Rede de Telefonia Pblica Switched), fazer VoIP puro, gerenciar road warriors e mais. Captulo 6, Roteando com o Linux A pilha de rede do Linux uma potncia, e inclui capacidades de roteamento avanadas. Aqui esto receitas para construir roteadores baseados em Linux, calcular sub-redes (exatamente e sem dor), descarte de visitantes indesejados, uso de roteamento esttico e dinmico e monitoramento de seus pequenos roteadores de trabalho. Captulo 7, Administrao Remota Segura com SSH O OpenSSH uma implementao incrvel e de uso sem fim do mesmo protocolo SSH. Suporta logins tradicionais baseados em senha, logins baseados em chaves pblicas sem senha, e carrega seguramente o trfego em redes no confiveis. Voc aprender como fazer tudo isto, e mais ainda, como fazer log seguro remotamente nos seus sistemas e como solidificar e proteger o prprio OpenSSH.

xvi

Prefcio

00_redelinux.indd 16

19/01/2009 08:49:24

Captulo 8, Usando Desktops Grficos Remotos Cross-Plataform O OpenSSH eficiente e rpido, e oferece tanto console de texto quanto um seguro tnel X Windows para rodar aplicaes grficas. H alguns programas excelentes (FreeNX, rdesktop e VNC) que oferecem um grupo complementar de capacidades, como o helpdesk remoto, sua escolha de desktops remotos e o Linux como um cliente servidor de terminal X Windows. Voc pode controlar mltiplos computadores a partir de um nico teclado e monitor, e at mesmo conduzir uma classe onde mltiplos usurios visualizam ou participam na mesma sesso remota. Captulo 9, Construindo uma Rede Privada Virtual segura Cross-Plataform com o Open VPN Todos parecem querer uma segura, amigvel VPN Rede Privada Virtual (Virtual Private Network). Mas h muita confuso sobre o que uma VPN realmente , h muitos produtos comerciais que no so verdadeiras VPNs, mas meramente portais SSL para um nmero limitado de servios. O OpenVPN uma verdadeira VPN baseada em SSL que requer que todas as extremidades sejam confiveis, e que usa mtodos avanados para segurana de conexo e mantimento de criptografia segura. O OpenVPN inclui clientes para Linux, Solaris, Mac OS X, OpenBSD, FreeBSD e NetBSD, ento seu nico ponto de parada VPN. Voc aprender como criar a gerenciar seu prprio PKI Infraestrutura de Chave Pblica (Public Key Infrastructure), o que crucial para administrao indolor do OpenVPN. E tambm, como testar seguramente o OpenVPN, como configurar o servidor e como conectar clientes. Captulo 10, Construindo um Servidor Linux PPTP VPN Este captulo trata da construo e configurao de um servidor Linux PPTP VPN para clientes do Windows e do Linux; como inserir clientes do Windows de modo que eles tenham o suporte de criptografia necessrio, como integrar com o Active Directory e como obter o PPTP atravs de firewall iptables. Captulo 11, Autenticao nica Com o Samba para LANs Mistas Linux/Windows Usar o Samba como um controlador de domnio do Windows NT4-style d a voc um mecanismo flexvel, confivel e acessvel para autenticao dos seus clientes de rede. Voc ir aprender como migrar de um controlador de domnio do Windows para o Samba no Linux, como migrar contas de usurios do Windows para o Samba, integrar clientes Linux com o Active Directory e como conectar clientes. Captulo 12, Diretrio de Rede Centralizado com OpenLDAP Um diretrio LDAP um mecanismo excelente no qual basear seus servios de diretrio de rede. Este captulo mostra como construir um diretrio OpenLDAP do zero, como test-lo, como fazer mudanas, como encontrar coisas, como aumentar a velocidade de busca com indexao inteligente e como ajust-lo para mximo desempenho. Captulo 13, Monitoramento de Rede com o Nagios O Nagios um timo sistema de monitoramento de rede que faz uso inteligente de comandos Linux padro para monitorar servios e hosts, e para alertar voc quando houver problemas. Relatrios de status so exibidos em belos grficos coloridos em pginas HTML que podem ser visualizadas em qualquer browser da Web. Aprenda a monitorar integridade de sistemas bsicos e servidores comuns como DNS, Web e servidores de mensagem, e como executar administrao Nagios remota segura. Captulo 14, Monitoramento de Rede com o MRTG O MRTG um monitor de rede sensvel ao SNMP, ento, teoricamente pode adaptar ao monitor qualquer dispositivo ou servio habilitado ao SNMP. Aprenda como monitorar hardware e servios, e como encontrar a informao necessria sobre SNMP para criar monitores customizados.

Prefcio

xvii

00_redelinux.indd 17

19/01/2009 08:49:24

Captulo 15, Obtendo Familiaridade com o IPv6 Pronto ou no, o IPv6 est vindo, e vai eventualmente suplantar o IPv4. Siga adiante na curva rodando o IPv6 na sua prpria rede e na Internet; aprenda por que aqueles endereos IPv6 muito longos so na verdade, mais simples de gerenciar que endereos IPv4; aprenda como usar o SSH no IPv6, e como autoconfigurar clientes sem DHCP. Captulo 16, Configurando Instalaes de Automtica na Rede de Novos Sistemas O Linux Fedora e todos os seus parentes (Red Hat, CentOS, Mandriva, PC Linux OS e assim por diante), e o Linux Debian e todos os seus descendentes (Ubuntu, Mepis, Knoppix, etc.) incluem utilitrios para criar e clonar instalaes customizadas, e para fornecer novos sistemas pela rede. Ento, voc pode plugar um PC, e dentro de alguns minutos ter uma nova instalao completa e pronta. Este captulo descreve como usar instalao ordinria de imagens ISO para instalaes de rede do Fedora, e como criar e manter espelhos locais completos no Debian eficientemente. Captulo 17, Administrador de Servidor Linux via Console Serial Quando a Ethernet fica desordenada, o console serial salvar o dia, tanto localmente quanto remotamente; mais, roteadores e switches gerenciados so freqentemente administrados via console serial. Aprenda como configurar qualquer computador com Linux a aceitar conexes seriais, e como usar qualquer Linux, Mac OS X ou PC com Windows como um terminal serial. Voc tambm aprender como fazer administrao de servidor dial-up e como fazer upload de arquivos no seu link serial. Captulo 18, Rodando um Servidor Linux Discado Mesmo nesses tempos modernos, rede discada ainda importante; estamos a um longo caminho de banda larga universal. Configurar conexo com a Internet discada, conexo discada por demanda, usar o cron para programar sesses discadas, e configurar mltiplas contas discadas. Captulo 19, Soluo de Problemas de Redes O Linux contm uma abundncia de ferramentas poderosas para diagnosticar e consertar problemas de rede. Voc aprender os segredos profundos obscuros do ping, como usar o tcpdump e Wireshark para espiar suas prprias transferncias, como resolver problemas de servidor de nome e mensagem, como descobrir todos os hosts na sua rede, como rastrear problemas at a fonte deles e como configurar um servidor de log central seguro. Voc aprender um nmero de utilitrios de menor conhecimento mas poderosos, como o fping, httping, arping e mtr, e como transformar um laptop ordinrio velho em sua ferramenta de diagnstico e conserto de rede porttil indispensvel. Apndice A, Referncias Essenciais Rede de computadores um assunto amplo e complexo, ento aqui est uma lista de livros e outras referncias que dizem a voc o que voc precisa saber. Apndice B, Glossrio de Termos de Rede No sabe o que significa? Veja aqui. Apndice C, Referncia de Construo de Kernel do Linux Como o kernel do Linux continua a expandir em tamanho e funcionalidade, freqentemente faz sentido construir seu prprio kernel com todos os bits no necessrios removidos. Aprenda a maneira Fedora, a maneira Debian e a maneira comum de construir um kernel customizado.
xviii

Prefcio

00_redelinux.indd 18

19/01/2009 08:49:24

O Que Est Incluso


Este livro trata tanto de tecnologias antigas quanto modernas. O material antigo inclui administrao de sistema via console serial, rede discada, construo de gateway de Internet, VLANs, vrios mtodos de acesso remoto seguro, roteamento e controle de trfego. Tecnologias modernas incluem construir seu prprio iPBX com o Asterisk, conectividade wireless, desktops grficos remotos cross-platform, instalao de redes viva-voz de novos sistemas, conexo nica para LANs mistas de Linux e Windows e bsicos de IPv6. E h captulos sobre monitoramento, alerta e soluo de problemas.

Quais Distribuies do Linux So Usadas no Livro


H literalmente centenas, seno milhares de distribuies do Linux: distribuies live de todos os tipos de mdias de boot, de CDs de carto coorporativo a pen drives a CDs a DVDs; amplas distribuies de propsitos gerais; pequenas distribuies especializadas para firewalls, roteadores e PCs antigos; distribuies multimdia; distribuies cientficas; distribuies de cluster; distribuies que rodam aplicaes do Windows; e distribuies super seguras. No h maneira de at mesmo comear a tratar de todas elas; felizmente, para autores esgotados, o mundo do Linux pode ser a grosso modo dividido em dois campos: Red Hat Linux e Linux Debian. Ambos so distribuies fundamentais, influenciadoras, que tm gerado a maioria dos derivados e clones. Neste livro, o mundo do Red Hat representado pelo Linux Fedora, a distribuio voltada para a comunidade livre, patrocinada pelo Red Hat. O Fedora gratuito, a distribuio central contm apenas Software Livre, e tem ciclo mais rpido de lanamento que o Red Hat Enterprise Linux (RHEL). O RHEL tem um ciclo de lanamento de 18 meses, designado para ser estvel e previsvel e no tem verso de pacote gratuita, apesar de estar repleto de clones livres. Os clones so construdos a partir dos RHEL SRPMs, com a marcas registradas do Red Hat removidas. Algumas distribuies baseadas em Red Hat incluem o CentOS, White Box Linux, Lineox, White Box Enterprise Linux, Tao Linux e o Pie Box Linux. Adicionalmente, h um nmero de derivados do Red Hat para escolher, como o Mandriva e PcLinuxOS. As receitas para o Fedora devem funcionar para todos esses, apesar de voc poder encontrar algumas diferenas em nomes de arquivos, locais de arquivos e nomes de pacotes. As distribuies baseadas no Debian se multiplicam at mesmo enquanto falamos: Ubuntu, Kubuntu, Edubuntu, Xandros, Mepis, Knoppix e Linspire, para nomear apenas algumas. Enquanto todos esses tm seus prprios aprimoramentos e modificaes, o gerenciamento de pacote com o aptitude ou Synaptic funciona da mesma forma em todos eles. O Novell/SUSE baseado em RPM como o Red Hat, mas sempre foi por seu prprio caminho. O Gentoo e o Slackware ocuparam seus prprios nichos singulares. Nem vou tentar incluir todos esses, ento os usurios dessas distribuies esto sozinhos. Felizmente, cada um desses bem documentado e tem comunidades ativas, teis, e no so to diferentes de seus muitos primos.

Downloads e Feedback
Sem dvida, este livro, apesar dos hericos esforos meu e do fabuloso time da OReilly, contm falhas, erros e omisses. Por favor, envie um e-mail com seu feedback e sugestes para altabooks@altabooks. com.br, para que possamos fazer a segunda edio ainda melhor. Assegure-se de visitar http://www. altabooks.com.br para errata, atualizaes e download dos scripts usados no livro.
Prefcio

xix

00_redelinux.indd 19

19/01/2009 08:49:24

Recursos Grficos
Itlico Usado para nomes de caminhos, nomes de arquivos, nomes de programas, endereos da Internet, como nomes de domnios e URLs e novos termos, onde estiverem definidos. Espaamento constante Usado para entrada de programas e nomes, teclas de teclado em exemplos. Espaamento constante itlico Usado para parmetros substituveis ou elementos opcionais, quando mostrado uma sintaxe de comando. Espaamento Constante Negrito Usado para comandos que devem ser digitados literalmente, e para enfatizar dentro de cdigos de programa e arquivos de configurao. Comandos do Linux/Unix que possam ser digitados por um usurio normal so precedidos de um prompt normal, terminando com um $. Comandos que precisem ser digitados como root so precedidos de um root prompt, terminando com um #. Na vida real, melhor usar o comando sudo sempre que possvel para evitar logar como root. Ambos os tipos de prompts indicam o nome de usurio, o host atual e o diretrio de trabalho atual (por exemplo: root@xena:/var/llibtftpboot #).

Este cone significa uma dica, sugesto ou nota geral.

Este cone indica uma advertncia ou precauo.

Utilizando cdigos exemplificados


Este livro est aqui para ajudar voc a ter seu trabalho feito. Em geral, voc pode usar o cdigo deste livro nos seus programas e documentao. Voc no precisa nos contatar para permisso, a menos que esteja reproduzindo uma poro significante do cdigo. Por exemplo, escrever um programa que use vrios blocos de cdigo deste livro no requer permisso. Vender ou distribuir um CD-ROM de exemplos dos livros OReilly requer permisso. Responder uma questo citando este livro e mencionando exemplo de cdigo no requer permisso. Incorporar uma quantia significante de exemplo de cdigo deste livro na documentao do seu produto requer permisso. Apreciamos, mas no requeremos, crditos. Um crdito geralmente inclui o ttulo, autor, editora e ISBN. Por exemplo: Linux Networking Cookbook, por Carla Schroder. Direitos Autorais 2008 de OReilly Media, Inc., 978-0-596-10248-7.

xx

Prefcio

00_redelinux.indd 20

19/01/2009 08:49:24

Se voc sentir que seu uso de exemplo de cdigo vai alm do uso justo ou da permisso dada acima, sinta-se livre para nos contatar em altabooks@altabooks.com.

Agradecimentos
Escrever um livro como este um esforo de time massivo. Um agradecimento especial vai para o meu editor, Mike Loukides. preciso pacincia implacvel, tato, bom gosto, persistncia e incrvel sortimento de habilidades para orientar um livro como este para a completude. Bom trabalho e obrigado. Tambm agradeo:

James Lopeman Dana Sibera Kristian Kielhofner Ed Sawicki Dana Sibera Gerald Carter Michell Murrain Jamesha Fisher Carol Williams Rudy Zijlstra Maria Blackmore Meredydd Luff Devdas Bhagat Akkana Peck Valorie Henson Jennifer Scalf Sander Marechal Mary Gardiner Conor Daly Alvin Goats Dragan Stanojevi-Nevidljvl

Prefcio

xxi

00_redelinux.indd 21

19/01/2009 08:49:24

00_redelinux.indd 22

19/01/2009 08:49:24