terça-feira, 16 de outubro de 2012

Como fazer configurações de rede permanentes no Ubuntu


Como fazer configurações de rede permanentes no Ubuntu

Retirado do blog bellusse.com.br/blog
Um detalhe muito incômodo no Ubuntu é que as configurações de rede realizadas através da opção “Network” (no menu System -> Administration) não são permanentes. Qualquer alteração realizada no endereço IP, gateway, DNS ou domínios é perdida após um reboot. Se você editar as configurações de uma interface de rede via ifconfig, o mesmo problema ocorrerá. Não sei se isso é um bug ou uma característica desejada, mas eu acho muito inconveniente.
Para tornar as configurações de rede permanentes, você deve editar os seguintes arquivos (como root ou sudo):
  • Configurações de DNS: arquivo /etc/dhcp3/dhclient.conf. Para definir servidores DNS, retire o comentário da linha prepend domain-name-servers e acrescente os IPs após 127.0.0.1, separados por espaço. Para definir domínios de busca, retire o comentário da linha supersede domain-name e digite os domínios entre aspas, separados por espaço;
  • Configurações de interface de rede: arquivo /etc/network/interfaces. Para configurar a interface eth0, por exemplo, acrescente as seguintes linhas no final do arquivo, substituindo os endereços IP pelos valores correspondentes:

auto eth0
iface eth0 inet static
address 192.168.254.3
netmask 255.255.255.0
gateway 192.168.254.254
Após concluir as alterações, reinicie o serviço de rede com o comando
/etc/init.d/networking restart.
Derrubando uma interface usando ifconfig.
sudo ifconfig eth0 down
levantando uma interface usando ifconfig.
sudo ifconfig eth0 up

segunda-feira, 1 de outubro de 2012

Firewall UFW


No Linux existem diversas opções de firewall, como por exemplo o tão famoso IPtables e o Firestater. Uma ótima opção para quem deseja usar um firewall simples de configurar é o UFW.

A sigra UFW significa "Uncomplicated firewall" ou "firewall descomplicado". O UFW funciona via linha de comando e para os leigos, existe o modo gráfico da ferramenta, chamada GUFW.


A sua instalação é bem simples, via apt-get, o comando é o seguinte:
$ sudo apt-get install gufw

Vale lembrar que o pacote Gufw puxa o pacote Ufw. Se você usa outros sistemas, procure mais informações sobre a instalação. O UFW na verdade é o aplicativo de firewall padrão do Ubuntu desde a versão 8.04 LTS; ele é habilitado por padrão, mas todas as portas ficam liberadas até que se mexa do contrário. 

A sintaxe do ufw (linha de comando) é a seguinte
$ sudo ufw <comando> <porta> <opcional/protocolo>

Para ativar o firewall e desativar, o comando é o segunte:
$ sudo ufw enable
$ sudo ufw disable

Para ver o status do firewall, bem como as regras definidas, use o comando
$ sudo ufw status

No caso, não existe nenhuma regra

Outros comandos incluem:

$ sudo ufw default allow - Permitir todas as conexões por padrão
$ sudo ufw default deny - Drop (bloqueia) todas as conexões por default
$ sudo ufw status - Regras e estado atual do Firewall
$ sudo ufw allow port - Permitir tráfego em determinada porta (necessário escolher qual)
$ sudo ufw deny port - Bloquear porta $ sudo ufw deny from ip - Bloquear endereço ip
$ sudo ufw logging on - Ativando gravação de logs do ufw
$ sudo ufw logging off - Desativando gravação de logs do ufw

Também é possível, através do GUFW, adicionar regras de maneira pre-configurada, simples ou avançadas.


Ainda é possível, ativar o log e exibir um relatório sobre as portas usadas.


Mais exemplo de uso:

Habilitar firewall
$ sudo ufw enable

Desabilitar firewall
$ sudo ufw disable

Permitir porta 23
$ sudo ufw allow 23

Permitir protocolo TCP na porta 50
$ sudo ufw allow 50/tcp

Permitir protocolo UDP na porta 50
$ sudo ufw allow 50/udp

