Uso apt/apt-get no Red Hat
Uso apt/apt-get no Red Hat
Colaboração: Cleymone Ribeiro dos Santos <<cleymone (a) las ic unicamp br>>
É provável que a grande maioria de usuários Red Hat já tenha tido problemas de dependências, ao instalar/atualizar/remover um novo pacote em sua distribuição Red Hat. Existe um gerenciador de pacotes, que foi portado das ferramentas apt do Debian para distribuições baseadas em RPM. APT é um sistema gerenciador de pacotes. apt-get é uma ferramenta de linha de comando para manipular pacotes, permitindo instalação, atualização e remoção dos mesmos. As dependências são automaticamente resolvidas, de modo que ao instalar um pacote que precisa de outros, ele baixará todos os pacotes necessários e os instalará.
Passos:
- baixar o pacote apt do site http://apt.freshrpms.net/
- instalá-lo na sua máquina:
rpm -ivh apt-versão-correta-para-minha-distribuição.rpm
- se houver proxy em sua rede, edite o arquivo /etc/apt/apt.conf. Exemplo para http e ftp:
Acquire { Retries "0"; http { proxy "http://LOCAL-PROXY:PORT"; }; ftp { proxy "ftp://LOCAL-PROXY:PORT"; passive "true"; proxy::passive "true"; }; }Substitua os campos LOCAL-PROXY e PORT para valores de seu proxy. - editar o arquivo /etc/apt/sources.list, tire os comentários das linhas correspondentes a sua versão do RedHat.
Pode também adicionar novas linhas relevantes para sua distribuição. O formato de cada entrada neste arquivo é:
tipo uri distribuição componente1 componente2 componente3
Exemplo:
rpm ftp://apt-rpm.tuxfamily.org/apt redhat/7.3/en/i386 os updates extra
rpm-sr ftp://apt-rpm.tuxfamily.org/apt redhat/7.3/en/i386 os updates extra
Esta informação é obtida nos sites que são "APT enabled", ou seja, oferecem pacotes em repositórios apt. Importante: Red Hat não disponibiliza seus pacotes através do utilitário apt.
Procure no http://freshrpms.net/ por outros sites, que ofereçam pacotes em repositórios apt.
- executar o comando "apt-get update"
obs.: em algumas versões precisa executar 2 vezes este comando, pois tem um bug
Este comando serve para atualizar a base de dados particular do apt, sobre quais pacotes estão instalados, quais não estão e quais estão disponíveis para instalação. O programa apt-get usa esta base, para encontrar como instalar pacotes pedidos pelo usuário e pacotes adicionais, que são necessários para o pacote pedido funcionar apropriadamente. Todas as vezes que o arquivo /etc/apt/sources.list for modificado, execute este comando para o APT obter a lista de pacotes do "source" que vc especificou. Este comando criará sua base no diretório /var/state/apt/lists/.
- executar "apt-get upgrade" para atualizar todos os pacotes que são automaticamente atualizáveis
- executar "apt-get install packagename" para instalar/atualizar os pacotes específicos.
- executar "apt-get remove packagename" para remover pacotes específicos.
Porém, isto ainda pode não ser suficiente para vc conseguir instalar o pacote desejado, pois ele pode não estar disponível nos "mirrors apt enabled". Boa sorte!!
Fonte: http://www.dicas-l.com.br/print/20030507.html
Usando o Kismet
Usando o Kismet
Colaboração: Carlos E. Morimoto
O Kismet é uma ferramenta poderosa, que pode ser usado tanto para checar a segurança de sua própria rede wireless, quanto para checar a presença de outras redes próximas e assim descobrir os canais que estão mais congestionados (configurando sua rede para usar um que esteja livre) ou até mesmo invadir redes. O Kismet em sí não impõe restrições ao que você pode fazer. Assim como qualquer outra ferramenta, ele pode ser usado de forma produtiva ou destrutiva, de acordo com a índole de quem usa.
A página do projeto é a: http://www.kismetwireless.net/.
A principal característica do Kismet é que ele é uma ferramenta passiva. Ao ser ativado, ele coloca a placa wireless em modo de monitoramento (rfmon) e passa a escutar todos os sinais que cheguem até sua antena. Mesmo pontos de acesso configurados para não divulgar o ESSID ou com a encriptação ativa são detectados.
Como ele não transmite pacotes, apenas escuta as transmissões, todo o processo é feito sem prejudicar as redes vizinhas e de forma praticamente indetectável. A principal limitação é que, enquanto está em modo de monitoramento, a placa não pode ser usada para outros fins. Para conectar-se a uma rede, você precisa primeiro parar a varredura.
Esta questão da detecção dos pontos de acesso com o ESSID desativado é interessante. Não é possível detectá-los diretamente, pois eles não respondem a pacotes de broadcast (por isso eles não são detectados por programas como o Netstumbler), mas o Kismet é capaz de detectá-los quando um cliente qualquer se associa a eles, pois o ESSID da rede é transmitido de forma não encriptada durante o processo de associação do cliente.
A partir daí, o Kismet passa a capturar todos os pacotes transmitidos. Caso a rede esteja encriptada, é possível descobrir a chave de encriptação usando o aircrack (que veremos a seguir), permitindo tanto escutar as conexões, quanto ingressar na rede.
Como o Kismet é uma das ferramentas mais usadas pelos crackers, é sempre interessante usá-lo para verificar a segurança da sua própria rede. Tente agir como algum vizinho obstinado agiria, capturando os pacotes ao longo de alguns dias. Verifique a distância de onde consegue pegar o sinal de sua rede e quais informações consegue descobrir. Depois, procure meios de reforçar a segurança da rede e anular o ataque.
Por ser uma ferramenta popular, ele está disponível na maioria as distribuições. Algumas, como o Knoppix (a partir da versão 3.7), já o trazem instalado por padrão.
Nas distribuições derivadas do Debian, você pode instalá-lo via apt-get:
# apt-get install kismet
Antes de ser usar, é preciso configurar o arquivo "/etc/kismet/kismet.conf", especificando a placa wireless e o driver usado por ela, substituindo a linha:
source=none,none,addme
Por algo como:
source=madwifi_ag,ath0,atheros
... onde o "madwifi_ag" é o driver usado pela placa (que você pode verificar usando o comando lspci). Na documentação do Kismet o driver é chamado de "capture source", pois é a partir dele que o Kismet obtém os pacotes recebidos.
o "ath0" é a interface (que você vê através do comando ifconfig) e o "atheros" é um apelido para a placa (que você escolhe), com o qual ela será identificada dentro da tela de varredura.
Isto é necessário, pois o Kismet precisa de acesso de baixo nível ao hardware. Isto faz com que a compatibilidade esteja longe de ser perfeita. Diversas placas não funcionam em conjunto com o Kismet, com destaque para as placas que não possuem drivers nativos e precisam ser configurados através do ndiswrapper. Se você pretende usar o Kismet, o ideal é pesquisar antes de comprar a placa. Naturalmente, para que possa ser usada no Kismet, a placa precisa ter sido detectada pelo sistema, com a ativação dos módulos de Kernel necessários. Por isso, prefira sempre usar uma distribuição recente, que traga um conjunto atualizado de drivers. O Kurumin e o Kanotix estão entre os melhores neste caso, pois trazem muitos drivers que não vem pré instalados em muitas distribuições.
Você pode ver uma lista detalhada dos drivers de placas wireless disponíveis e como instalar manualmente cada um deles no meu livro Linux Ferramentas Técnicas.
Veja uma pequena lista dos drivers e placas suportados no Kismet 2006-04-R1:
- acx100: O chipset ACX100 foi utilizado em placas de diversos fabricantes, entre eles a DLink, sendo depois substituído pelo ACX111. O ACX100 original é bem suportado pelo Kismet, o problema é que ele trabalha a 11 megabits, de forma que não é possível testar redes 802.11g.
- admtek: O ADM8211 é um chipset de baixo custo, encontrado em muitas placas baratas. Ele é suportado no Kismet, mas possui alguns problemas. O principal é que ele envia pacotes de broadcast quando em modo monitor, fazendo com que sua varredura seja detectável em toda a área de alcance do sinal. Qualquer administrador esperto vai perceber que você está capturando pacotes.
- bcm43xx: As placas com chipset Broadcom podiam até recentemente ser usadas apenas no ndiswrapper. Recentemente, surgiu um driver nativo (http://bcm43xx.berlios.de) que passou a ser suportado no Kismet. O driver vem incluído por padrão a partir do Kernel 2.6.17, mas a compatibilidade no Kismet ainda está em estágio experimental.
- ipw2100, ipw2200, ipw2915 e ipw3945: Estes são os drivers para as placas Intel, encontrados nos notebooks Intel Centrino. O Kismet suporta toda a turma, mas você precisa indicar o driver correto para a sua placa entre os quatro.
O ipw2000 é o chipset mais antigo, que opera a 11 megabits; o ipw2200 é a segunda versão, que suporta tanto o 8011.b, quanto o 802.11g; o ipw2915 é quase idêntico ao ipw2200, mas suporta também o 802.11a, enquanto o ipw3945 é uma versão atualizada, que é encontrada nos notebooks com processadores Core Solo e Core Duo.
madwifi_a, madwifi_b, madwifi_g, madwifi_ab e madwifi_ag: Estes drivers representam diferentes modos de operação suportados pelo driver madwifi (http://sourceforge.net/projects/madwifi/), usado nas placas com chipset Atheros. Suportam tanto o driver madwifi antigo, quanto o madwifi-ng.
Usando os drivers madwifi_a, madwifi_b ou madwifi_g, a placa captura pacotes apenas dentro do padrão selecionado (o madwifi_a captura apenas pacotes de redes 802.11a, e assim por diante). O madwifi_g é o mais usado, pois captura simultaneamente os pacotes de redes 802.11b e 802.11g. O madwifi_ag, por sua vez, chaveia entre os modos "a" e "g", permitido capturar pacotes de redes que operam em qualquer um dos três padrões, mas num ritmo mais lento, devido ao chaveamento.
rt2400 e rt2500: Estes dois drivers dão suporte às placas com chipset Ralink, outro exemplo de chipset de baixo custo que está se tornando bastante comum. Apesar de não serem exatamente "placas de alta qualidade", as Ralink possuem um bom suporte no Linux, graças em parte aos esforços do próprio fabricante, que abriu as especificações e fornece placas de teste para os desenvolvedores. Isto contrasta com a atitude hostil de alguns fabricantes, como a Broadcom e a Texas (que fabrica os chipsets ACX).
rt8180: Este é o driver que oferece suporte às placas Realtek 8180. Muita gente usa estas placas em conjunto com o ndiswrapper, mas elas possuem um driver nativo, disponível no http://rtl8180-sa2400.sourceforge.net/. Naturalmente, o Kismet só funciona caso seja usado o driver nativo.
prism54g: Este driver dá suporte às placas com o chipset Prism54, encontradas tanto em versão PCI ou PCMCIA, quanto em versão USB. Estas placas são caras e por isso relativamente incomuns no Brasil, mas são muito procuradas entre os grupos que fazem wardriving, pois as placas PCMCIA são geralmente de boa qualidade e quase sempre possuem conectores para antenas externas, um pré-requisito para usar uma antena de alto ganho e assim conseguir detectar redes distantes.
orinoco: Os drivers para as placas com chipset Orinoco (como as antigas Orinoco Gold e Orinoco Silver) precisam de um conjunto de patches para funcionar em conjunto com o Kismet, por isso acabam não sendo placas recomendáveis. Você pode ver detalhes sobre a instalação dos patches no http://www.kismetwireless.net/HOWTO-26_Orinoco_Rfmon.txt.
Depois de definir o driver, a interface e o nome no "/etc/kismet/kismet.conf", você pode abrir o Kismet chamando-o como root:
# kismet
Inicialmente, o Kismet mostra as redes sem uma ordem definida, atualizando a lista conforma vai descobrindo novas informações. Pressione a tecla "s" para abrir o menu de organização, onde você pode definir a forma como a lista é organizada, de acordo com a qualidade do canal, volume de dados capturados, nome, etc. Uma opção comum (dentro do menu sort) é a "c", que organiza a lista baseado no canal usado por cada rede.
Por padrão, o Kismet chaveia entre todos os canais, tentando detectar todas as redes disponíveis. Neste modo, ele captura apenas uma pequena parte do tráfego de cada rede, assim como você só assiste parte de cada programa ao ficar zapiando entre vários canais da TV.
Selecione a rede que quer testar usando as setas e pressione "shift + L" (L maiúsculo) para travá-lo no canal da rede especificada. A partir daí ele passa a concentrar a atenção numa única rede, capturando todos os pacotes transmitidos:
Você pode também ver informações detalhadas sobre cada rede selecionando-a na lista e pressionando enter. Pressione "q" para sair do menu de detalhes e voltar à tela principal.
Outro recurso interessante é que o Kismet avisa sobre "clientes suspeitos", micros que enviam pacotes de conexão para os pontos de acesso, mas nunca se conectam a nenhuma rede, indício de que provavelmente são pessoas fazendo wardriving ou tentando invadir redes. Este é o comportamento de programas como o Netstumbler (do Windows). Micros rodando o Kismet não disparam este alerta, pois fazem o scan de forma passiva:
ALERT: Suspicious client 00:12:F0:99:71:D1 - probing networks but never participating.
O Kismet gera um dump contendo todos os pacotes capturados, que vai por padrão para a pasta "/var/log/kismet/". A idéia é que você possa examinar o tráfego capturado posteriormente usando o Ethereal. O problema é que, ao sniffar uma rede movimentada, o dump pode se transformar rapidamente num arquivo com vários GB, exibindo que você reserve bastante espaço no HD.
Um dos maiores perigos numa rede wireless é que qualquer pessoa pode capturar o tráfego da sua rede e depois examiná-lo calmamente em busca de senhas e outros dados confidenciais transmitidos de forma não encriptada. O uso do WEP ou outro sistema de encriptação minimiza este risco, pois antes de chegar aos dados, é necessário quebrar a encriptação.
Evite usar chaves WEP de 64 bits, pois ele pode ser quebrado via força bruta caso seja possível capturar uma quantidade razoável de pacotes da rede. As chaves de 128 bits são um pouco mais seguras, embora também estejam longe de ser inquebráveis. Em termos se segurança, o WPA está à frente, mas usá-lo traz problemas de compatibilidade com algumas placas e drivers.
Sempre que possível, use o SSH, SSL ou outro sistema de encriptação na hora de acessar outras máquinas da rede ou baixar seus e-mails.
No Guia "Acesso Remoto: SSH, FreeNX e VNC", vemos como é é possível criar um túnel seguro entre seu micro e o gateway da rede, usando o SSH, permitindo assim encriptar todo o tráfego. Ele está disponível no:
Gostou da dica? Venha fazer um curso com o autor:
Curso: Redes e servidores Linux
Com Carlos E. Morimoto
Em São Paulo, de 29/05 a 03/06 (intensivo, com aulas à tarde)
Este é um curso sobre a configuração de servidores Linux. Nele você aprende a configurar cada serviço diretamente nos arquivos de configuração ou utilizando ferramentas genéricas, sem se prender a uma única distribuição. Os exemplos dados durante o curso usam como base o Debian e Fedora, com dicas de peculiaridades do Mandriva, Slackware, Kurumin e Ubuntu.
Este é um curso intensivo, onde você passa menos tempo vendo teoria e opções pouco usadas e mais tempo aprendendo a resolver problemas do dia a dia. O formato das aulas permite que sejam abordados uma grande quantidade de temas numa única semana, oferecendo uma visão global dos recursos disponíveis e onde eles podem ser aplicados. Ao invés de fazer um curso sobre o Squid, outro sobre o Samba, outro sobre o Apache, etc., você aprende muitas coisas de uma única vez, economizando tempo e dinheiro.
Nesta turma do dia 29/05, combinou do curso de redes e o curso para iniciantes serem ministrados na mesma semana: o curso para iniciantes de segunda a sexta, das 8:00 às 11:00, e o curso de redes das 12:30 às 18:00. Fazendo o curso de redes, você tem acesso também às aulas para iniciantes e pode fazer os dois cursos simultaneamente (pagando apenas um), e assim aproveitar para tirar todas as dúvidas.
Veja mais detalhes sobre a programação de cursos, temas abordados, preços e formas de pagamento no:
http://guiadohardware.net/cursos/
Todas as aulas do curso de redes são ministradas pelo próprio Carlos Morimoto, o que garante o nível do curso. Nada de aulas inaugurais e mutretas do gênero :)
Fonte: http://www.dicas-l.com.br/print/20060509.html
Privacidade no SSH
Privacidade no SSH
Colaboração: Fabiano Caixeta Duarte
O ssh é um protocolo seguro para comunicações entre diferentes estações utilizado amplamente para obtenção de console textual remota e para tunelar (túneis criptografados) vários tipos de conexão.
Em 'Como melhorar a segurança no ssh' podemos ver algumas maneiras de melhorar a segurança no uso deste protocolo.
Por outro lado, há que se falar em um outro aspecto pertinente à segurança: a privacidade.
Ao utilizar aplicativos clientes do ssh (ssh, sftp, scp, etc), é armazenado em um arquivo do usuário um par de informações nome/ip e chave pública do servidor ssh acessado. Este arquivo é chamado ~/.ssh/known_hosts, ou seja, reside no diretório HOME do usuário.
Por default, o nome do host (ou seu endereço IP) é armazenado em texto plano, o que caracteriza a possibilidade de quebra de privacidade. Para melhor compreensão, imagine o seguinte contexto:
Um atacante está fazendo um target harvesting, ou seja, uma busca por alvos válidos para ataque de força bruta. Ao invés de atacar aleatóriamente um conjunto de hosts que podem não existir ou não possuir servidor ssh, faz muito mais sentido colher hosts que tenham servidores ssh.
Suponhamos que este atacante conseguiu invadir uma determinada máquina e obteve acesso root. A partir de uma varredura em todos os arquivos known_hosts dos usuários, o atacante conhecerá hosts válidos, tanto na mesma rede como em qualquer outra. Assim, ele poderá direcionar o ataque para estes hosts.
A solução
A partir da versão 4.1 do OpenSSH é possível armazenar um hash do nome de host ao invés de texto plano para garantir privacidade. Para tal, basta setar no arquivo de configuração do cliente ssh, geralmente localizado em /etc/ssh/ssh_config a opção HashKnownHosts da seguinte maneira:
HashKnownHosts yes
Naturalmente este procedimento deve ser feito pelo administrador do sistema. Não é necessário reiniciar o serviço, uma vez que esta alteração afeta apenas o funcionamento dos programas clientes de ssh.
A partir de então, todas as entradas que forem inseridas pelo ssh no arquivo known_hosts conterão o hash do nome/IP do host. As entradas pre-existentes permanecerão em texto plano. Para sanar este 'problema' pode-se converter as entradas a partir do seguinte comando:
$ ssh-keygen -H
Cada usuário deve realizar este procedimento. Naturalmente, por meio de algum script específico, o usuário root pode automatizar a rotina para todos os usuários.
Efeito colateral
Existem alguns raros casos em que você pode precisar excluir uma entrada específica no arquivo known_hosts. Exemplo: o servidor em que você costuma se autenticar foi formatado. Na primeira execução do serviço ssh, é definida uma nova chave. Por default, o cliente ssh vai reclamar da diferença entre a chave pré-existente e a atual. Isto ocorre para alertar você que talvez você esteja se conectando a algum outro host como parte de um ataque de IP/DNS spoofing.
Como não é o caso, você vai precisar excluir a entrada antiga. Mas como fazer se você não tem o hostname em texto plano? Isto pode ser feito de forma muito fácil utilizando novamente o utilitário ssh-keygen da seguinte maneira:
$ ssh-keygen -R <hostname>
Onde hostname é o nome do servidor ssh cuja entrada você quer remover.
Conclusão
A preocupação com segurança é algo quase paranóico. Infelizmente não pode ser diferente, uma vez que os crackers não descansam. Assim, mesmo se tratando de um protocolo/programas voltados à criação de um ambiente seguro, o ssh - servidor e cliente -, precisa estar bem configurado para evitar outros problemas de segurança.
Referências
- man ssh_config
- http://www.openssh.com/txt/release-4.1
Fonte: http://www.dicas-l.com.br/print/20060619.html
Implemente e Configure o seu Linux com IPTABLES
Implemente e Configure o seu Linux com IPTABLES
Colaboração: William da Rocha Lima <<wrochal (a) linuxit com br>>
Revisão 1.2 - 23/06/2003
Nos sabemos que nos dias de hoje é essencial o firewall, em servidores corporativos como servidores de web, e-mail e gateways, devido a demanda de hackers e lammers. Mas sabemos que assim mesmo não basta montar um firewall e por em mente que nunca vai ser invadido, lembra-se de que é primordial verificar os Updates, Advisores, Bug e falhas de sistema. Tenha em mente além de configurar um sistema de firewall, também administratar por Logs e IDS, e que tenha administratar os Logs para verificar possíveis erros e de uma forma fácil e ágil, e IDS para verificar a Dequitação de Intrusos. Quando falamos em sistemas operacional linux como firewall você encontra ferramentas capazes e eficaz para efetuar esta função. E o melhor de tudo como que o Linux é free,você pode pegar o linux na empresa de seu amigo e instalar na sua empresa sem problemas.
Softwares de Firewall para o Linux
O linux por ser um software livre, onde uma comunidade de desenvolvedores contribuem quase que diariamente para seu desenvolvimento e melhorias. Quando se fala em desenvolvimento e melhorias do Kernel se tem um preocupação com firewalls e segurança.
Conheça os Firewalls conforme a versão do kernel
- Ipfwadm - O IP Firewall Administration, ou simplesmente ipfwadmin foi a ferramenta padrão para construção de regras de firewall, para o Kernel anterior à versão 2.2.0. Dizem que o Ipfwadm era extremamente complexo.
- Ipchains - O ipchains foi a solução, ou melhor, a atualização, feita para o kernel 2.2 do ipfwadm. A idéia do ipchains foi ter o poder do ipfwadm, mas com uma simplicidade e facilidade no que diz respeito à criação de regras. Além de prover sua facilidades, é criar uma compatibilidade com o ipfwadm através do utilitário ipfwadm-wrapper.
- Iptables e o Netfilter - A nova geração de ferramentas de firewall para o Kernel 2.4 do Linux. Além de possuir as facilidade do ipchains, e implementar a facilidade do NAT e filtragem de pacotes mais flexíveis que o IPchains. Para saber mais informações do Iptables acessem http://www.netfilter.org/
O que precisamos saber?
Na configuração do Firewall com o iptables, é preciso saber quais são as regras a serem utilizadas para rodar o Firewall:
Regras do Firewall
- INPUT: È utilizada quando o destino final é a própria máquina firewall.
- OUTPUT: Qualquer pacote gerado pela máquina firewall e que deva sair para a rede será tratado pela regra OUTPUT.
- FORWARD: Qualquer pacote que atravessa o firewall, de uma máquina e direcionado à outra, será tratado pela chain FORWARD.
Basicamente o IPTABLES tem as seguintes políticas: - DROP - Nega pacote e não manda um pacote de volta para o emitente.
- ACCEPT - Aceita o pacote
- REJECT - Nega pacote e manda um pacote de volta do tipo host-unreachable (Host Inalcançável)
==Comandos Principais do IPtables==
- -A - Este comando acrescenta uma regra às existentes no sistema, ou seja, permite atualizar regras já existentes na estrutura do firewall.
- -I - Este comando insere uma nova regra dentro das existentes no firewall.
- -D - Este comando exclui uma regra específica no firewall.
- -P - Este comando define a regra padrão do firewall.
- -L - Este comando lista as regras existentes no firewall.
- -F - Este comando ZERA todas as regras criadas no Firewall (o chamado flush).
- -h - Este comando mostrará o help, ajuda de comando.
- -R - Este comando substitui um regra no firewall.
- -C - Este comando basicamente checa as regras.
- -Z - Este comando zera uma regra específica.
- -N - Este comando cria uma nova regra com um nome.
- -X - Este comando exclui uma regra específica por seu nome.
Os parâmetros padrão do iptables são os seguintes:
- -p! (protocolo) - define qual o protocolo TCP/IP deverá ser tratado. São eles: TCP, UDP e ICMP
- -s! (origem)/ -d! (destino) - Define qual o endereço de origem (-S) e de destino (-D) que a regra atuará. Este comando possui dois argumentos: endereço/máscara e porta. Ex.: -S 10.0.0.1/24 80,.
- -i! (interface) - define o nome da interface de rede onde trafegará os pacotes de entrada e saída do firewall. Muito utilizado em mascaramento e técnicas de NAT. Exemplo: -W eth1.
- -j! (ir para) - Serve para redirecionar uma ação desde que as regras sejam similares.
- -f!(fragmento) - Trata datagrama fragmentados.
Os comandos e os parâmetros são exatamente iguais aos do ipchains, sem tirar nem pôr.
Extensões
Novidade do iptables que facilita as regras.
-sport[!] [port:port] -dport[!] [port:port]
Normalmente estas extensões são utilizadas com o comando -m do iptables. Trata-se de um direcionamento de porta(s) origem (-sport), para porta(s) destino (-dport). Pode-se inclusive definir um número padrão de portas para o acesso (port:port). Este comando pode ser utilizado tanto para portas TCP ou UDP.
-mac-source[!] endereço
especifica qual a placa de rede, através de seu endereço MAC, que irá transmitir pacotes através do firewall, limitado pela política do mesmo.
-icmp-type[1] tipo
Especifica quais os tipos de pacotes ICMP pode passar ou não pelo firewall, São eles:
Mensagem Tipo Código Echo-request 8 0 Echo-reply 3 0 Source-quench 4 0 Time-exceed 11 0 Destination-unreachable 3 0 Network-unreachable 3 0 Host-unreachable 3 1 Protocol-unreachable 3 2 Port-unreachable 3 3
Com isto podemos bloquear alguns ataques do tipo ping flood, bloquear ping e etc
[!] -- syn - especifica o uso dos bits ACK e FIN em requisições SYN TCP.
Especificamente, a opção -m state' aceita uma opção adicional--state', que é uma lista de estados de ativação separados por vírgula. (a flag '!' não indica a ativação desses estados). Esses estados são:
NEW Um pacote que cria uma nova conexão.
ESTABLISHED Um pacote que pertence a uma conexão existente (isto é, um pacote de resposta).
RELATED Um pacote que está relacionado com (mas não faz parte de) uma conexão existente, como um ICMP error, ou (com o módulo FTP inserido),um pacote que estabelecido por uma conexão de dados ftp.
INVALID Um pacote que não poderia ser identificado por alguma razão: isto inclui execução fora da memória e erros de ICMP que não correspondam a nenhuma conexão existente. Geralmente estes pacotes devem ser barrados (drop).
Exemplos do Firewall
#iptables -A INPUT -p icmp -j DROP
Esta regra nega todos os pacotes ICMP vindos do servidor, em que se encontra o firewall.
#iptables -D INPUT -p icmp -j DROP
Esta regra exclui a regra criar acima.
#iptables -A INPUT -s 192.168.1.0/24 -j DROP
Esta regra acima faz com que todos os pacotes vindo de qualquer endereço da classe de ip 192.168.1.1 á 192.168.1.255 nega os pacotes.
#iptables -A OUTPUT -p icmp -d ! 192.168.1.0/24 -j ACCEPT
Esta regra acima faz com que todos os pacotes vindo de qualquer endereço da classe de ip 192.168.1.1 á 192.168.1.255 aceita os pacotes.
#echo 1 > /proc/sys/net/ipv4/ip_forward
Habilitando o recurso de IP forwarding
Configurando o Firewall contra ataque
Proteção contra Syn-floods
# iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
Port scanners ocultos
# iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit
1/s -j ACCEPT
Ping da morte
# iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
Proteção Contra IP Spoofing
# iptables -A INPUT -s 10.0.0.0/8 -i Interface da NET -j DROP
# iptables -A INPUT -s 172.16.0.0/16 -i Interface da NET -j DROP
# iptables -A INPUT -s 192.168.0.0/24 -i Interface da NET -j DROP
Obs.: Interface da NET pode ser ppp0, ethX e etc.
Log a portas proibidas e alguns backdoors
Porta FTP
# iptables -A INPUT -p tcp --dport 21 -j LOG --log-prefix "Serviço: FTP"
Porta Wincrash
# iptables -A INPUT -p tcp --dport 5042 -j LOG --log-prefix "Serviço: Wincrash"
Portas BackOrifice
# iptables -A INPUT -p tcp --dport 12345 -j LOG --log-prefix "Serviço: BackOrifice"
# iptables -A INPUT -p tcp --dport 123456 -j LOG --log-prefix "Serviço: BackOrifice"
Redirecionamento de Portas (Usado em DMZ)
Redirecionar Porta SMTP
# iptables -t nat -A PREROUTING -i ethx -p tcp --dport 25 -j DNAT --to 192.168.1.1
Redirecionar Porta POP
# iptables -t nat -A PREROUTING -i ethx -p tcp --dport 110 -j DNAT --to 192.168.1.1
OBS.:Sendo que ethx é sua interface de entrada da WAN.
Bloqueando Kazaa Lite
Para ativar o módulo String match support (EXPERIMENTAL) tem que aplicar o patch e logo depois compilar o kernel.
# iptables -m string --string "X-Kazaa-Username:" -j DROP
# iptables -m string --string "X-Kazaa-Network:" -j DROP
# iptables -m string --string "X-Kazaa-IP:" -j DROP
# iptables -m string --string "X-Kazaa-SupernodeIP:" -j DROP
Bloqueando cmd.exe
Neste caso você tenha atrás do seu firewall linux um servidor de web IIS da microsoft, e deseja evitar que worms com código arbitrários que usam o comando cmd.exe:
Bloqueando em Silêncio
# iptables -I INPUT -j DROP -p tcp -s 0.0.0.0/0 -m string --string "cmd.exe"
Bloqueando e reportando por uma hora
# iptables -I INPUT -j LOG -p tcp -s 0.0.0.0/0 -m string --string "cmd.exe" -m limit --limit 1/hour
Scripts Cases Ruleset 1 Ruleset 2 Ruleset 3 Ruleset 4 Ruleset 5 Ruleset 6
Referência:
- Netfilter - http://www.iptables.org/documentation/pomlist/pom-extra.html#string
- Linux Guru - http://articles.linuxguru.net/view/120
- Securityfocus - http://www.securityfocus.com/infocus/1531
Fonte: http://www.dicas-l.com.br/print/20030705.html
Criando delay pools(PROXY/SQUID)
Criando delay pools(PROXY/SQUID)
Colaboração: Felipe Augusto Batista Reis
Neste tutorial vamos ver como se usa as delay pools. Delay pools é uma opção usada no squid para fazer limite de banda, neste tutorial vamos nos concentrar apenas em delay pools, delay class, delay access e delay parameters. Este tutorial já leva em conta que você já tenha algum conhecimento em squid, sendo porém expansivel também a quem está apredendo a usar o squid.
Este tutorial vamos como exemplo duas delay pools. Seguindo assim uma linha muita usada com delay pools, vamos neste tutorial, usar as delay pools em nossa rede interna e para internet.
Leve em conta que temos duas acl's criadas com os nomes de "extensoes" e "interno". Essas acl's serão usadas em nosso tutorial.
acl extensoes url_regex -i .*
esta acl que criamos está pegando tudo que é relacionado a ponto ou seja, inclusive extensões html, jpeg, jpg, gif, php, png, htm e etc... Que são usadas em paginas de internet. se você quer bloquear tudo menos estas extensões faça assim...
acl extensoes url_regex -i .* !.html !.htm !.php !.jpeg !.jpg !.png !.gif e etc.......
bloqueamos tudo exceto as seguintes extensões. Mas se o seu interesse é bloquear arquivos como mp3, avi, faça o seguinte.
acl extensoes url_regex -i .exe$ .mp3$ .vqf$ .tar.gz$ .gz$ .rpm$ .zip$ .rar$ .avi$ .mpeg$ .mpe$ .mpg$ .ram$ .rm$ .iso$ .raw$ .wav$ .mov$
você também pode criar-las em um arquivo.
acl extensoes url_regex -i "caminho do arquivo"
coloque as extensões dentro deste arquivo(mas apenas uma extensão por linha).
acl interno url_regex -i 192.168.1.0
delay_pools:
Está opção especifica o número de delay pools que você vai possuir, por exemplo, se você possui 2 delay pools, este número deve ser igual a 2, se você tem 3 delay pools, este número deve ser igual a 3, e assim por diante.
delay_pools (número de delay pools)
delay_pools 2 #isto significa que nós possuimos 2 delay's pools.
Como dito acima, o número de delay pools que vamos criar.
delay_class:
Define a classe de cada delay pool. Deve haver exatamente uma delay class para cada delay pool.
delay_class (número da delay pool) (número da classe da delay poll) delay_class 1 2 #isto significa que a delay pool 1 é uma delay class 2 delay_class 2 2 #isto significa que a delay pool 2 é uma delay class 2
Como visto acima, nós temos duas delay pools e duas delay class, e também podemos ver que nossas delay class são todas classe 2. Não esqueça, o primeiro número é sua delay pool, e o segundo é a sua delay class.
delay_access:
Determina em qual delay pool uma requisição será encaixada. A primeira a combinar será utilizada, por isso verifique com cuidado suas acls.
delay_access (número da delay poll) allow|deny nome da acl
delay_access 1 allow extensoes #estamos direcionando nossa delay pool 1(que é uma classe 2) para a acl palavras. delay_access 2 allow interno #fazendo o mesmo que acima, porém para a acl interno(que também é uma classe 2).
delay_parameters:
Define os parâmetros para uma delay pool. Cada delay pool tem um número de alocação de tráfego associado.
delay_parameters (número da delay pool) agregado (delay_class 1) delay_parameters (número da delay pool) agregado individual (delay_class 2) delay_parameters (número da delay pool) agregado network individual (delay_class 3)
Aqui vou mostrar apenas a saída da delay class 3 pois está engloba todas a opções.
delay_parameters 1 -1/-1 24000/24000 1000/1000
vamos ao significado:
-1/-1:
Valor AGREGADO:aqui especificamos quanto toda a banda vai utilizar, no caso -1/-1 significa valor ilimitado, por isso, se você quer limitar sua banda nunca coloque -1/-1.
24000/24000:
Valor NETWORK(REDE):aqui especificamos quanto cada uma de nossas redes irá poder utilizar, no caso algo em torno de 23Kb/s.
1000/1000:
Valor INDIVIDUAL:aqui especificamos quanto cada um de nossos usuários poderá utilizar, no caso menos de um 1K/s.
Cada valor tem duas areás, uma antes da barra e outra depois. Vamos lá.
RESTORE:O antes da barra.
Especifica quantos bits poderão tráfegar por segundo.
MAX:O depois da barra.
Especifica quantos bits poderão trafegar no total.
Delay pools sempre trabalham com bits, não se esqueça.
delay_parameters 1 -1/-1 500/1000 #leia acima para entender. delay_parameters 2 -1/-1 15000/25000 #leia acima para entender.
TUDO FICARIA ASSIM.
acl extensoes url_regex -i .exe$ .mp3$ .vqf$ .tar.gz$ .gz$ .rpm$ .zip$ .rar$ .avi$ .mpeg$ .mpe$ .mpg$ .ram$ .rm$ .iso$ .raw$ .wav$ .mov$ acl interno url_regex -i 192.168.1.0 delay_pools 2 delay_class 1 2 delay_parameters 1 -1/-1 500/1000 delay_access 1 allow extenões delay_class 2 2 delay_parameters 2 -1/-1 15000/25000 delay_access 2 allow interno
flipeicl@hotmail.com flipe@hyperlinux.com.br HyperLinux -- www.hyperlinux.com.br -- consultoria, soluções e suporte em Linux Bhz. MG BRASIL.
Fonte: http://www.dicas-l.com.br/print/20041228.html
Ainda o ssh
Ainda o ssh
Colaboração: Marcos Aguinaldo Forquesato <<guina (a) ccuec unicamp br>>
Este é um documento sobre ssh escrito por Marcos A. Forquesato, que faz parte do curso de segurança de sistemas computacionais também ministrado por ele.
Este curso está disponível na Web em http://www.dicas-l.com.br/Treinamentos/seguranca/index.html.
SSH ( Secure Shell ) é um programa para entrar em outro computador da rede, executar comandos UNIX em uma máquina remota e copiar arquivos de uma máquina para a outra.
As suas principais características são:
- Novos métodos de autenticação: .rhosts combinado com autenticação RSA da máquina e autenticação RSA pura.
- Todas as conexões são criptografadas de forma transparente e automática
- Protege o DISPLAY das sessões ( conexões X11 )
- Pode criptografar outros serviços, por exemplo, ftp, tftp, etc.
- Protege as conexões contra cavalos de tróia, DNS spoofing, routing spoofing, IP spoofing.
- Pode criar um agente de autenticação, criando na workstation local ou laptop uma chave RSA de autenticação que é válida para toda sessão.
- Este programa pretende substituir rlogin, rsh, rcp e a maioria das funções do telnet, provendo comunicações mais seguras (criptografadas) entre duas máquinas.
Ssh tem sintaxe semelhante ao rsh ( ssh <máquina> ou ssh <máquina> [comando] ).
Para fazer a conexão entre máquinas sem fornecer senha, o ssh pode usar três métodos de autenticação : - O primeiro usa os arquivos $HOME/.shosts ( similar ao $HOME/.rhosts ), $HOME/.rhosts,/etc/hosts.equiv e /etc/shosts.equiv ( similar ao /etc/hosts.equiv). Este tipo de conexão não é seguro.
- O segundo método de autenticação combina os arquivos HOME/.shosts, $HOME/.rhosts, /etc/hosts.equiv e /etc/shosts.equiv com a autenticação da máquina. Este método protege a conexão de IP spoofing, DNS spoofing e Routing spoofing.
- Como terceiro método de autenticação, o ssh implementa o protocolo RSA de autenticação, que é baseado em chaves públicas de criptografia. Neste sistema de criptografia, a encriptação e decriptação são feitos usando chaves separadas e não é possivel gerar uma chave de decriptografia a partir de uma chave de encriptografia. Cada usuário deve criar seus pares de chaves RSA ( pública/privada ), através do programa ssh-keygen. A chave privada é armazenada no arquivo $HOME/.ssh/identity e a chave pública no arquivo $HOME/.ssh/identity.pub . Para fazer a conexão deve-se copiar o $HOME/.ssh/identity.pub da máquina origem para $HOME/.ssh/authorized_keys da máquina destino. Nesse tipo de conexão a comunicação é toda criptografada.
Fonte: http://www.dicas-l.com.br/print/19970930.html
Roteamento avançado - Linux - utilizando IPROUTE e IPTABLES - Load Balance
Roteamento avançado - Linux - utilizando IPROUTE e IPTABLES - Load Balance
Colaboração: Fabricio Ferreira - GUZZY
Certo tempo atrás, escrevi um script usando IPROUTE2 e IPTABLES que desenvolvi na ocasião, já que havia a necessidade de utilizar 2 links de Internet distintos. Desta vez, reescrevi com muito mais detalhes mostrando exatamente como funciona cada passo.
Lembrando que, este script foi desenvolvido no SLACKWARE, mas acredito que funcione em qualquer outra distribuição LINUX com Kernel 2.4.x e superiores, com algumas poucas modificações.
Quanto aos links, vamos chamá-los de LINK1 e LINK2...
Imagine que você queira que determinado protocolo use o LINK1 e outro protocolo use o LINK2.
Um exemplo fácil seria dizer que mensagens de E-mail SMTP e POP (portas 110 e 25) utilizam o LINK1, enquanto o tráfego de internet (portas 80, 21, 53, 443...) utiliza o LINK2. Isto permitiria que usuários fizessem downloads pesados sem comprometer o tráfego de mensagens, ou ainda, enviar e receber mensagens de E-mail grandes sem interferir na velocidade dos usuários que navegam na Internet.
Um outro exemplo para quem tem Vlans em suas redes seria dizer que a REDE 192.160.0.X utiliza o Link1, enquanto a REDE 192.170.0.X utiliza o LINK2.
Basicamente, o processo funciona marcando pacotes que entram e saem do FIREWALL onde o script será implementado com o Comando IPTABLES usando Mark, um artifício que faz com que o Firewall monte uma tabela dinâmica de todos os pacotes que passam por ele. Imagine que você tenha um Firewall com 4 Interfaces, assim vamos chamá-las de: ETH0, ETH1, ETH2 e ETH3, onde ETH0 está conectada à sua LAN interna, a ETH1 conectada em uma DMZ, e as interfaces ETH3 e ETH4 conectadas a 2 Links distintos.
Se um pacote entrou pela interface ETH0 e saiu pela interface ETH3, é necessário que ele retorne para o mesmo lugar de onde veio. Eis o motivo de marcar os pacotes; caso contrário, eles se utilizarão do DEFAULT GATEWAY do Firewall, que pode não ser o mesmo que você deseja.
Entendendo isto, podemos seguir adiante com nosso script.
Abaixo descrevo detalhadamente como fazer cada configuração no Script para que você tenha sucesso na implementação.
Entendam que os IP´s aqui utilizados são fictícios, bem como seus Defaut Gateways. Você deverá trocá-los pelos IP´S da sua rede conforme a necessidade!
Eis um exemplo de um script pronto em um Firewall com 3 Interfaces apenas.
A primeira - ETH0, é a interface conectada à rede interna. A Interface ETH1 é a interface ligada ao LINK1, e por último, a interface ETH2, ligada ao LINK2.
Vejamos:
############################################################################## # Nesta parte denominamos variáveis para as interfaces como segue. # Denominamos que o nome LAN seja referente à Interface ETH0 que no nosso # script é a da rede interna. Verifique no seu Firewall qual é a interface # correta. IF_LAN='eth0' # Aqui denominamos as variáveis dos LINKS 1 e 2, e os chamamos de LINK1 e LINK2 # É claro que você poderá chamá-los do que quiser. Exemplo: ADSL1 e ADSL2, # mas não esqueça de alterar as variáveis no restante do script. IF_LINK1='eth1' IF_LINK2='eth2' # Aqui colocamos os Gateways dos Links de Internet. # Geralmente, os Default Gateways dos Links são os IP´S dos roteadores de # Internet. GW_LINK1='200.70.0.1' GW_LINK2='200.80.0.1' # Nesta parte, utilizamos o comando IPTABLES para mascarar os IP s, ou seja, # fazemos um NAT (Network Address Translation) para que os pacotes que venham da # Interface ETH0 com IP s da rede interna, ou mesmo pacotes gerados dentro do # próprio Firewall, possam sair para a Internet com endereços trocados, usando # os IP s das interfaces ligadas aos Links de Internet. # O MASQUERADE ao final do comando faz exatamente isto. # Caso contrário, utilizaria ACCEPT, mas aí os pacotes sairiam para a Internet # com IP s da rede interna e jamais retornariam ao Firewall. iptables -t nat -A POSTROUTING -o $IF_LINK1 -j MASQUERADE iptables -t nat -A POSTROUTING -o $IF_LINK2 -j MASQUERADE # Aqui começamos a marcar os pacotes diferenciando-os pela porta utilizada. # Observe que escolhemos os pacotes com destino às portas 80 (HTTP) 443 (HTTPS) # 25 (SMTP) 110 (POP) # Todo pacote que passar pelo Firewall com estas particularidades receberão # uma marca , uma espécie de carimbo. Pacotes destinados à porta 80 # recebem carimbo de número 2, pacotes com destino à porta 25 # recebem carimbo número 3. # Desta forma, podemos diferenciá-los para que mais à frente no script tenhamos # controle do que saiu/entrou e por onde saiu/entrou. iptables -t mangle -A PREROUTING -i $IF_LAN -p tcp --dport 80 -j MARK --set-mark 2 iptables -t mangle -A PREROUTING -i $IF_LAN -p tcp --dport 443 -j MARK --set-mark 2 iptables -t mangle -A PREROUTING -i $IF_LAN -p tcp --dport 25 -j MARK --set-mark 3 iptables -t mangle -A PREROUTING -i $IF_LAN -p tcp --dport 110 -j MARK --set-mark 3 # A diferença entre o PREROUTING e o OUTPUT é que, PREROUTING abrange os # pacotes que foram originados fora do FIREWALL, por exemplo Interface ETH0 # ($IF_LAN), enquanto OUTPUT são os pacotes originados no Firewall, ou seja, na # própria console. iptables -t mangle -A OUTPUT -p tcp --dport 80 -j MARK --set-mark 2 iptables -t mangle -A OUTPUT -p tcp --dport 443 -j MARK --set-mark 2 iptables -t mangle -A OUTPUT -p tcp --dport 25 -j MARK --set-mark 3 iptables -t mangle -A OUTPUT -p tcp --dport 110 -j MARK --set-mark 3 # Aqui montamos as tabelas dinâmicas a partir das marcas (carimbos) que fizemos # lá em cima no nosso script. # Pacotes que foram marcados com 2 vão para a tabela table 20 e os marcados # com 3, vão para a tabela table 21 , com a mesma prioridade. Perceba o PRIO 20 # após os comandos. ip rule add fwmark 2 table 20 prio 20 ip rule add fwmark 3 table 21 prio 20 # se quisermos condicionar esta marcação de outra forma, podemos utilizar o # comando das seguintes formas: # Este condiciona que todos os pacotes que vierem da rede 192.160.0.0 vão para # a tabela 20. # O comando está comentado. Caso queira utilizá-lo, apenas retire o sinal de "#" # da frente. # ip rule add from 192.160.0.0/24 table 20 # Este outro condiciona os pacotes da rede 192.170.0.0 a irem para a tabela 21 # O comando está comentado. Caso queira utilizá-lo, apenas retire o sinal de # "#" da frente do comando. # ip rule add from 192.170.0.0/24 table 21 # Agora sim daremos rumo aos pacotes que foram marcados e cadastrados na tabela # dinâmica. # Veja que os pacotes que foram enviados para a tabela 20 têm como DEFAULT # GATEWAY o LINK1. Sendo assim, os pacotes serão enviados para o LINK1 na # Interface ETH1 com o IP 200.70.0.1. # Já os pacotes da tabela 21 serão enviados para o LINK2 na Interface ETH1, com # o IP 200.80.0.1 ip route add default via $GW_LINK1 dev $IF_LINK1 table 20 ip route add default via $GW_LINK2 dev $IF_LINK2 table 21 # Este último comando limpa a tabela, caso ela já tenha sido utilizada # anteriormente, ou apenas para termos certeza de que quando você resetar as # regras todas, o Firewall não guarde nenhum tipo de informação na # memória (cache). Daí o nome FLUSH CACHE. ip route flush cache
Você pode utilizar parte do script, se necessário. Por exemplo, se quiser apenas rotear pacotes pela origem, utilize:
ip rule add from 192.160.0.0/24 table 20
ou
ip rule add from 192.160.0.0/24 table 21
Conforme o Link que deseja utilizar. Onde 192.160.0.0/24 é a origem. Neste exemplo, a rede em questão tem a máscara 255.255.255.0 (/24)
Desta forma, não há necessidade de marcar pacotes e você poderá deletar as linhas do script.
Fabrício Ferreira GUZZY Especialista em Segurança Digital MCP Microsoft Certified Professional Linux Specialist
Fonte: http://www.dicas-l.com.br/print/20070327.html
Política Starone
Política Starone
Eu recebi dezenas de mensagens comentando a política da StarOne e sua proibição de uso de Linux. Estou postando aqui as mensagens que me foram enviadas pelo Fernando Roxo e Eduardo Maçan, visto serem representativas das opiniões de todos que me escreveram e por serem muito bem fundamentadas.
Não deixem de ler :-)
From: Fernando M. Roxo da Motta <<roxo (a) conectiva com br> To: Rubens Queiroz de Almeida <<queiroz (a) ccuec unicamp br> Subject: Re: [Dicas-L] Absurdo: Resposta StarOne
Queiroz,
Se o email do Carlos Eduardo Silvino Moreira tivesse sido publicado eu estaria incluindo-o nesta "consulta", mas talvez se tivesse sido publicado ele estaria sendo inundado, como você deve estar sendo, por respostas com este mesmo conteúdo.
Pelo que entendi da explicação abaixo o problema se resume ao uso de um proxy local. Será que o Carlos Eduardo nunca ouviu falar do Squid ? Acho pouco provável, afinal este é (possivelmente) o servidor proxy mais usado no mundo, logo sendo ele um profissional da área deve ter ouvido falar nele.
Entrei no site do FreshMeat ( http://freshmeat.net ) e procurei por "proxy server" e achei uma categoria com este nome contendo 93 (isto !! Noventa e três ) projetos :
http://freshmeat.net/browse/907/?topic_id=907
Não procurei, mas tenho a convicção de que haverá pelo menos um destes projetos capaz de operar nas três plataformas citadas, além de outras não citadas. Se este for o caso, me parece que *poderia* ser bastante interessante eles tentarem conhecer algum(ns) deste(s) projeto(s), afinal poderia economizar algum investimento no desenvolvimento de uma solução proprietária ao passar a usar um Software Livre, além de passar a usar uma solução multiplataforma, o que por sua vez expandiria o mercado atendido.
Ou será que há algo além do "proxy server" no produto deles ?
Eu acho bastante razoável a explicação fornecida pelo Carlos Eduardo com relação à necessidade do uso de um "proxy server", considerando os custos envolvidos em um enlace por satélite, tanto finaceiros quanto de latências. Eu acho até razoável que eles se sintam mais confortáveis com o uso de um servidor próprio. Mas se a única necessidade é ter um "proxy server' instalado, a forma como é colocada esta exigência me parece no mínimo equivocada. Porque em lugar de dizer qual deve ser o sistema operacional conectado eles não especificam a necessidade de ter um proxy server instalado ? Acredito que seria muito mais simples e menos desgastante para a imagem pública da empresa.
Eu até entenderia se eles estabelecessem esta necessidade e se eximissem de suportar qualquer outra plataforma, afinal vários fornecedores de conexão rápida à Internet o fazem, mas não tinha tido ainda notícia de nenhum que proibisse outros sistemas. Normalmente a atitude é dizer : "não damos suporte, você terá que se responsabilizar por configurar a sua máquina". No caso deles acredito que se poderia até fazer algo do gênero. Aliás, é muito comum estas empresas fornecedoras de conexões rápidas terceirizarem o serviço de instalação e configuração, o que eles poderiam fazer com empresas que instalassem um servidor Proxy local no processo de configuração destes outros sistemas operacionais.
Conforme eu disse acima, a menos que exista algo além do "proxy server" no produto deles, a menos que exista a firme decisão da StarOne de abidicar de uma parte do mercado por qualquer razão, continuo em dúvida com relação à razão da forma como foi imposta a restrição e muito mais com relação às explicações.
Eu poderia até pensar em me tornar cliente deles, mas minha única condição seria poder usar o Linux como sistema operacional. Como eles decidiram desistir desta parcela do mercado, justamente em respeito à decisão deles eu também desisto deste objetivo e vou poupá-los de qualquer tentativa neste sentido.
Eduardo Maçan <<macan (a) colband com br>>
Caro Carlos, obrigado por responder à comunidade. Como parte desta comunidade, eu gostaria de sugerir-lhe um modo simples de tornar clara a situação quanto ao acesso através de software livre aos serviços da StarOne.
Dizer que "Macintosh e Linux(sic)" são "proibidos" dá a entender que o serviço até funciona sobre estes sistemas, mas vocês não os desejam acessando seus serviços. Alguns outros representantes da comunidade ao ficarem sabendo da situação chegaram a consultar advogados sobre a legalidade deste tipo de exclusão, segundo a interpretação acima. Ao que parece essa situação que é sugerida chegaria a ferir o código de defesa do consumidor, eu não sou um advogado, não posso afirmar isso, mas essa hipótese chegou a ser levantada.
Sugiro que ao invés de dizer que os sistemas são proibidos, a frase seja substituida por "o serviço não é suportado pelos sistemas GNU/Linux e Macintosh por exigir software especial, disponível atualmente apenas para windows". Isso dá a medida exata da situação, não ofende os usuários (e potenciais clientes) de seu serviço e dá margem aos usuários de se manifestarem a favor de que se crie o suporte para essas plataformas.
Eventualmente a demanda pode crescer e vocês poderão perder clientes apenas porque vocês mascararam a real demanda "proibindo" o uso destes sistemas, tapando os ouvidos e os olhos às solicitações de seus potenciais clientes.
Um grande abraço
Eduardo Maçan Desenvolvedor Debian GNU/Linux <macan (a) debian org>
Fonte: http://www.dicas-l.com.br/print/20020925.html
A Reconstrução da Torre de Babel
A Reconstrução da Torre de Babel
Colaboração: Rubens Queiroz de Almeida
A mensagem de hoje circulou originalmente na revista de Informação e Tecnologia do Centro de Computação da Unicamp. A mensagem aborda a questão do aprendizado da língua inglesa com fins de leitura e fornece algumas dicas muito boas e mostra que o inglês não é tão difícil de se dominar como muitos pensam.
A mensagem é um tanto longa, mas se você precisa da língua inglesa para desempenhar a sua profissão, garanto-lhe que vai valer a pena.
O documento original encontra-se em http://www.revista.unicamp.br/navegacao/index4.html
Enfim, se o assunto lhe interessa, boa leitura!
Diz a Bíblia que muitos anos atrás todos os habitantes da Terra se uniram para construir uma torre que chegasse até o céu, para tornar seu nome célebre e impedir que fossem espalhados pelo mundo. Para punir os homens por sua ambição demasiada, Deus confundiu sua linguagem e depois os dispersou pelo mundo.
Ainda hoje os povos da Terra falam uma imensidão de línguas diferentes. Na Internet entretanto, apesar dos muitos povos que autilizam, existe um meio de comunicação comum. Da mesma forma que os computadores se comunicam independentemente de cor e raça, ou melhor, de fabricante e protocolo de comunicação, também os internautas possuem uma linguagem comum: a língua inglesa. Será a Internet uma nova Torre de Babel, construída para reunificar eletronicamente os habitantes deste lindo mundo azul?
É claro que nem todos que utilizam a Internet compreendem a língua inglesa. Porém mais de 80% dos documentos e das comunicações feitas através da Internet encontram-se em inglês. Apenas 0,7 % do oceano de informação que é a Internet está em português. É perfeitamente possível usar a Internet e se divertir muito navegando apenas por sites escritos em português. Fazer isto entretanto é o equivalente a ir à praia, não entrar na água e ficar se molhando com um baldinho de água que alguém encher para você. O que fazer? Aprender inglês é difícil e demora muitos anos. Como então adquirir o domínio desta ferramenta tão essencial à utilização plena da Internet? Realmente, para se ler, falar, escrever e ouvir com fluência a língua inglesa são necessários de seis a oito anos de estudo constante. Para que aprender tanta coisa se o mais importante é apenas ler? É muito mais fácil dominar um dos aspectos de um idioma (leitura) do que todos os quatro simultaneamente (ler, ouvir, falar e escrever). A Internet possui muito conteúdo interativo, onde a capacidade de se falar e escrever bem a língua inglesa certamente é uma grande vantagem, mas o mais importante certamente é saber ler. Ler para utilizar a informação existente na Internet para aprender, resolver problemas pessoais ou profissionais, se divertir, enfim, para uma infinidade de propósitos.
Como aprender a ler? É raro encontrar um curso de inglês onde se ensine o aluno apenas a ler. Só vendem o pacote completo, o que é totalmente insensato. Se precisamos investir vários anos para dominar o idioma em todos os seus aspectos, aprender a ler certamente demora muito menos. Em apenas quatro meses é possível obter uma compreensão razoável do idioma que nos permite começar a compreender textos em inglês.
Mas porque a leitura é mais fácil de se dominar? A própria Internet nos dá a resposta. Em um estudo realizado em 1997, realizamos um trabalho para determinar as palavras mais comuns da língua inglesa e seu percentual de ocorrência. Para este estudo utilizamos os livros online do Projeto Gutemberg. Este projeto, integrado por voluntários, tem por objetivo digitalizar obras de literatura cujos direitos autorais tenham se expirado. Nos Estados Unidos uma obra é colocada no domínio público 60 anos após a morte do autor. Obras de autores como Jane Austen, Conan Doyle, Edgar Rice Burroughs, e muitos outros estão disponíveis gratuitamente na Internet. De posse destes livros, 1600 ao todo na época da pesquisa, fizemos então nossos cálculos. Os 1600 livros combinados geraram um arquivo de 680 MB contendo aproximadamente sete milhões de palavras. Os resultados foram bastante surpreendentes. As 250 palavras mais comuns compõem cerca de 60% de qualquer texto. Em outras palavras, se você conhece as 250 palavras mais comuns, 60% de qualquer texto em inglês é composto de palavras familiares. Para facilitar ainda mais a nossa tarefa os cognatos, que são as palavras parecidas em ambos os idiomas (possible e possível, por exemplo), totalizam entre 20 e 25% do total das palavras. Aí já temos então 80 a 85% do problema de vocabulário resolvido. Se subirmos o número de palavras mais comuns a 1.000, chegamos a 70%. Somando a este valor os cognatos chegamos a valores entre 90 a 95% de um texto.
É claro que 90 ou 95% ainda não chega a 100%. Como fazer com o restante das palavras? Mais uma vez, usamos nossa intuição (lembra-se que nossa intuição está correta em 99,999% das vezes?). Pensemos em nosso texto como um enigma a ser desvendado. Possuímos alguns elementos familiares, as palavras que conhecemos, e outros que nos são desconhecidos. Devemos deduzir, por meio de nossa intuição, de nossos conhecimentos anteriores, o que as palavras desconhecidas podem significar. Não precisamos nos preocupar com todas as palavras, apenas com aquelas que desempenhem um papel importante no texto. Quais são elas? Se uma palavra aparece com relativa frequência em um texto, ela certamente desempenha um papel importante na compreensão do todo. Se uma palavra aparece apenas uma vez, muito provavelmente não precisaremos nos preocupar com ela.
O maior problema é que tal enfoque é encarado de forma suspeita pela maioria das pessoas. Como é possível, ignorar uma palavra desconhecida e continuar lendo como se nada houvesse acontecido? O que estamos propondo não é nada absurdo. Qual foi a última vez em que consultou um dicionário? Toda vez que encontramos uma palavra desconhecida vamos em busca do dicionário? Muito provavelmente não. O que acontece é que, como a nossa familiaridade com o português é grande, na hipótese de depararmo-nos com uma palavra desconhecida, o seu sentido, dado o contexto que a cerca, será facilmente deduzido. Isto tudo praticamente sem mesmo nos darmos conta do ocorrido. A não ser que nos proponhamos a tarefa de parar a cada vez que encontrarmos uma palavra desconhecida, a nossa leitura se dá com frequência sem interrupções. As palavras desconhecidas são intuídas, quase que subconscientemente, e passam a integrar o nosso vocabulário. Considerando-se que o vocabulário de um adulto consiste de aproximadamente 50.000 palavras, é ridículo imaginar que tal conhecimento tenha sido adquirido através de 50.000 visitas ao dicionário. Este vocabulário foi adquirido, em um processo iniciado em nossa infância, de forma contínua e através da observação do nosso ambiente, observando outras pessoas falarem, prestando atenção nas palavras utilizadas em determinadas situações e também através da leitura.
A nossa estratégia para o domínio da língua inglesa para leitura é exatamente aquela utilizada há milhares de anos, com excelentes resultados, pela raça humana. Aprendizado natural, seguindo nossos instintos e pela interação com o ambiente que nos cerca.
Como vimos, o domínio das palavras mais frequentes da língua inglesa, pode nos ajudar a dar um impulso substancial em nosso aprendizado. Nesta listagem as palavras não estão organizadas alfabeticamente, mesmo porque não é nosso objetivo reproduzir aqui um dicionário. Também não incluímos todos os significados possíveis das palavras apresentadas. Todas as palavras são apresentadas em contexto, em exemplos de utilização. Não fornecemos a definição da palavra. Para cada palavra são listados em média três exemplos de utilização, com a respectiva tradução.
É muito importante ressaltar que estas palavras não devem ser memorizadas de forma alguma. O ser humano não funciona de forma semelhante ao computador, onde as informações podem ser armazenadas de qualquer forma, e ainda assim estão disponíveis em milésimos de segundos quando necessitamos. O ser humano, para reter alguma informação, precisa situá-la dentro de um referencial de conhecimentos. A informação nova precisa se integrar à nossa visão do mundo, à nossa experiência prévia. Apenas desta forma podemos esperar que o conhecimento adquirido seja duradouro. A maioria de nós certamente já vivenciou situações em que dados memorizados desapareceram de nossa memória quando não mais necessários. Ao contrário, tudo que aprendemos ativamente, permanece presente em nossa memória de forma vívida por muitos e muitos anos.
Embora esteja sendo fornecida uma lista de palavras, não adote de forma alguma o procedimento padrão de memorização, que é a repetição intensiva dos itens a serem memorizados. É certo que cada um de nós possui estratégias distintas para lidar com o aprendizado, mas eu gostaria de sugerir uma forma de estudo que certamente funciona.
Primeiramente, não tenha pressa. Não memorize, procure entender os exemplos. Para cada palavra apresentada, leia os exemplos e suas respectivas traduções. Não se preocupe em reter na memória o formato exato das frases e nem de sua tradução. O objetivo é apenas compreender o significado da palavra apresentada e apenas isto. Uma vez compreendido este significado o objetivo foi alcançado.
Em segundo lugar, procure ler apenas enquanto estiver interessado. Não adianta nada ler todas as palavras de uma vez e esquecer tudo dez minutos depois. Se nos forçarmos a executar uma atividade monótona por muito tempo, depois de alguns momentos a nossa atenção se dispersa e nada do que lemos é aproveitado. Eu sugiro a leitura de dez palavras diariamente. Caso você ache que 10 palavras diárias é muito, não tem importância, este número é sua decisão. Se quiser ler apenas uma palavra, o efeito é o mesmo. Irá demorar um pouco mais, mas chegar ao final é o que importa. É só não esquecer, você deve LER as palavras e NUNCA tentar memorizar as palavras e os exemplos.
E finalmente, faça revisão. No primeiro dia leia e entenda dez palavras (ou quantas julgar conveniente). No segundo dia leia mais dez palavras e faça a revisão das dez palavras aprendidas no dia anterior. No terceiro dia, aprenda mais dez palavras e revise as vinte palavras aprendidas nos dias anteriores. E assim por diante até o último dia, onde aprenderá as últimas dez palavras e revisará as 240 palavras anteriores. Muito importante, por revisão não quero dizer que se deve fazer a leitura de todas as palavras e exemplos anteriores. As palavras mais frequentes estão grafadas em tipo diferente e em negrito, para que possamos localizá-las facilmente na página. Apenas examine as palavras anteriores em sua revisão. Caso não se recorde de seu significado, então, e apenas então, leia os exemplos. A revisão é extremamente importante. Nós realmente aprendemos quando revisamos conceitos aos quais já fomos expostos. Procedendo desta forma, tenha certeza de que tudo o que aprendeu será absorvido de forma permanente, constituindo a base fundamental de tudo que irá aprender em seus estudos da língua inglesa.
Caso a sua motivação seja realmente alta e você queira reler todos os exemplos já estudados, vá em frente. Como você pode notar, os exemplos empregam um vocabulário bastante rico. A leitura mais frequente dos exemplos fará com que ao final do estudo o seu vocabulário tenha se enriquecido muito além das 750 palavras básicas.
Outro ponto importante é a questão do estudo da gramática. A gramática, ou o estudo da estrutura da língua, deve ser apenas para ajudar o aluno a identificar as construções verbais. Não é necessária, para fins de aprendizado da leitura, a memorização de estruturas gramaticais. Como já afirmado, o nosso aprendizado se dá de forma natural. Da mesma forma que uma criança não tem aulas de gramática para aprender sua língua materna, nós também não devemos nos preocupar com este aspecto em nosso estudo. A leitura dos exemplos das palavras mais comuns irá lançar os fundamentos iniciais do conhecimento da estrutura da língua inglesa.
Resta agora esclarecer um ponto, que é a desculpa favorita de todos nós nos dias de hoje: a falta de tempo. Tempo certamente é fácil de se encontrar para fazer aquilo que nos dá prazer. Para resolver o problema de tempo para este estudo, pense nesta atividade como algo prazeiroso e que lhe trará benefícios enormes, tanto no campo pessoal como profissional. E além do mais, o aprendizado e a revisão das palavras pode ser feito diariamente em não mais de quinze minutos. Se levarmos em conta que os intervalos comerciais em programas de televisão geralmente duram entre quatro a cinco minutos, todo o tempo necessário para este estudo pode ser encaixado nos intervalos de sua novela favorita, certo?
Então, mãos a obra. Depois que você conhecer as 250 palavras mais comuns da língua inglesa você poderá verificar como o aprendizado da leitura da língua inglesa se tornam muito mais fácil. Nesta lista foram incluídas 750 palavras. Faça um esforço e tente conhecer a todas elas. A sua tarefa vai ficar ainda mais fácil.
Nos anos de 1996 e 1997 a Diretoria de Recursos Humanos da UNICAMP promoveu um programa de capacitação que incluía um programa de treinamento em inglês instrumental para seus funcionários usando a metodologia descrita nos parágrafos anteriores. Nestes dois anos passaram pelo programa de inglês instrumental aproximadamente 1.000 funcionários. Conseguiu-se atender um número tão grande de pessoas justamente porque o aprendizado da língua inglesa para leitura é consideravelmente mais fácil. Além desta facilidade é possível se ministrar o curso em salas maiores, com até cem alunos, o que é impensável em um curso tradicional. Em cursos normais de inglês cada aluno deve ter atenção especial do professor como pré-requisito indispensável ao aprendizado.
Como produto deste treinamento foram criados vários materiais didáticos, um dos quais é justamente um pequeno livro, já citado, contendo as 750 palavras mais comuns da língua inglesa. O significado de cada palavra é ilustrado com três exemplos em média, onde a palavra é usada em contextos diferentes. Este pequeno manual está disponível para download na Internet. Além deste manual, existem também outros documentos que descrevem em detalhes como foi realizado o cálculo que determinou estas palavras mais comuns (ver referências).
Além do aprendizado das palavras mais comuns, o interessado em aprender o inglês para leitura, deve procurar intensificar o seu contato diário com a língua inglesa. Para isso a Internet pode novamente vir em nosso auxílio. Basta procurar nela pelo que nos interessa. Na Internet existe informação de todos os tipos e para todos os gostos. Basta saber e querer procurar.
No curso de inglês instrumental ministrado na Unicamp, para suplementar o ensino em sala de aula e para manter o aluno em contato diário com a língua inglesa, foi criada uma lista eletrônica chamada EFR (English for Reading). Nesta lista é veiculada diariamente uma história, preferencialmente engraçada (afinal, quem não gosta de uma boa piada?) ou uma citação. As histórias são em inglês e as palavras mais incomuns são comentadas. Desta forma os alunos aprendem todos os dias duas ou mais palavras novas. Todos os dias. Em um ano este pequeno esforço diário pode vir a fazer uma diferença. O curso acabou em 1997 mas a lista continua enviando suas mensagens. Esta lista é hoje aberta a todos os internautas e conta com vários participantes externos além dos participantes do curso ministrado na Unicamp. Todas as mensagens já veiculadas na lista EFR estão arquivadas na Web no endereço http://www.dicas-l.com.br , item "English for Reading".
O objetivo primordial do curso de inglês instrumental era demonstrar que se é possível aprender inglês para leitura facilmente e despertar o gosto pela leitura. Quanto mais se ler em inglês mais se aprende o idioma, o que não é novidade nenhuma. Como vivemos no Brasil, país de língua portuguesa, as nossas necessidades de utilizar outra habilidade que não a leitura em inglês são bastante esporádicas. Mas não precisamos parar por aí. A leitura serve também para desenvolver as outras habilidades necessárias ao domínio da língua inglesa: a fala, a escrita e a compreensão da língua falada. O principal é que em um período de tempo bastante curto já estaremos habilitados a navegar pela Internet inteira e não apenas pela pequena porção representada pela língua portuguesa.
Finalmente, queria lembrar a todos que aprender o inglês é bastante fácil. Basta deixar de lado os preconceitos e traumas que temos com a língua inglesa e realmente acreditarmos em nossa capacidade de aprender. Não leva a nada guardar rancores de tentativas frustradas de aprendizado ocorridas no passado. O domínio da língua inglesa é hoje o nosso passaporte para um mundo de informações que podem nos ser úteis tanto na esfera pessoal quanto profissional. Se você não domina a língua inglesa o momento certo para começar é hoje. Consulte as referências deste artigo, estude com calma a lista das palavras mais comuns e assine a lista EFR. Você vai ver que sem fazer muita força em, pouco você estará se locomovendo com desenvoltura cada vez maior pela Torre de Babel reconstruída que é a Internet. Depois me escreva contando os resultados.
Referências:
Global Internet Statistics (by Language) http://www.euromktg.com/globstats/
Projeto Gutenberg http://www.promo.net/pg/
Dicas-L http://www.dicas-l.com.br
Palavras mais Comuns da Língua Inglesa http://www.dicas-l.com.br/dicas-l/971002.html Este documento descreve os procedimentos utilizados para se determinar as 1000 palavras mais comuns da língua inglesa e faz uma apresentação dos resultados obtidos. Neste documento as palavras mais comuns são listadas juntamente com seu percentual de ocorrência.
As 750 palavras mais comuns da Língua Inglesa http://www.dicas-l.com.br/dict.pdf Este documento, no formato PDF, contêm as 750 palavras mais comuns da língua inglesa com exemplos de utilização. Para ler e imprimir arquivos no formato PDF é necessário instalar em seu computador o programa Adobe Acrobat Reader, que pode ser encontrado no endereço http://www.adobe.com
As 1000 Palavras Mais Comuns da Língua Inglesa http://www.dicas-l.com.br/dicas-l/dicas-l/971003.html Este artigo lista as 1000 palavras mais comuns da língua inglesa e seu percentual de ocorrência.
Notas:
1. A comparação da Torre de Babel com a Internet eu encontrei em um artigo escrito por Luiz de Rezende Puech que se encontra em http://www.webmark.com.br/framese.html . Esta analogia, bastante criativa, nunca mais me saiu da cabeça e aproveitei este artigo para abordar o assunto a partir de uma ótica diferente.
2. A história da Torre de Babel encontra-se na Bíblia, no livro de Genesis, capítulo 11. Reproduzo a seguir alguns dos versículos da história, tal como se encontra na Bíblia.
(Genesis 11:6) e o SENHOR disse: Eis que o povo é um, e todos têm a mesma linguagem. Isto é apenas o começo; agora não haverá restrição para tudo que intentam fazer.
(Genesis 11:7) Vinde, desçamos e confundamos ali a sua linguagem, para que um não entenda a linguagem de outro. (Genesis 11:8) Destarte, o SENHOR os dispersou dali pela superfície da terra; e cessaram de edificar a cidade. (Genesis 11:9) Chamou-se-lhe, por isso, o nome de Babel, porque ali confundiu o SENHOR a linguagem de toda a terra e dali o SENHOR os dispersou por toda a superfície dela.
3. Para assinar a lista EFR (English for Reading) basta enviar uma mensagem para o endereço <efr-subscribe (a) onelist com> .Não é necessário digitar nada na mensagem, nem no "Subject:" nem no corpo.
Fonte: http://www.dicas-l.com.br/print/19991109.html
Livro de PHP escrito a mil mãos
Livro de PHP escrito a mil mãos
Colaboração: Ribamar FS
Gostaria de juntar em um único livro o mais livre e aberto possível, tudo que conheço sobre PHP e áreas auxiliares: HTML, CSS, JavaScript, AJAX, Flash, MySQL, PostgreSQL, Geradores, CMS, Frameworks, etc.
Fico imaginando se muitos bons programadores de lingua portuguesa (num primeiro instante) se juntassem para escrever este livro. Já pensou? Eu gostaria muito de ler este livro. O melhor ambiente para escrever esse livro não é através de uma editora convencional mas sim daquela que já conseguiu em pouco tempo criar a maior enciclopédia do planeta, a Wikipedia. A Wikipedia cresceu e hoje conta com vários outros projetos auxiliares. Um deles é o Wikibooks. Para não ficar somente sonhando eu iniciei um projeto no Wikibooks e já inseri muito conteúdo. O título do livro é o "Aplicativos em PHP" e ele faz parte da Biblioteca do Wikibooks em:
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP
Atualmente trabalho constantemente com este livro aberto e sempre que descubro uma dica, tenho contato com algum bom tutorial ou descubro algo no meu dia-a-dia eu acrescento no livro. Quero fazer dele minha grande fonte de consulta sobre PHP e conhecimentos auxiliares.
Venha colaborar e vamos fazer uma grande e útil fonte de consulta para todos?
Veja o índice atual (adicione itens de seu conhecimento que não constem aqui):
1. Introdução 1. História 2. Características e Recursos 3. A quem se destina este livro 2. InteligênciaEmocional 3. Instalação e configurações do ambiente 1. Via Xampp 2. Individualmente 4. Editores e IDEs para PHP, CSS, JavaScript e HTML 1. Eclipse com PHPEclipse, Aptana e outros plugins 2. PHPDesigner 3. Kate 4. Dreamweaver 5. Zend Studio 6. VS.PHP 7. Delphi for PHP 5. Referências 1. Windows 2. Linux 3. HTML 4. JavaScript 5. CSS 6. PHP 7. E-books free 8. Cursos na área 6. Administração de SGBDs 1. MySQL 2. PostgreSQL 3. SQLite 7. Geradores de Aplicativos 1. phpCodeGenie (com MySQL) 2. SQLMaestro (com MySQL, Oracle, MS SQL Server, PostgreSQL, SQLite, Firebird e MaxDB) 3. phpMyEdit 4. DadaBik 5. PHPLibDev 6. Web Form Generator 8. CMSs (Gerenciadores de Conteúdo) 1. Joomla (Portais) 2. Mambo (Portais) 3. Drupal (Portais) 4. Xoops (Portais) 5. MediaWiki (wikis) 6. WordPress (blogs) 7. eGroupWare (colaboração) 8. Moodle (eLearning) 9. FrameWorks 1. P4A 2. Zend 3. Seagull 4. CodeIgniter 5. QCodo 6. Zephyr-php 7. Symfony 8. phpframework 10. Abstrações de Bancos de Dados 1. AdoDB 2. PEAR/MDB2 11. Trabalhando em PHP com 1. Formulários 2. URLs 3. Funções 4. Constantes mágicas e super globais 5. Session 6. Arquivos e Diretórios 7. Path 8. Includes 9. Formatação da saída 10. Imagens e Gráficos 11. Números 12. Strings 13. Permissões de arquivos e diretórios 14. Validação de Dados 15. PostgreSQL 16. MySQL 17. Classes e Objetos - PHPOO 18. Arrays 19. XML 12. Intgração do PHP com SGBDs 1. MySQL 2. PostgreSQL 3. SQLite 13. Recursos Extras 1. Controle de Estoque 2. Loja Virtual 3. Código de Barras 4. Boleto bancário 5. PHP-GTK 6. Contadores de visita 7. Livros de visita 8. Chats 9. Suporte Online 10. Forums 11. Enquetes 12. Geradores de Relatórios 13. Recursos Extras/Integração com AJAX 14. Integração com Flash 15. Integração com Java 16. Bibliotecas de Funções 14. Orientação a Objetos 1. Teoria e exercícios 2. Aplicativos de exemplo 3. Ferramentas 15. Aplicativos de Exemplo com 1. MySQL 2. PostgreSQL 3. SQLite 16. Apêndices 1. Análise e Projeto 2. Design 3. Hospedagem e Domínio 4. Segurança 5. Documentação 6. Informações Diversas 7. Oportunidade de Trabalho 1. Elaboração de Currículos 2. Técnicas de Entrevistas 3. Preços de Serviços Capítulos com conteúdo: 1 2 3 4 5 6 7 8.1 9.1 11 (todos os itens) 13.1 13.4 16.4 16.6 16.7
Até este momento (18/06/2007 15:53) o livro conta com conteúdo correspondente a 282 páginas no formato A4.
Idealmente faça o pequeno registro no Wikibooks para alterar ou adicionar conteúdo. Caso tenha alguma dúvida sobre como trabalhar com o Wikibooks, basta editar qualquer dos livros e ver como está. Também existe uma seção ajuda:
http://pt.wikibooks.org/wiki/Ajuda:Conte%C3%BAdos
Ou conte com minha ajuda no que precisar (ribafs[ ]yahoo.com).
Quem sabe um dia essa moda pegue e nós todos nos unamos para minorar nossas dificuldades e resolver nossos problemas!...
Fonte: http://www.dicas-l.com.br/print/20070621.html
Instalando o Slackware via NFS ou FTP
Instalando o Slackware via NFS ou FTP
Colaboração: Ricardo Iramar dos Santos
Esta documentação tem o objetivo descrever os passos relativo da instalação do Slackware via NFS ou FTP. É indicado que você saiba fazer a instalação padrão do Slackware diretamente do CD. Para maiores informações sobre como instalar o Slackware detalhadamente visite Piter Punk's HomePage.
Quando escrevi esta documentação o Slackware estava na versão 9.1.0. O procedimento para versões anteriores e o current é o mesmo e provavelmente será identico para versões posteriores.
Na realidade desta documentação poderia ser escrito duas outras (NFS e FTP), porém como as mesmas possuem muitas coisas em comum resolvi colocar tudo em uma única documentação.
A instalação do Slackware via NFS ou FTP não tem muita dificuldade, o que existe é uma pegadinha que até hoje não vi escrito em nenhuma documentação.
Curioso para saber sobre a pegadinha? Leia a documentação por completo para não cair nela :^D
Pré-requisitos
- Disco do boot, utilize o mais adequado para o seu hardware.
- Disco 1 de instalação.
- Quatro disquetes de 3 1/2**.
- CD 1 de instalação do Slackware ou um mirror da árvore oficial do Slackware.
Pré-requisitos para instalação via NFS
Pré-requisitos para instalação via FTP
Preparando o Terreno
Primeiro vamos gerar os disquetes, utilize o comando abaixo para gerar o disco de boot:
ricardo@smith:~$ cat bare.i > /dev/fd0
Repita o comando acima para os demais disquetes conforme o seu método de instalação (NFS ou FTP).
Nesta documentação a máquina chamada smith será o servidor de onde as estações poderam instalar o Slackware via NFS ou FTP.
Para a origem da instalação temos três opções: diretamente do CD, mirror local ou mirror remoto (somente FTP). Se for usar diretamente do CD é necessário primeiro montá-lo, insira o cd no driver de CD-ROM e digite o seguinte comando como root:
ricardo@smith:~# mount /mnt/cdrom
Você pode copiar o conteúdo do CD para o HD local gerando um mirror local ou baixar de qualquer mirror oficial do Slackware como o http://slackware.at. Deste mirror você pode baixar via http, ftp ou rsync.
Preparando o Terreno para instalação via NFS
Execute o comando abaixo para inserir uma linha no arquivo /etc/exports:
ricardo@smith:~# echo **/mnt/cdrom/slackware *(ro,insecure,all_squash)** >> /etc/exports
Caso esteja usando um mirror local substitua no comando acima o diretório /mnt/cdrom/slackware pelo diretório /mirrordir/slackware-9.1/slackware do mirror local.
ATENÇÃO: Esta é a famosa pegadinha, se o diretório exportado pelo NFS não contiver os diretório de softwares series (A, AP, D, E, ... X, XAP e Y) a instalação não irá funcionar e o pior, não emitirá nenhum erro.
Com esta linha no exports qualquer usuário da rede poderá montar este diretório como somente leitura. Reinicie o NFS para atualizar com a nova configuração:
ricardo@smith:~# /etc/rc.d/rc.nfsd restart
Preparando o Terreno para instalação via FTP
Remova a linha ftp do arquivo /etc/ftpusers para ativar o servidor anonymous do Proftpd. Agora edite o arquivo /etc/proftpd.conf alterando a seguinte linha de <Anonymous ~ftp> para <Anonymous /mnt/cdrom>. Caso esteja usando um mirror local substitua o diretório /mnt/cdrom pelo diretório /mirrordir/slackware-9.1 do mirror local.
No caso do FTP não tem pegadinha, porque no momento da instalação é necessário digitar o diretório que contém os diretórios de softwares series.
Reinicie o servidor FTP para valer as novas configurações com o seguinte comando:
ricardo@smith:~# /etc/rc.d/rc.inetd restart
Instalando
Inicie o computador onde deseja instalar com o disco de boot (bare.i). Aguarde até que apareça o prompt boot:, esse prompt serve para passar parâmetros para o kernel do linux na inicialização. Se você não sabe que parâmetro passar ou não precise passar nenhum tecle ENTER.
Aguarde enquanto o kernel do linux é carregado. Quando aparecer VFS: Insert root floppy disk to be loaded to RAM disk and press ENTER remova o disco de boot e insira o primeiro disco de instalação (install.1) e tecle ENTER. Mais uma vez, aguarde enquanto o primeiro disco de instalação do Slackware é carregado em memória RAM.
Quando aparecer Insert install.2 floppy disk to be loaded into RAM disk and press ENTER remova o primeiro disco de instalação e insira o segundo (NFS: install.2 ou FTP: install-ftp.2) teclando ENTER em seguida.
Ao aparecer Enter 1 to select a keyboard map: se estiver utilizando um teclado US International (sem cedilha) tecle ENTER caso contrário tecle 1 e em seguida ENTER.
Escolha o mapa conforme o seu teclado, se não souber qual escolher e seu teclado possuir cedilha escolha a opção qwerty/br-abnt2.map e tecle ENTER. Na janela de título KEYBOARD TEST tecle 1 em ENTER em seguida.
Provavelmente irá aparecer a tela de login com slackware login: no final. Tecle root sem as aspas é claro e tecle ENTER. Apesar de simples este passo é MUITO importante, se você teclar algo diferente de root (minúsculo) terá graves problemas mais para frente.
root@slackware:/#
Esse é o prompt de instalação do Slackware. Agora você já pode particionar o seu disco da forma que achar melhor usando cfdisk ou fdisk. Não vou explicar isso aqui pois não é a intenção desta documentação.
Após ter particionado o seu disco remova o segundo disco de instalação e insira o disco de rede (NFS: network.dsk ou FTP: network-ftp.dsk). No prompt digite network e telcle ENTER. Ele irá pedir para inserir o disco de rede, como você já inseriu simplesmente tecle ENTER novamente. Agora estamos no prompt network> do disco de rede.
Este é um procedimento específico para a instalação via FTP, caso esteja instalando via NFS pule para o próximo parágrafo. Para futuramente montar a partição via ftpfs precisamos subir agora o módulo do ftpfs teclando F e ENTER.
Em muito dos casos (provavelmente o seu também) um simples ENTER irá detectar a sua placa de rede e subir o seu respectivo módulo, caso contrário mude para outro console carregue o módulo manualmente com o comando modprobe.
Se o módulo da placa de rede for carregado com sucesso tecle ENTER para desmountar o disco de rede e voltar ao prompt de instalação. Você pode usar o comando lsmod para ver se o módulo realmente foi carregado.
Este é um procedimento específico para a instalação via FTP, caso esteja instalando via NFS pule para o próximo parágrafo. Perceba que ao executar lsmod o módulo ftpfs também é listado, caso não apareça você deve carregar o disco de rede novamente para carregar conforme descrito acima.
No prompt digite o comando setup e tecle ENTER.
root@slackware:/# setup
Realmente a brincadeira só começa agora, mas como a intenção desta documentação não é explicar passo a passo toda a instalação do Slackware vamos pular direto para o passo SOURCE Select source media supondo que você já tenha efetuado os passos obrigatórios anteriores.
Se estiver instalando via NFS selecione a opção 3 Install from NFS (Network File System) e tecle ENTER. Caso contrário selecione a opção 4 Install from an FTP server e tecle ENTER.
Na próxima tela entre com um IP (ex. 192.168.1.21) para configurar a maquina na qual o Slackware esta sendo instalado.
Entre com a máscara de rede (netmask), o setup assume por padrão a máscara 255.255.255.0 a qual iremos adotar nesta documentação como exemplo.
Essa tela é exclusiva da instalação por ftp, caso esteja instalando via NFS pule para o próximo parágrafo. Responda Yes se você possuir um gateway em sua rede, caso contrário responda No e pule o próximo parágrafo. Caso o FTP Server de onde você irá instalar estiver na internet você é obrigado a configurar um gateway.
Agora é a vez do gateway (ex. 192.168.1.254), se o seu servidor onde se encotra os softwares series estiver em outra rede você deve configurar com um gateway que consiga rotear para a rede dele.
No caso de instalação via NFS este é o passo mais importante, o IP do NFS Server (ex. 192.168.1.2). Na próxima tela indique o diretório do NFS Server que contém os diretórios de softwares series conforme comentado anteriormente (ex. se estiver usando CD indique /mnt/cdrom/slackware, caso contrário o diretório correspondente no mirror.).
Este é um procedimento específico para a instalação via FTP, caso esteja instalando via NFS pule para o próximo parágrafo. Agora você precisa configurar o IP (ex. 192.168.1.2) do FTP Server e o diretório onde estão os softwares series. Se você configurou o diretório root do usuário anonymous como sendo /mnt/cdrom como indicado acima, você deve entrar com os seguintes dados anonymous:senha@192.168.1.2/slackware. Caso esteja utilizando um mirror altere o diretório após o IP do FTP Server apontando para o diretório onde se encontra os softwares series.
Em seguida o setup irá configurar sua placa de rede com os dados fornecidos anteriormente e configurar o gateway se você possuir algum.
Se estiver instalando via NFS o setup irá rodar também o rpc.portmap para poder montar o NFS e em seguida montar o NFS. E por último o setup irá listar a tabela de partições montadas para você verificar se o NFS foi montado corretamente. Caso o NFS tenha montado corretamente tecle n e ENTER para continuar com a instalação ou y para revisar suas configurações de rede.
Caso contrário, instalação via FTP, o setup irá listar a tabela de partições montadas para você verificar se a partição foi montada corretamente utilizando o ftpfs. Caso a partição tenha sido montado corretamente utilizando o ftpfs tecle n e ENTER para continuar com a instalação ou y para revisar suas configurações de rede.
A próxima tela deve aparecer os softwares series para que você selecione os que deseja instalar, se não aparecer provavelmente você errou em algum passo acima.
No caso de ter errado algo você pode selecionar Cancel teclando TAB e ENTER para cancelar a instalação e em seguida voltar a selecionar a opção SOURCE Select source media para reiniciar as configurações.
Se tudo estiver correto até aqui, agora é só seguir com o procedimento padrão de instalação do Slackware como se fosse diretamente de um CD.
Conclusão
O mito que a instalação via rede do Slackware é complicada foi completamente desvendada.
Em testes práticos tive menos problemas com a instalação via FTP do que via NFS. O interessante do NFS é fornecer acesso ao diretório patches para futuras atualizações do sistema em rede otimizando o espaço em disco em diversas máquinas.
Referências
Dúvidas, críticas e sugestões devem ser enviadas para agent.smith@globo.com.
Quer saber mais um pouco sobre o autor desta documentação? Acesse minha home page em http://www.agentsmith.kit.net.
Fonte: http://www.dicas-l.com.br/print/20050716.html
Manifesto à Comunidade Software Livre
Manifesto à Comunidade Software Livre
Estou divulgando nesta oportunidade um documento que recebi do Marcelo D Elia Branco, diretor Vice-Presidente da PROCERGS.
Eu tive a oportunidade de participar dos dois foruns internacionais de software livre em Porto Alegre e tive a felicidade de poder ver um estado em que este movimento está se disseminando muito rapidamente com visíveis efeitos tanto na administração pública, como na área de ensino, com o projeto Rede Escolar Livre.
O software livre sem dúvida alguma é estratégico para nações como o Brasil e o movimento que começou no Rio Grande do Sul começa a ser implantado em diversas outras localidades no Brasil.
O manifesto que se segue está disponível em português, inglês e espanhol. Não deixe de ler. O seu apoio é fundamental.
Manifesto à Comunidade Software Livre
Este encontro, na sua segunda edição, é um marco na construção do movimento software livre internacional.Nosso objetivo nestes três dias é de fortalecer as premissas fundadoras deste movimento inspirado pelos conceitos de liberdade da " Free Software Foudation" , e aprofundar a construção de uma alternativa concreta que busque inserir a questão tecnológica no contexto de um mundo com inclusão social e igualdade no acesso aos avanços tecnológicos.
Após um ano do lançamento do Projeto Software Livre RS, provamos que isto é possível. Além de termos pautado no cenário nacional os fundamentos do software livre, desenvolvemos várias alternativas de utilização de programas livres , e mais do que isto, nos inserimos no cenário internacional como um pólo importante de desenvolvimento. Provamos, com isto, que é possível sermos uma referência tanto na área tecnológica como na apresentação de soluções, mesmo estando fora do eixo das grandes economias capitalistas. Isto prova que o modelo baseado na solidariedade, na socialização do conhecimento e na distribuição dos resultados produzidos ao invés da competição, da concentração e da acumulação são muito mais adequados para o desenvolvimento de nosso planeta. Mostramos que "outro mundo é possível". Aqui é a terra do software livre.
A coordenação do Projeto Software Livre RS acha importante também o diálogo com outros movimentos e outras iniciativas que busquem alternativas frente ao modelo internacional hegemônico e excludente. Por esta razão, estivemos presentes no "Fórum Social Mundial 2001" realizado em Janeiro, aqui em Porto Alegre. Definimos este encontro que estamos realizando como mais uma marcha, entre tantas que estão acontecendo no mundo, em direção à construção do Fórum Social Mundial 2002. Desta forma estaremos fortalecendo e dando uma amplitude maior à comunidade software livre e, ao mesmo tempo, contribuindo com nossa especificidade na construção de um programa global alternativo. Convidamos toda comunidade software livre: os desenvolvedores independentes, entidades governamentais, entidades não governamentais, as distribuições, empresas públicas e privadas, aos grupos de usuários, nossas universidades e entidades de pesquisas a se somarem na construção e convocação do "Fórum Social Mundial 2002" que acontecerá em Janeiro próximo em Porto Alegre e na preparação desde já do "Fórum Internacional de Software Livre 2002" previsto para os dias 2, 3 e 4 de maio.
Saudamos todos os participantes do "Fórum Internacional Software Livre 2001" .
Coordenação do Projeto Software Livre RS
Manifest to the Free Software Community
This meeting, in its second edition, is a milestone in the construction of the international free software movement. Our objective on these three days is to strengthen the original mission of the movement which was inspired by the concept of freedom from the Free Software Foundation. We aim to go deeper into the construction of a concrete alternative would insert the technological question into the context of a world with social inclusion, equality and access to technological advances.
One year after launching "Projeto Software Livre RS", we have proven this is possible. Beyond limited terms in the national scenery, the free software bases, we have developed many alternatives using free programs. More than this, we inserted ourselves onto the international scene as an important locale of development. We proved, with this, that it is possible for us to be a reference in the technological area, presenting solutions, outside of the economic capitalistic center.
This proves that a model based in solidarity, in knowledge socialization produced results-distribution instead of competition. Concentration and accumulation are better suitable for the development of our planet. We have shown that "the other world is possible". Here it's the free software land.
The coordination of "Projeto Software Livre RS" requires dialog with other movements and initiatives that aim for alternatives from the international domination and exclusion. For this reason, we presented the "Fórum Social Mundial 2001" here in Porto Alegre. We defined this meeting as one more step, among the many that are occurring in the world, toward the construction of the "Fórum Social Mundial 2001".
This way, we'll be strengthening and amplify the free software community and, at the same time, incorporating our specifications into the construction of a global alternative program.
We invite the whole free software community: independent developers, governmental entities, non governmental organizations, distribution companies, public and private companies, user groups, universities and research institutions to add up to the construction and convocation of the "Fórum Social Mundial 2002". Please join us next January in Porto Alegre and in the preparation of the "Fórum Internacional de Software Livre 2002" predicted to May 2nd. , 3rd. and 4th.
We greet all participating to the "Fórum Internacional de Software Livre 2001"
Free Software RS Project Coordination
MANIFIESTO PARA LA COMUNIDAD DE SOFTWARE LIBRE
Este encuentro, en su segunda edición, es un marco para el fortalecimiento del movimiento internacional en favor del software libre. Nuestro objetivo en estos tres días es fortalecer las premisas fundadoras de este movimiento inspirado por los conceptos de libertad de la "Free Software Foundation", y profundizar la construcción de una alternativa concreta buscando insertar la cuestión tecnológica en el contexto de un mundo de apertura social e igualdad en el acceso a los avances tecnológicos.
Después de un año del lanzamiento del Proyecto Software Libre RS, probamos que esto es posible. Además de haber pautado en el ecenario nacional los fundamentos del software libre, hemos desarrollado varias alternativas de utilización de programas libres y, más aún, nos insertamos en el contexto internacional como un polo importante de desarrollo. Probamos, con esto, que es posible ser una referencia tanto en el área tecnológica como en la presentación de soluciones, a pesar de estar fuera del eje de las grandes economías capitalistas.
Esto prueba que el modelo basado en la solidaridad, en la socialización del conocimiento y en la distribución de los resultados producidos, en contraste con la competencia, la concentración y la acumulación, es mucho más adecuado para el desarrollo de nuestro planeta. Mostramos que "otro mundo es posible". Aquí en la tierra del software libre.
La coordinación del Proyecto Software Libre RS encuentra también importante el diálogo con otros movimientos y otras inciativas que busquen alternatias frente a un modelo internacional homogéneo y excluyente. Por esta razón, estuvimos presentes en el "Foro Social Mundial 2001" realizado en enero, aquí en Porto Alegre. Definimos este encuentro que estamos realizando como un paso más, entre tantos que se están dando en dirección a la construcción del "Foro Social Mundial 2002".
De esta forma, estaremos fortaleciendo y dando una amplitud mayor a la comunidad del software libre y, al mismo tiempo, contribuyendo en nuestra especialidad en la construcción de un programa global alternativo. Invitamos a toda la comunidad del software libre - los desarrolladores independientes, entidades gubernamentales, entidades no gubernamentales, distribuciones, empresas públicas y privadas, a los grupos de usuarios, a nuestras universidades y entidades de investigación - a que se sumen en la construcción y convocatoria del "Foro Social Mundial 2002" que se realizará en enero próximo en Porto Alegre y en la preparación, desde ahora, del "Foro Internacional de Software Libre 2002" previsto para los días 2, 3 y 4 de mayo.
Saludamos a todos los participantes del "Foro Internacional de Software Libre 2001"
Coordinación del Proyecto Software Libre RS
****************************** Marcelo D'Elia Branco Diretor Vice-Presidente PROCERGS ****************************** R I O G R A N D E D O S U L ESTADO DA PARTICIPAÇÃO POPULAR Estado Livre de Transgênicos Terra de Software Livre ******************************
Fonte: http://www.dicas-l.com.br/print/20010618.html
Buscando segurança on-line - Gerenciando trollagem em um fórum Feminista
Buscando segurança on-line - Gerenciando trollagem em um fórum Feminista
Colaboração: Sulamita Garcia
Um fenômeno comum em grupos de discussão online é o indivíduo que provoca outros membros do grupo, frequentemente resultando em carregá-los em uma discussão infrutífera e desviando a atenção dos propósitos estabelecidos pelo grupo. Este estudo documenta um caso no qual os membros de uma comunidade online vulnerável - um fórum feminista de discussão online - foi alvo de um "troll" tentando perturbar o espaço de discussão do grupo. Nós analisamos as estratégias que fazem o troll bem sucedido e o grupo alvo ineficiente em responder ao seu ataque, no sentido de entender como este comportamento pode ser minimizado e controlado em geral. A análise sugere que fóruns feministas e outros que não são usuais são especialmente vulneráveis, já que eles precisam balancear ideais de inclusão e a necessidade de proteção e segurança, e esta tensão pode ser explorada por elementos perturbadores para criar conflitos dentro do grupo.
Este artigo é um estudo feito pela professora Susan Herring da Universidade de Indiana, com ajuda de três estudantes. Tomando como base o caso de um fórum feminista que foi alvo de um troll, analisa toda esta questão. Ela "sugere várias ações pró ativas que podem prevenir um grupo de ser atacado... A primeira é educar os usuários a respeito de trolls. Trolls particularmente caçam usuários inexperientes, incluindo populações que são vulneráveis por outras razões. Administradores podem alertar usuários sobre os padrões que trolls seguem... Porque o dano é emocional e não físico, nós podemos imaginar que alertar sobre eles pode ser similar a alertar sobre trotes telefônicos ou propaganda enganosa, onde conscientizar sobre o modo de operação é frequentemente suficiente para prevenir o efeito surpresa".
Algumas táticas de trolls analisadas:
- Provocação
- Aparentes manifestações de sinceridade
- Tentativa de provocar discussão fútil
- Manipulação ideológica
Texto completo em http://www.linuxchix.org.br/?q=node/104
Este artigo foi traduzido com a ajuda de voluntários que atenderam o pedido, e agora está disponível no site do Linuxchix. Agradecemos a todos os voluntários e aos divulgadores que ajudaram a encontrar estes voluntários. Acreditamos que este artigo vai ajudar a todos os grupos de discussão online a identificarem e se prevenirem este tipo de ataque, promovendo a convivência saudável e avanço nos objetivos de cada grupo.
Lançado NTFS-3G 1.0 estável
Fonte: Notícias Linux
O driver open source, estável para leitura e gravação NTFS, NTFS-3G 1.0, acaba de ser lançado. O driver, lançado meio ano atrás para beta testing progrediu, graças a inúmeros testers, usuários e desenvolvedores. O NTFS-3G é disponível para mais de 60 distribuições Linux hoje, além de ter sido portado para sistemas operacionais como FreeBSD, BeOS, Haiku e Mac OS X.
Download e instruções (uso e instalação) em: http://www.ntfs-3g.org/
Não deixe de conferir a perfomance em comparação com outros sistemas de arquivos: http://www.ntfs-3g.org/performance.html
Fonte: http://www.osnews.com/story.php/17327/NTFS-3G-1.0-Released
Comente: http://www.noticiaslinux.com.br/nl1172113380.html#comentarios
Fonte: http://www.dicas-l.com.br/print/20070226.html
Monitorando servidores pelo celular
Monitorando servidores pelo celular
Colaboração: Daniel Roberto
Hoje irei mostrar um script que me ajudou muito a monitorar meus servidores, ele envia um e-mail de aviso para você quando um dos servidores estiver fora do ar.
Você já deve conhecer algum utilitário que faça a mesma coisa, mas tem algo que este faz a mais. Usando um serviço do yahoo mail você pode redirecionar os e-mails recebidos para o seu celular e desta maneira ser informado de uma queda em qualquer lugar onde você estiver!!!
Você vai precisar instalar o programa msmtp.
apt-get install msmtp
Se você utilizar outra distribuição visite http://sourceforge.net/project/showfiles.php?group_id=86651&package_id=90067&release_id=480212
Depois de instalar o programa, vamos configura-lo. Crie um arquivo na pasta home do usuário que vai executar o script com o nome ".msmtprc" e cole todo conteúdo abaixo:
account NOME_DO_USUARIO host smtp.mail.yahoo.com.br from EMAIL_VALIDO_NO_YAHOO auth login user NOME_DE_USUARIO_DO_EMAIL password SENHA_DO_EMAIL #If your SMTP Server supports TLS encryption, uncomment the next line #tls account default:NOME_USUARIO_DO_SISTEMA
Atenção observe que o arquivo ".msmtprc" é oculto. Agora execute o comando chmod 600 .msmtprc para modificar as permissões do arquivo. Depois disto crie outro arquivo ainda na pasta home com o nome verifica e cole este conteúdo nele
#!/bin/sh ####################################### #Script para verificação de servidores # #Feito por DRMO #12/10/2006 ####################################### local=' uol.com.br' server1="NOME OU IP DO SERVIDOR" server2="NOME OU IP DO SERVIDOR" mail=SEU_EMAIL_VALIDO ( Só lembrando que este e-mail foi aquele configurado anteriormente no msmtp) # Verificando link local (pingando host na internet) ping -c 5 "$local" [ $? = 1 ] && exit # Pingando servidor numero 1 ping -c 5 "$server1" [ $? = 1 ] && { echo -e "From: alerta@alertando.com.br Subject: servidor n nn "$server1" is down" | msmtp "$mail" } sleep 10 # Pingando servidor numero 2 ping -c 5 "$server2" [ $? = 1 ] && { echo -e "From: alerta@alertando.com.br Subject: servidor n nn "$server2" is down" | msmtp "$mail" }
Observe que primeiro foi feita uma verificação no "uol.com.br" para eliminar possíveis erros de conexão com a internet, só depois foi realizado o teste nos servidores.
Agora crie um arquivo ainda na pasta home com nome de "controler_verifica" e cole este conteúdo nele:
#!/bin/sh # Matando processos existentes pide=$(cat /tmp/controler) kill -9 "$pide" # Coloque aqui o valor de tempo em minutos com 1 (um) digito, que será o intervalo entre as verificações #Exemplo: 10 = "Dez minutos" tempo=20 time=$((60 * $tempo)) # Criando pid echo "$$" > /tmp/controler # condicional loop while : do ~/verifica sleep "$time" done
Crie só mais um arquivo ainda na pasta home com o nome de "matar_controler" e cole este conteúdo nele:
#!/bin/sh pide=$(cat /tmp/controler) kill -9 "$pide"
Agora execute o comando na pasta home "chmod +x verifica controler_verfica matar_controler" para tornar os arquivos executáveis.
Faça:
./controler_verifica&
Faça um teste!! Simule um servidor fora do ar!
Você já deve estar recebendo mensagens no seu e-mail do yahoo
Vá até este site e crie sua conta e siga as instruções de configuração http://br.mobile.yahoo.com/mailalertas/
Crie também o filtro no Subject com o assunto "servidor" para que a mensagem seja enviada para o seu celular.
Só lembrando que cada mensagem recebida no celular te torra +ou- 10 centavos!!
Eu só quero que este script rode das 8:00 às 06:00 de segunda à sexta. Pois não quero ser acordado por uma mensagem no celular às 4:00 da manha né!!!!!!!!
Então coloco isso na crontab
00 8 * * 2-6 daniel ~/controler_verifica 00 18 * * 2-6 daniel ~/matar_controler
Resumo
O resultado será um script que testa 2 (ou mais) servidores de 10 em 10 minutos de segunda à sexta das 8:00 às 18:00. Obviamente você irá precisar de no mínimo 2 maquinas pois não seria possível a entrega do e-mail se maquina estiver fora!!
Fonte: http://www.dicas-l.com.br/print/20070409.html
Buscando Segurança Online: Gerenciando "Trolls" em um fórum feminista
Buscando Segurança Online - Gerenciando "Trolls" em um fórum feminista
Colaboração: Sulamita Garcia
Um fenômeno comum em grupos de discussão online é o indivíduo que provoca outros membros do grupo, frequentemente resultando em carregá-los em uma discussão infrutífera e desviando a atenção dos propósitos estabelecidos pelo grupo. Este estudo documenta um caso no qual os membros de uma comunidade online vulnerável - um fórum feminista de discussão online - foi alvo de um "troll" tentando perturbar o espaço de discussão do grupo. Nós analisamos as estratégias que fazem o troll bem sucedido e o grupo alvo ineficiente em responder ao seu ataque, no sentido de entender como este comportamento pode ser minimizado e controlado em geral. A análise sugere que fóruns feministas e outros que não são usuais são especialmente vulneráveis, já que eles precisam balancear ideais de inclusão e a necessidade de proteção e segurança, e esta tensão pode ser explorada por elementos perturbadores para criar conflitos dentro do grupo.
Este artigo é um estudo feito por uma professora da Universidade de Indiana, com ajuda de três estudantes. Pode ser encontrado aqui: http://rkcsi.indiana.edu/archive/CSI/WP/WP02-03B.html, e tomando como base o caso de um fórum feminista que foi alvo de um troll, analisa toda esta questão. Ela "sugere várias ações pró ativas que podem prevenir um grupo de ser atacado... A primeira é educar os usuários a respeito de trolls. Trolls particularmente caçam usuários inexperientes, incluindo populações que são vulneráveis por outras razões. Administradores podem alertar usuários sobre os padrões que trolls seguem... Porque o dano é emocional e não físico, nós podemos imaginar que alertar sobre eles pode ser similar a alertar sobre trotes telefônicos ou propaganda enganosa, onde conscientizar sobre o modo de operação é frequentemente suficiente para prevenir o efeito surpresa".
Eu gostaria de recrutar voluntários para me ajudarem a traduzir este artigo. Acho que todos temos consciência dos desgastes causados aos membros do grupo, talvez nem todos tenham consciência da freqüência que somos alvos. Mas este artigo é fantástico, tanto para ajudar nosso grupo quanto outros que sofrem do mesmo problema. É um artigo grande, de texto mesmo tem 20 páginas, mas se fizermos uma força tarefa, acho que conseguimos isto em uma semana. Quem se habilita a pegar pelo menos uma página? Eu tenho certeza que depois que começarem a ler, não vão conseguir largar. Acho que precisamos ter mais consciência do jeito que pessoas, que querem perturbar e atrapalhar grupos que os incomodam, atuam. E podemos ajudar outros grupos a se prevenirem também.
Quem puder e quiser ajudar, por favor, entre em contato pelo mail sulamita at linuxchix.org.br
Alguns trechos do texto:
"Trollar se diferencia de criar flames porque o objetivo de uma flame é incitar todo e qualquer leitor, enquanto o objetivo de um troll é atingir em particular usuários ingênuos e vulneráveis. Pegar usuários inexperientes ou newbies é um objetivo comumente estabelecido por trolls."
"Andrew(1996) distingue "trolls de carreira" - indivíduos que deliberadamente querem perturbar um grupo ou criar problemas para um grupo - de outros motivados pelo simples desejo de conseguir chamar atenção."
"Segundo Andrew(1996), podemos identificar três critérios que definem trolls:
- mensagens de um remetente que parece externamente sincero,
- mensagens elaboradas para atrair respostas previsíveis ou flames,
- mensagens que desperdiçam o tempo do grupo provocando discussões inúteis."
"Esta é uma evidência considerável que Kent era um troll - isto é, alguém que intencionalmente representa como se estivesse interessado no debate a respeito do feminismo, mas cujo motivo verdadeiro é provocar e perturbar."
"Na prática, nenhuma das sugestões foram seguidas: os participantes se envolveram com Kent tentando dialogar com ele, e, quando falharam, insultando ele e aumentando o conflito, desta forma caindo na armadilha que o troll tinha preparado para eles. Ao mesmo tempo, o conflito levou membros do grupo a negociar explicitamente o que era um debate apropriado para o fórum, reforçando a identidade do grupo e levando a limites mais claros para comportamentos provocativos."
"Grice(1991[1968]) observa que comunicações significativas assumem a cooperação mutua, levando os comunicantes a assumirem que os outros estão geralmente tentando ser verdadeiros, claros, consistentes,etc., mesmo que o comportamento sugira outra coisa."
"A crença na universalidade do contrato social pode cegar parcialmente aqueles que não entendem as reais motivações de um troll: o desejo de atrair atenção, incluindo atenção negativa; e o desejo de exercitar controle e se sentir superior manipulando outros a caírem em uma armadilha preparada pelo troll."
°v° Sulamita Garcia <sulamita at linuxchix.org.br> /(_) LinuxChix Brasil ^ ^ http://www.linuxchix.org.br/ http://sulamita.net/
Programação Shell, por Júlio Neves
Fonte: http://www.temporeal.com.br/produtos.php?id=170321&rnd=1564
O livro de programação shell de Júlio Neves, chega à sua sexta edição, comprovando a sua qualidade e popularidade.
O livro é a cara do Júlio, de leitura fácil, agradável, e cheio de bom humor. Com diversos apêndices incorporados - como awk, expressões regulares, CGIs e Dialog - o livro é uma referência sobre todo o ambiente Shell, com dicas e aplicações para o dia-a-dia de analistas, programadores e operadores que utilizam esses sistemas operacionais.
O Júlio Neves publicou na Dicas-L, uma semana inteira sobre programação shell:
Fonte: http://www.dicas-l.com.br/print/20060622.html
Como utilizar o urpmi
Como utilizar o urpmi
Por Gustavo Sverzut Barbieri <<gustavo (a) linuxdicas com br>>
Neste texto abordarei o que é o urpmi, como configurá-lo e como utilizá-lo. Os exemplos serão baseados no Mandrake 9.1, mas o conceito é o mesmo para outras versões, como a 9.0 e outras.
O que é o urpmi
As distribuições trabalham com pacotes de software, sendo os mais comuns deles o deb e o rpm. Um pacote nada mais é do que alguns arquivos, regras para que eles sejam instalados corretamente e uma relação de quais outros pacotes este pacote depende.
Para que seja possível instalar um pacote, é necessário um software que conheça o tipo de pacote, confira as dependências e aplique as regras de instalação. Estes software são o rpm para pacotes rpm e o dkpg para pacotes deb. Só que estes software dispõe somente de recursos básicos, não fazendo coisas como fazer automaticamente o download de pacotes que faltam para resolver as dependências. É ai que entram softwares de gerenciamento de pacote, o qual tem como representante mais conhecido o apt-get da Debian.
O urpmi é algo ao apt-get correspondente para o Mandrake, não é um clone ou uma adaptação (como rodar o apt-get no Conectiva ou RedHat), e por isso tem funções parecidas, mas não idênticas.
Como instalar o urpmi
O urpmi é automaticamente instalado no Mandrake, ao menos que você retirou-o da instalação. Mas caso você não o tenha e precise instalá-lo, faça-o apartir do CD-Rom de Instalação, diretório Mandrake/RPMS/, ou a partir de provedores de pacotes, como o site http://www.rpmfind.net.
Como utilizar o urpmi
Neste texto vou ensinar a utilizar as ferramentas de linha de comando ou modo texto, mas existem ferramentas gráficas para facilitar o uso, são elas:
- rpmdrake é a interface gráfica para o instalador de pacotes. Ele já vem instalado por padrão no Mandrake e pode ser acessado de dentro do Mandrake Control Center
- rpmdrake-remove é a interface gráfica para o desinstalador de pacotes. Ele também já vem instalado por padrão e pode ser acessado de dentro do Mandrake Control Center
- urpmi.setup é uma interface gráfica que auxilia na manutenção dos provedores de pacotes.
O urpmi é na verdade um dos comandos que você usará, segue uma listagem dos softwares e uma breve descrição, juntamente com um exemplo de uso. Lembre-se que mais informações podem ser obtidas usando a opção --help ou lendo a página manual do programa (man urpmi, por exemplo).
urpmi Este é o principal programa a ser utilizado, ele se encarrega de instalar os pacotes, conseguir os pacotes necessários e outras funcionalidades mais.# Instalando o pacote emacs: urpmi emacs # Instalando o pacote emacs e resolvendo as dependências sem # lhe perguntar: urpmi --auto emacs # Instalando o pacote emacs e escolhendo de qual provedor # de pacotes você deseja pegar (mais informações sobre # provedores de pacote a seguir). Neste exemplo, pegaremos # somente pacotes do "plf" e do "updates": urpmi --media "plf,updates" emacs urpme Este é o removedor de pacotes, ele basicamente faz o processo reverso ao urpmi, perguntando se você quer que pacotes que dependam deste sejam removidos também. # Removendo o pacote emacs: urpme emacs # Removendo o pacote emacs e apagando os arquivos que # dependem dele sem lhe perguntar: urpme --auto emacs urpmq Esta ferramenta faz procuras por pacotes. # Procurando por emacs: urpmq emacs # Procurando por emacs somente no provedor de pacotes # de atualizações: urpmq --update emacs # Listando os pacotes existentes: urpmq --list # Listando os provedores de pacotes existentes: urpmq --list-media # Listando os pacotes de um provedor de pacotes existente: urpmq --list --media plf # Fazendo uma busca aproximada (--fuzzy ou -y) e também extende # a procura para as dependências do pacote (-d): urpmq -d -y wine urpmf Esta ferramenta faz procuras por arquivos fornecidos pelos pacotes, tanto os instalados quanto os disponíveis. # Procurando pelo arquivo wine.png: urpmf wine.png urpmi.addmedia Este software configura um novo provedor de pacotes. Vide o texto mais abaixo sobre Como configurar os provedores de pacotes. # Instalando o provedor de pacote "plf" que resite no servidor # de FTP ftp.easynet.fr: urpmi.addmedia plf ftp://ftp.easynet.fr/plf/9.1 with hdlist.cz urpmi.removemedia Este software remove provedores de pacotes previamente instalados. # Removendo o provedor de pacotes "plf": urpmi.removemedia plf # Removendo todas os provedores instalados: urpmi.removemedia -a urpmi.update Este software atualiza as listas de pacotes. # Atualizar a lista do provedor de pacotes "plf": urpmi.update plf # Atualizar todos os provedores instalados, exceto os discos # de CD-Rom: urpmi.update -a
Dos comandos citados acima, todos exceto o urpmq e urpmf precisam de permissões de super-usuário (root) para serem executados.
Como configurar os provedores de pacotes
A grande vantagem destes gerenciadores de pacotes é que eles fazem o download dos pacotes necessários automaticamente, mas para isso você precisa configurar uma lista de servidores de pacote, pois senão ele vai continuar querendo pegar somente do CD-Rom.
Por padrão ele tenta pegar primeiro do CD-Rom e somente se existir uma versão mais nova ou se você especificar o provedor com a opção --media <nome_do_provedor> é que ele pega da internet. Só que eu, por ter uma conexão rápida com a internet, prefiro esperar um pouco ele fazer o download do pacote que procurar o CD-Rom e colocá-lo no drive, principalmente quando eu tenho que ficar trocando várias vezes de CD-Rom. Por isso meu primeiro comando num sistema recém-instalado é: urpmi.removemedia -a :-). Mas isso fica a cargo de você escolher se prefere ficar trocando CD ou esperar um pouco para ter o pacote instalado.
O site Easy Urpmi é o lugar onde tem uma listagem atualizada dos servidores de pacotes disponíveis por versão de Mandrake instalados. A partir de agora, explicarei um pouco sobre o site, então acesse-o.
O site é bem simples de ser utilizado, você primeiramente escolhe a versão do seu Mandrake ou coloca em Cooker se quiser utilizar a versão instável ou de desenvolvimento, ela costuma ter os pacotes mais novos, mas ela é instável e só deve ser utilizada por pessoas mais experientes. Depois escolha a arquitetura de seu computador, a maioria aqui fica com o valor i586 que significa Pentium e parecidos (AMD, Via, ...), mas se você possuir um Opteron (:-)) escolha o x86_64. Depois marque a opção Show specific sources too e clique em proceed to step 2.
Nesta segunda parte escolheremos os provedores de pacotes, selecione as caixas correspondentes e tente escolher um local mais próximo ao Brasil, no dia em que foi escrito este documento (24 de Maio de 2003) existia um provedor "Brazil Brasilia", que fica na UNB. A descrição de cada item é: - main: contém os pacotes da distribuição, ou seja, os mesmos que existem no CD-Rom. Se você não gosta de ficar trocando o CD-Rom toda hora, marque este e retire os provedores que são CD-Roms.
- contrib: pacotes de contribuintes, não oficiais e sem suporte, mas costumam ser muito bons. Aconselho a instalar este.
- updates: contém as atualizações oficiais dos pacotes. Sempre escolha esta!
Na terceira parte são pacotes extras, mas lembre-se de escolher o provedor plf, ele é essencial a um usuário doméstico de Mandrake. Isto porque ele contém pacotes os quais nós podemos utilizar mas que não podem ser distribuidos mundialmente pois a lei dos Estados Unidos da América (leia DMCA) não permite. Estes pacotes incluem coisas muito boas, como o MPlayer (um ótimo tocador de DVD, AVI, DivX, etc...), FreeType2 com interpretador de ByteCode (para as letras, "fontes", ficarem mais bonitas) e outras coisas boas também, portanto marque esta opção e escolha um espelho. As outras opções todas eu costumo não escolher.
Se você for utilizar-se dos pacotes da PLF, precisa registrar a assinatura deles, para isso faça como root:
lynx -source http://plf.zarb.org/plf.asc | gpg --import
Pressionando o botão proceed to step 3 ele vai retornar uma série de comandos a serem executados por você, copie e cole a relação de comandos (urpmi.addmedia) em um terminal, como o usuário root.
Uma boa relação é a que segue:
# PLF: urpmi.addmedia plf ftp://ftp.easynet.fr/plf/9.1 with hdlist.cz # Pegar a assinatura da PLF: lynx -source http://plf.zarb.org/plf.asc | gpg --import # Arquivos da Distribuição (os mesmos que no CD-Rom): urpmi.addmedia main ftp://mirror.fis.unb.br/pub/linux/Mandrake/9.1/i586/Mandrake/RPMS with ../base/hdlist.cz # Contribuições: urpmi.addmedia contrib ftp://mirror.fis.unb.br/pub/linux/Mandrake/9.1/contrib/RPMS with ../../i586/Mandrake/base/hdlist2.cz # Atualizações: urpmi.addmedia --update updates ftp://mirror.cs.wisc.edu/pub/mirrors/linux/Mandrake/updates/9.1/RPMS/ with ../base/hdlist.cz
Pronto! Agora é só sair dando urpmi <programa_que_você_quiser> e ser feliz! Chega de ficar horas resolvendo dependências para instalar os programas! Só que lembra de atualizar sua lista de pacotes (urpmi.update -a) regularmente!
Mais informações sobre o Urpmi
Você pode obter mais informações sobre o urpmi nos seguintes sites:
- http://www.urpmi.org página do urpmi
- http://plf.zarb.org/ Página do PLF (Penguin Liberation Front)
A Alca e o Software
Pessoal, sabe o que eu citei que os pacotes da PLF não podiam ser distribuidos nos CDs da Mandrake pois nos Estados Unidos estes pacotes são proibidos, mas aqui no Brasil, na França e em outros países que presam por suas pessoas e não somente por suas malditas empresas, então, caso o Brasil entrar para a ALCA, todas estas leis escrotas vão entrar em vigência aqui também, acabando com nossa liberdade e outras coisas mais, como por exemplo a produção de Software nacional e inibir o nascimento de uma indústria de hardware. Se você quiser saber mais informações sobre este assunto, entre em contato com: <softwarelivre (a) rau-tu ic unicamp br> que nós do GPSL (Grupo Pró Software Livre) da UNICAMP teremos o maior prazer em lhe informar das consequências da ALCA em termos de tecnologia para o Brasil.
Portanto, ALCA NÃO!
OBS: Esta notícia foi traduzida para texto a partir do conteúdo disponível em: http://www.linuxdicas.com.br/modules.php?name=Sections&op=viewarticle&artid=189 Também disponível na página pessoal do autor: http://www.ic.unicamp.br/~ra008849/downloads/linux_help/urpmi.html
Fonte: http://www.dicas-l.com.br/print/20030605.html
Dicas de utilizacao do Find
Dicas de utilizacao do Find
Colaboração: Angelo Roberto Bonfieti Junior
O comando find eh extremamente util para procurar arquivos que obedecam a um criterio particular. O find pode procurar arquivos que foram modificados nos ultimos X dias, arquivos maiores que um tamanho especifico ou arquivos que pertencam a um userid que nao esta definido no seu arquivo /etc/passwd, por exemplo, sao exemplos de situacoes faceis de serem resolvidas pelo comando find (e muito uteis, tambem). Voce tambem pode procurar arquivos de tipos especificos - como diretorios, links simbolicos ou arquivos normais - ou arquivos mais novos que um outro arquivo.
Voce pode procurar arquivos baseando-se em suas permissoes (por exemplo, todos os arquivos que possuem o bit setuid). Voce pode restringir comandos find a um diretorio especifico ou a file-systems.
O que pode nao ser tao obvio quanto a construcao do comando find apropriado para fazer o servico de vasculha que voce procura eh como construir um comando que ira fazer o que voce quer com os arquivos, uma vez que voce os tenha encontrado.
-print e -ls
Os dois comandos mais comuns usados com find sao, nao surpreendentemente, o -print e o -ls. A opcao -print imprime o nome do arquivo do ponto de vista do diretorio corrente (ex. /export/home/teste/tralha.txt ou somente ./teste/tralha.txt se a procura foi iniciada a partir do /export/home). A opcao -ls proporciona o mesmo tipo de informacao que voce iria ver se voce visalizasse os arquivos atraves do comando ls -li.
-exec
A opcao -exec eh indubitavelmente a proxima opcao mais popular e eh usada para especificar o que o find ira fazer com os arquivos que ele encontrar. Quando usamos a opcao -exec, o nome de cada arquivo encontrado pelo find eh representado no comando find pela sequencia de caracteres "<>" (sem as aspas ;-] ). O comando para imprimir o numero de linhas em cada um dos arquivos encontrados pelo find ira se parecer com isso:
root>> find . -type f -exec wc -l <> ;
A sequencia ; marca o fim do comando e, executando-o, voce poderia ter, como resultado, algo como:
74 ./030701_log.txt 12 ./testfile1 6 ./testfile2 5 ./ex
O comando para procurar por strings (sequencias) especificas e imprimir as strings e os nomes dos arquivos nas quais elas foram encontradas irao se parecer com:
find . -type f -exec grep "antes" <> ; -print
O -print neste comando eh colocado no final para que os arquivos mostrados sejam somente os que passaram pelo teste do grep.
Alterando Arquivos com o Find
Para modificar o conteudo de arquivos que sao localizados pelo find, voce pode usar o sed ou voce pode usar ainda um comando Perl como este que eh executado em todos os arquivos HTML no diretorio corrente e subdiretorios para alterar uma URL para outra:
find . -type f -name "*.html" -exec perl -i -p -e
's/www.antes.org/www.depois.com/g;' <> ;
Se voce frequentemente tem que mudar links em um website muito grande, um comando como esse certamente ira livrar muito tempo (e trabalho). Se voce quer dar este comando a alguem que nao ira gostar de lembrar do comando find, voce pode coloca-lo num script como esse:
#!/bin/bash if [ $# != 2 ]; then echo "usage $0 <antes> <depois>" exit else ANTES=$1 DEPOIS=$2 fi find . -type f -name "*.html" -exec perl -i -p -e "s/$ANTES/$DEPOIS/g;" <> ;
Fazendo Muita Coisa com Arquivos Alterados
Se voce quer executar um numero de comandos em cada arquivo que voce encontrar, existe um meio de faze-lo tambem - e isso nao requer a utilizacao da opcao -exec. Ao contrario, redirecione (com pipe) a saida do seu comando find normal para um repetidor while como este e voce pode executar quantos comandos desejar entre os marcadores do e done:
find . -type f | while read i do file $i ls -i $i wc -l $i done
Neste loop o nome do seu arquivo eh associado ao $i. Este comando trabalha com shells da familia Bourne Shell (sh, ksh, bash e outros).
Muito trabalho pode ser realizado com uma combinacao inteligente do comando find.
Algumas ideias deste artigo foram fornecidas por Robert D. e Chang A.
Este texto foi traduzido integralmente do Original veiculado no forum "Unix in the Enterprise" sob titulo "Tricks with find" da revista eletronica ITworld (www.itworld.com) no dia 17/07/2003.
Fonte: http://www.dicas-l.com.br/print/20031203.html
Instalação Linux em Modo Kickstart
Instalação Linux em Modo Kickstart
Colaboração: Rubens Queiroz de Almeida
1. Introdução
É possível se fazer a instalação do Linux de forma automatizada, onde o programa de instalação obtém a resposta para a maioria das perguntas a partir de um arquivo de configuração. Desta forma o administrador pode obter um ganho considerável de tempo na instalação e configuração de um grande número de estações de trabalho Linux.
Esta modalidade de instalação chama-se kickstart. O administrador de sistemas cria um arquivo de configuração onde são especificadas todas as opções de instalação como tipo de placa de rede, teclado, pacotes a serem instalados, número IP da estação e do gateway, endereço IP do servidor de nomes e várias outras alternativas.
Este documento discute um subconjunto das opções disponíveis de instalação através do modo kickstart. Para maiores informações consultar o guia de instalação do Red Hat Linux, apêndice H (http://www.dicas-l.com.br/linux/rhl-instguide.pdf) Outra fonte útil de referência é o documento Kickstart-HOWTO distribuído juntamente com sistemas Red Hat Linux (/usr/doc/HOWTO).
2. Quando usar?
A opção kickstart de instalação do Red Hat Linux e derivados é interessante quando o administrador de redes necessita configurar um grande número de máquinas que possuem uma configuração de hardware semelhante. Desta forma a maior parte da instalação transcorre sem a necessidade de intervenção humana e apenas os ajustes finais são feitos manualmente.
Como exemplo podemos citar a configuração de equipamentos em laboratórios de ensino, pré-instalação do Linux em máquinas recém-adquiridas antes da entrega ao usuário final e realização de upgrades de versão.
3. Arquivo de configuração
O arquivo onde são especificadas todas as opções para instalação do sistema Linux chama-se ks.cfg. Linhas iniciadas em # são tratadas como comentários. O arquivo abaixo foi utilizado para instalação do Conectiva Red Hat Linux em um micro IBM/PC 486. 66MHZ, 32 MB de memória:
lang pt_BR network --bootproto static --ip 143.106.20.73 --netmask 255.255.255.192 --gateway 143.106.20.65 cdrom device ethernet ne --opts "io=0x300, irq 5" keyboard br-abnt2 zerombr yes clearpart --all part / --size 500 --grow part swap --size 64 install mouse --kickstart generic3ps/2 --emulthree timezone --utc Brazil/East xconfig --server "SVGA" --monitor "lg studioworks 55i" rootpw --iscrypted a1veRaxg0oW/. lilo --location mbr %packages @workstation %post # acrescentar comentário ao arquivo /etc/motd echo Sistema Instalado em modo Kickstart em ""< }/bin/date""{ > > /etc/motd # acrescentar diretiva search ao arquivo /etc/resolv.conf echo search unicamp.br ccuec.unicamp.br
Vamos agora analisar as opções selecionadas:
lang pt_BR
Esta opção seleciona o idioma de instalação, português do Brasil
network --bootproto static|dhcp|bootp --ip 143.106.20.73 --netmask 255.255.255.192 --gateway 143.106.20.65
Aqui temos as opções de configuração IP da máquina. O endereço IP é atribuído estaticamente, sem o uso de servidores DHCP. O endereço IP da máquina é 143.106.20.73, sua máscara de rede é 255.255.255.192 e o gateway da rede onde esta estação de trabalho se encontra é 143.106.20.65.
cdrom|nfs --server nome.do.servidor --dir /caminho/da/imagem/redhatlinux
A instalação será feita a partir de um cdrom
device ethernet ne --opts "io=0x300, irq 5"
A placa de rede é do tipo ne2000 ou compatível e está configurada para utilizar o endereço 0x300 e a interrupção de número 5. Esta informação pode ser obtida através do disquete de configuração normalmente distribuído com a placa de rede.
keyboard br-abnt2
Tipo de teclado. Esta opção, br-abnt2, é a utilizada pelos teclados nacionais. Normalmente apenas o Conectiva Red Hat Linux suporta esta opção.
zerombr yes|no
Indica se o MBR (Master Boot Record) deve ser totalmente apagado. Esta opção é a recomendada para novas instalações. Em máquinas onde existam partições válidas que se queira preservar utilizar ``zerombr no''.
clearpart --all|linux
Sinaliza se todas as partições existentes no equipamento devem ser apagadas.
part / --size 500 --grow
A diretiva part faz a alocação das partições de seu sistema Linux. Neste caso está sendo alocada a partição root com tamanho de 500MB. A diretiva --grow indica que, se ao final do processo de alocação de todas as partições ainda restar algum espaço livre, este espaço será acrescido ao tamanho especificado originalmente.
part swap --size 64
Esta diretiva aloca o espaço de swap
install|upgrade
Será feita uma nova instalação (ou um upgrade)
mouse --kickstart generic3ps/2 --emulthree
Especificação do mouse, tipo PS/2, com dois botões, com suporte à emulação de três botões.
timezone --utc Brazil/East
Região geográfica
xconfig --server "SVGA" --monitor "lg studioworks 55i"
Especificação do tipo de placa de vídeo e monitor
rootpw --iscrypted a1veRaxg0oW/.
A senha do usuário root pode ser incluída de forma encriptada, como acima, ou não. A senha, caso criptografada deve ser precedida da diretiva --iscrypted.
lilo --location mbr
O LILO (Linux Loader) será instalado no registro mestre de boot (MBR). Este é o default.
@workstation|@server
Neste seção especificamos os pacotes a serem instalados. Podemos fazer uma especificação mais genérica, como em nosso exemplo, ou especificar separadamente cada pacote que desejamos instalar. No Conectiva Linux versão 4.0 são os seguintes os valores possíveis, além dos já especificados acima:
Base X Window System Mail/WWW/News Tools File Managers X multimedia support Console Multimedia Networked Workstation Dialup Workstation KDE
Na especificação no arquivo ks.cfg preceder os valores acima do caracter ``@''.
Incluir nesta seção os comandos que você deseja executar após o fim da instalação. Exemplo:
# acrescentar comentário ao arquivo /etc/motd echo Sistema Instalado em modo Kickstart em ""< }/bin/date""{ > > /etc/motd # acrescentar diretiva search ao arquivo /etc/resolv.conf echo search unicamp.br ccuec.unicamp.br
4. Como Instalar em modo Kickstart
4.1. Através do disquete de boot
Para utilizar o disquete de boot basta copiar o arquivo ks.cfg criado para o disquete de boot. No Linux isto pode ser feito através do comando mcopy visto que este disquete está no formato MS-DOS (FAT). A cópia pode também ser feita a partir de um sistema DOS.
Isto feito, inserir o disquete no drive a: de seu computador. Ao aparecer o prompt
boot: linux ks=floppy
A partir deste ponto, se o seu arquivo ks.cfg estiver especificado corretamente, toda a instalação transcorrerá automaticamente.
4.2. Através da Rede
A instalação via rede requer a configuração de um servidor DHCP ou Bootp a partir do qual a estação de trabalho obtém suas informações de rede e a localização do arquivo kickstart. De posse destas informações o cliente tentará montar via NFS o sistema de arquivos com as informações que precisa. Esta opção de instalação será abordada em maiores detalhes nas próximas versões deste documento.
5. Geração Automática do Arquivo ks.cfg
O pacote mkkickstart permite a criação automática do arquivo ks.cfg. Este programa obtém a configuração de seu sistema automaticamente e cria um arquivo ks.cfg apropriado. É recomendável que o arquivo ks.cfg gerado seja examinado para verificar se todos os parâmetros codificados estão adequados.
O pacote mkkickstart pode ser encontrado em
http://ftp.unicamp.br/pub/conectiva/conectiva/RPMS/mkkickstart-1.2-2cl.noarch.rpm
Fonte: http://www.dicas-l.com.br/print/19990922.html
Pacote sysutils
Pacote sysutils
Colaboração: Rubens Queiroz de Almeida
O pacote sysutils da distribuição Debian, contém um aplicativo bastante útil chamado fromdos, que realiza funções de conversão de formatos entre sistemas Unix e Dos.
Por default, ele elimina todos os CR (carriage return) de um arquivo e permite também o caminho reverso, isto é, a conversão do formato Unix para DOS.
# fromdos -u fromdos.txt # cat -v fromdos.txt Usage: fromdos [options] [file...]^M -a Always convert (DOS to Unix: kill all CRs;^M Unix to DOS: convert all LFs to CRLFs)^M -b Make backup of original file (.bak).^M -d Convert DOS to Unix.^M -e Abort processing files on error in any file.^M -f Force: convert even if file is not writeable.^M -h Display help on usage and quit.^M -o Overwrite original file (no backup).^M -p Preserve file owner and time.^M -u Convert Unix to DOS.^M -v Verbose.^M -V Show version and quit.^M ^M
Usamos o comando cat com a opção -v, para que os caracteres não imprimíveis sejam exibidos na tela.
Note o caractere ^M no final de cada linha. Este caractere indica o <CR><LF> (Carriage Return, Line Feed), indicativo de final de linha em arquivos gerados em sistemas DOS e posteriores.
Para remover este caractere e voltar para o formato Unix:
# fromdos fromdos.txt # cat -v fromdos.txt Usage: fromdos [options] [file...] -a Always convert (DOS to Unix: kill all CRs; Unix to DOS: convert all LFs to CRLFs) -b Make backup of original file (.bak). -d Convert DOS to Unix. -e Abort processing files on error in any file. -f Force: convert even if file is not writeable. -h Display help on usage and quit. -o Overwrite original file (no backup). -p Preserve file owner and time. -u Convert Unix to DOS. -v Verbose. -V Show version and quit.
O pacote sysutils é originário de sistemas BSD. Além do programa fromdos, ele traz também os programas lsdev e procinfo. O programa fromdos pode também ser invocado através dos nomes dos2unix, unix2dos e todos. Eu particularmente conhecia os nomes dos2unix e unix2dos que são mais intuitivos.
É claro que este comando realiza tarefas extremamente simples e que podem ser feitas muito bem por sed, e outros, porém eu sempre gostei de ter este comando ao meu alcance.
Para quem usa outros sistemas e desejar usar este pacote, eu coloquei o fonte em http://www.dicas-l.com.br/download/sysutils_1.3.8.5.1.tar.gz
É só fazer o download e se divertir.
2o ISSA Day - Campinas
A Diretoria Regional da ISSA (Information Systems Security Association) para o Interior de São Paulo está organizando o 2º ISSA Day - Encontro de Profissionais de Segurança da Informação de Campinas e região. O Encontro, organizado pela ISSA Brasil-SP, com o apoio da Faculdade IBTA - Unidade Campinas, e patrocínio da SECURITY WEEK BRASIL, visa congregar os profissionais e estudiosos dos assuntos da Segurança da Informação.
Em continuidade aos temas apresentados no primeiro evento em Outubro de 2004, as palestras abordarão temas da atualidade como Segurança em ambiente Windows, Segurança em redes Wireless e Crimes digitais, que serão ministradas por especialistas nestas áreas. Veja a seguir maiores detalhes:
Data: 5 de Março de 2005, Sábado. Início: 9:00 hs Local: Faculdade IBTA - Unidade Campinas Colégio Notre Dame - www.ibta.com.br Rua Egberto Ferreira de Arruda Camargo, 151 Campinas - SP
Inscrições no site http://www.issabrasil.org R$ 40,00 para profissionais, R$ 20,00 para estudantes e Gratuito para Associados ISSA.
Fonte: http://www.dicas-l.com.br/print/20050303.html





Últimos comentários