Bloquear porta 23
$ sudo ufw deny 23

Bloquear porta 50 usando o protocolo TCP
$ sudo ufw deny 50/tcp

Bloquear porta 50 usando o protocolo UDP
$ sudo ufw deny 50/udp

Deletar regra existente
$ sudo ufw delete 50 

Permitir acesso de um determinado IP
$ sudo ufw allow from 192.168.1.189

Repositórios oficiais Debian


Abaixo estão os repositórios oficiais que uso no meu Debian Lenny. Pode parecer algo besta, mas vejo muitos novatos no Debian que simplesmente não sabem quais repositórios adicionar, uma vez que a instalação padrão geralmente mantém somente os repositórios de segurança. Antes de alterar seu sources.list (localizado em /etc/apt/), preste muita atenção para usar o repositório correto para sua versão (Etch, Lenny ou SID). 


Debian Etch:

deb http://ftp.br.debian.org/debian etch main contrib non-free
deb-src http://ftp.br.debian.org/debian etch main contrib non-free
deb http://security.debian.org etch/updates main
deb-src http://security.debian.org etch/updates main

Debian Lenny:

deb http://ftp.br.debian.org/debian lenny main contrib non-free
deb-src http://ftp.br.debian.org/debian lenny main contrib non-free
deb http://security.debian.org lenny/updates main
deb-src http://security.debian.org lenny/updates main

Debian SID:

deb http://ftp.br.debian.org/debian sid main contrib non-free
deb-src http://ftp.br.debian.org/debian sid main contrib non-free

Lembrando que o time de segurança do Debian Lenny (testing) é relativamente novo e que o Debian SID (unstable) não possui um grupo exclusivo para correções de segurança, uma vez que os pacotes são atualizados com muita frequência. 

Comandos básicos Linux


Comandos básicos para iniciantes

Alguns comandos que você verá nesta página, equivalem aos utilizados no DOS. No entanto, saiba que conhecendo ou não o DOS, você poderá estranhar bastante os comandos do Linux ou simplesmente não ter dificuldade alguma. Tudo depende de você. Essencialmente, trabalhar com o Linux é uma questão de prática e logo você ficará bem familiarizado.


[root@localhost /root]#

Você sabe o que significa isso aí em cima? O Linux usa uma estrutura diferente de organização em seu sistema de arquivos*. Por isso, em vez da sua pasta ser c:arquivospastaarquivo.txt, simplesmente no Linux, pode ser /home/pasta/arquivo.txt. Para você entender melhor, vamos analisar o prompt do Linux:

[root@localhost /root]#

usuário - diretório / local (PC ou rede) - modo usuário

Usuário: No Linux, cada pessoa precisa ter uma conta de usuário. Uma conta de usuário indica um nome e senha que devem ser utilizados para se conectar no sistema. Se o nome escolhido por você for, por exemplo, Fulano, em vez de root aparecerá fulano no lugar.

Usuário "root" (ou super-usuário): é quem tem acesso irrestrito ao sistema. Quando você se conecta como usuário root, você poderá fazer qualquer operação no Linux, como alterações de configuração do sistema, apagar ou modificar arquivos importantes, etc. Por isso, se conectar como root é muito arriscado, já que você pode causar algum dano sem querer. Tendo isso em mente, nunca se conecte como root a não ser que seja mesmo necessário. Para usar o Linux no dia-a-dia, conecte-se com uma conta de usuário comum, assim não haverá risco de danos. Também não se esqueça de guardar muito bem a senha do root, pois se alguém descobrir, poderá destruir o sistema.

localhost /root : é o local (diretório) onde você está no momento (/root é padrão e equivale a C: no DOS).

Modo usuário: indica quem está usando a máquina, se um usuário comum ou o super-usuário. Veja:

# - modo super-usuário
$ - modo usuário


* Sistema de arquivos é um local onde os arquivos é diretórios são guardados. Consiste em uma área formatada em um dispositivo como um HD. Exemplos de sistema de arquivo: ext2/ext3 (Linux), FAT (DOS/Windows), NTFS (Windows NT/2000/XP), etc.

Linha de comando


Antes de vermos os comandos em si, é necessário saber o que é Linha de Comando. Trata-se de um modo de trabalho com caracteres, onde você digita o comando e o executa pressionando "Enter" no teclado. Mas você também pode usar uma linha de comando em um ambiente gráfico. Se você usar o KDE por exemplo, pode procurar o aplicativo KDE Terminal para abrir uma janela com linha de comando. Mas isso vária de acordo com a versão do seu Linux. Mesmo assim não se preocupe, pois a linha de comando é muito fácil de se achar.

Os comandos básicos


Vejamos agora os comandos básicos do Linux, seguidos de uma breve explicação:
  • (qualquer comando) --help: mostra o HELP (arquivo de ajuda) do comando que você digitou;
  • ls: lista os arquivos e diretórios da pasta (DIR no DOS);
  • clear: limpa a tela (CLS no DOS);
  • cd ___: entra em um diretório (igual ao DOS);
  • cd: vai direto para o diretório raiz do usuário conectado;
  • : abre uma linha de comando "livre" , onde você pode digitar um comando extenso (digite q e clique em enter para sair);
  • pwd: mostra o diretório inteiro que você está;
  • cat: igual ao TYPE no DOS;
  • df: Mostra as partições usadas ou livres do HD;
  • |more: lista o arquivo com pausa de linha em linha (exemplo: CAT leiame |more)
  • |lpr: imprime o arquivo listado;
  • free: mostra a memória do computador (MEM no DOS);
  • shutdown: desliga o computador:
  • shutdown -r now : reinicia o computador;
  • shutdown -h now : desliga o computador (só desligue quando aparecer escrito "system halted" ou algo equivalente); OBS.: O NOW pode ser mudado. Por exemplo: shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos).
  • Reboot: reinicia o sistema instantaneamente (pouco recomendável, preferível shutdown -r now). Use somente em emergências;
  • startx: inicia o X-Windows (interface gráfica) do Linux;
  • kde: Inicia a Interface gráfica K Desktop Enviroment;
  • mkdir: cria um diretório (MD no DOS);
  • rmdir: destrói um diretório VAZIO (RD no DOS);
  • rm: apaga um arquivo (DEL no DOS);
  • rm -r: apaga um diretório;
  • who: mostra quem está usando a máquina;
  • wc: conta a quantidade de:
  • wc -c arquivo : quantidade de bytes
  • wc -w arquivo : quantidade de palavras
  • wc -l arquivo : quantidade de linhas;
  • date: mostra data e hora;
  • telnet: inicia a TELNET;
  • m: abre o MINICOM e permite configurar o modem;
  • type: explica um determinado arquivo do sistema;
  • file: descreve um determinado arquivo;
  • find / - name ____ : procura arquivo "____";
  • useradd nome_do_novo_usuário: cria uma nova conta usuário;
  • passwd nome_do_usuário: cria ou modifica a senha do usuário;
  • userdel -r nome_do_usuário: apaga um usuário;
  • su: passa para o superusuário (perceba que no prompt irá mudar o $ pelo #);
  • sndconfig: permite configurar a placa de som;
  • TAR: arquivo para criar Backups:
  • TAR -c: cria
  • TAR -x: restaura
  • TAR -v: lista cada arquivo
  • TAR -t: lista os arquivos de backups;
  • write: escreve mensagens para outro usuário em rede;
  • mv: move arquivos;
  • linuxconf: configuração do Linux;
  • alias: possibilita a criação de comandos simples;
  • &: coloca o comando desejado em background, ou seja, trabalha enquanto você faz outra coisa no computador;
  • ps: relata os processos em execução;
  • kill: encerra um ou mais processos em andamento;
  • history: mostra os comandos que o usuário já digitou;
  • lpr: imprime um arquivo (exemplo: lpr arquivo);
  • lpq: mostra o status da fila de impressão;
  • lprm: remove trabalhos da fila de impressão;
  • mtools: permite o uso de ferramentas compatíveis com DOS. Após digitar o comando, você verá que todo comando do DOS terá um M na frente. Isso é normal.