|
|__root
|
|__boot
|
|__lib
|
|__dev
|
|__etc
|
|__home
|
|__bin
|
|__sbin
|
|_________usr
man
local
include
etc
doc
|__proc
|
|__mnt
|
|__tmp
|
|__var
|
|__opt
|__bin
|__lib
|__sbin
|__share
|__src
Agora uma breve explicação de cada um…
.:: / -> diretório principal, onde fica tudo.
.:: /root -> diretório pessoal do administrador do sistema, o root.
.:: /boot -> arquivos necessários para o boot do sistema.
.:: /lib -> diretório onde ficam as bibliotecas compartilhadas usadas frequentemente pelo sistema.
.:: /dev -> ‘devices’, onde ficam arquivos dos dispositivos I/O
.:: /etc -> local dos arquivos de configuração do sistema
.:: /home -> lugar onde ficam os diretórios pessoais dos usuários
.:: /bin -> ‘binários’, arquivos executáveis do sistema usados com frequência
.:: /sbin -> arquivos executáveis pessoais do superusuário(root)
.:: /usr -> arquivos dos usuários em geral
.:: /proc -> diretório virtual que contem informações sobre o kernel e sobre os processos
.:: /mnt -> diretório default usado para montar partições (não é obrigatório a montagem dentro dele)
.:: /tmp -> arquivos temporários
.:: /var -> É um diretório onde localizam-se os arquivos que tem seu conteúdo variável ao decorrer do tempo, como LOGS por exemplo.(thx to vuln)
.:: /opt -> pacotes opcionais
sexta-feira, 26 de março de 2010
Como verificar se seu sistema está invadido por rootkits
Um rootkit é um programa usado para invadir sistemas Linux e conceder ao invasor privilégios de root sem o conhecimento da vítima da invasão. Muitos rootkits são difíceis de identificar pois não geram nenhum logs e não ficam listados entre os processos do Linux.
para verificar se seu sistema está infectado, há um software muito bom, clamado RkHunter, que executa verificações em áreas específicas do sistema a procura de sinais de invasão.
Instalando o RkHunter
# yum install rkhunter
=============================================================================
Pacote Arq. Versão Repositório Tamanho
=============================================================================
Instalando:
rkhunter noarch 1.3.2-3.fc9 updates 234 k
* Após instalado, proceda as atualizações do programa:
# rkhunter --propupd
[ Rootkit Hunter version 1.3.2 ]
File created: searched for 149 files, found 126
Para permitir que o programa se localize no seu sistema e
# rkhunter --update
para atualizar o banco de dados do programa.
Verificando o sistema
A verificação consiste em procurar por mudanças suspeitas de configuração, binários que possam ter sido alterados e pela presença de arquivos maliciosos já identificados e catalogados. para verivicar seu sistema, execute o comando:
# rkhunter -c
E a checagem começa, terminando com um relatório:
System checks summary
=====================
File properties checks...
Files checked: 126
Suspect files: 2
Rootkit checks...
Rootkits checked : 64
Possible rootkits: 0
Applications checks...
Applications checked: 6
Suspect applications: 0
The system checks took: 3 minutes and 32 seconds
All results have been written to the logfile (/var/log/rkhunter/rkhunter.log)
One or more warnings have been found while checking the system.
Please check the log file (/var/log/rkhunter/rkhunter.log)
para verificar se seu sistema está infectado, há um software muito bom, clamado RkHunter, que executa verificações em áreas específicas do sistema a procura de sinais de invasão.
Instalando o RkHunter
# yum install rkhunter
=============================================================================
Pacote Arq. Versão Repositório Tamanho
=============================================================================
Instalando:
rkhunter noarch 1.3.2-3.fc9 updates 234 k
* Após instalado, proceda as atualizações do programa:
# rkhunter --propupd
[ Rootkit Hunter version 1.3.2 ]
File created: searched for 149 files, found 126
Para permitir que o programa se localize no seu sistema e
# rkhunter --update
para atualizar o banco de dados do programa.
Verificando o sistema
A verificação consiste em procurar por mudanças suspeitas de configuração, binários que possam ter sido alterados e pela presença de arquivos maliciosos já identificados e catalogados. para verivicar seu sistema, execute o comando:
# rkhunter -c
E a checagem começa, terminando com um relatório:
System checks summary
=====================
File properties checks...
Files checked: 126
Suspect files: 2
Rootkit checks...
Rootkits checked : 64
Possible rootkits: 0
Applications checks...
Applications checked: 6
Suspect applications: 0
The system checks took: 3 minutes and 32 seconds
All results have been written to the logfile (/var/log/rkhunter/rkhunter.log)
One or more warnings have been found while checking the system.
Please check the log file (/var/log/rkhunter/rkhunter.log)
sábado, 13 de março de 2010
Comandos úteis
Estarei colocando aqui os comandos que considero úteis, a medida que forem sendo usados e eu considerar que são comandos que mereçam ser mantidos por aqui.
---> rpm -q aplicativo
mostra se o aplicativo está instalado e em qual versão
---> ntsysv mostra e gerencia os serviços
---> cp copiar arquivos
cp [opções] [origem] [destino]
onde:
origem Arquivo que será copiado. Podem ser especificados mais de um
arquivo para ser copiado usando "Curingas"
destino O caminho ou nome de arquivo onde será copiado. Se o destino for
um diretório, os arquivos de origem serão copiados para dentro do
diretório.
---> rm Apaga arquivos. Também pode ser usado para apagar diretórios e sub-diretórios vazios ou que contenham arquivos.
rm [opções][caminho][arquivo/diretório] [caminho1][arquivo1/diretório1]
onde:
caminho: Localização do arquivo que deseja apagar. Se omitido, assume que o
arquivo esteja no diretório atual.
arquivo/diretório: Arquivo que será apagado.
---> rpm -q aplicativo
mostra se o aplicativo está instalado e em qual versão
---> ntsysv mostra e gerencia os serviços
---> cp copiar arquivos
cp [opções] [origem] [destino]
onde:
origem Arquivo que será copiado. Podem ser especificados mais de um
arquivo para ser copiado usando "Curingas"
destino O caminho ou nome de arquivo onde será copiado. Se o destino for
um diretório, os arquivos de origem serão copiados para dentro do
diretório.
---> rm Apaga arquivos. Também pode ser usado para apagar diretórios e sub-diretórios vazios ou que contenham arquivos.
rm [opções][caminho][arquivo/diretório] [caminho1][arquivo1/diretório1]
onde:
caminho: Localização do arquivo que deseja apagar. Se omitido, assume que o
arquivo esteja no diretório atual.
arquivo/diretório: Arquivo que será apagado.
Descompatando arquivos RAR no Linux
É fácil de se resolver: instale a biblioteca unrar pelo yum:
vá para SU: yum install unrar
Pronto! É só clicar nos arquivos rar que serão descompactados.
vá para SU: yum install unrar
Pronto! É só clicar nos arquivos rar que serão descompactados.
Assistindo filmes em RMVB
Agora que você configurou o repositorio Fusion, é possível assistir filmes em RMVB...
Clique no arquivo RMVB. Caso ele não rode, surgirá uma opção para pesquisar em locais onde haja suporte para o arquivo. Como o Fusion está ativo, serão encontrados os codecs, bem como suas dependências (pacotes necessários para completar a instalação). Confirme as instalações pedidas e então você será capaz de assistir filmes e series em RMVB!
Clique no arquivo RMVB. Caso ele não rode, surgirá uma opção para pesquisar em locais onde haja suporte para o arquivo. Como o Fusion está ativo, serão encontrados os codecs, bem como suas dependências (pacotes necessários para completar a instalação). Confirme as instalações pedidas e então você será capaz de assistir filmes e series em RMVB!
Novos Repositorios
Os melhores locais para se conseguir atualizações e softs para Linux são os repositórios. Ano passado, os repositorios Dribble, Freshrpms, e Livna se uniram e deram origem ao repositorio Fusion. É um ótimo local para se conseguir atualizações e codecs de audio e vídeo para o Linux, "free" e "nonfree".
Utilize o link abaixo para configuração do Fusion:
http://rpmfusion.org/Configuration/
E não se esqueça: instale os links para "free" e "nonfree"
Utilize o link abaixo para configuração do Fusion:
http://rpmfusion.org/Configuration/
E não se esqueça: instale os links para "free" e "nonfree"
Codec para MP3
As distros Fedora não tem vindo mais com suporte nativo a MP3, por isso, temos que instalar os codecs para podemos ouvir musicas neste formato. Geralmente é uma dificuldade achar os codecs certos para isto. Consegui encontrar no link abaixo o codec para o funcionamento normal dos player MP3, principalmente o Amarok e o XMMS. É só baixar um dos pacotes RPM e mandar instalar e pronto!
ftp://ftp.univie.ac.at/systems/linux/dag/fedora/3/en/i386/RPMS.dag/xmms-mp3-1.2.10-11.1.1.fc3.rf.i386.rpm
http://havardk.xmms.org/dist/xmms-1.2.7-rh8-rh9-rpm/xmms-mpg123-1.2.7-21.i386.rpm
Bom divertimento....
ftp://ftp.univie.ac.at/systems/linux/dag/fedora/3/en/i386/RPMS.dag/xmms-mp3-1.2.10-11.1.1.fc3.rf.i386.rpm
http://havardk.xmms.org/dist/xmms-1.2.7-rh8-rh9-rpm/xmms-mpg123-1.2.7-21.i386.rpm
Bom divertimento....
Entenda o que é ICMP, ping e traceroute
O ICMP - Internet Control Message Protocol - é um protocolo que faz parte da pilha TCP/IP, enquadrando-se na camada de rede (nível 3), a mesma camada do protocolo IP - Internet Protocol. O seu uso mais comum é feito pelos utilitários ping e traceroute. O ping envia pacotes ICMP para verificar se um determinado host está disponível na rede. O traceroute faz uso do envio de diversos pacotes UDP ou ICMP e, através de um pequeno truque, determina a rota seguida para alcançar um host.
Este artigo descreve as interações entre cliente e servidor implementadas por estes dois utilitários.
Ping
Quando queremos determinar se um determinado host está disponível na rede interna ou mesmo na Internet, frequentemente utilizamos o utilitário ping como um dos primeiros recursos de troubleshooting. O fato de um host não responder ao ping não quer dizer que ele esteja realmente fora da rede, pois este serviço pode estar desabilitado neste host por questões de segurança. O comando, provavelmente já conhecido pelo leitor, é:
ping
Exemplo:
[root@malkovich linux-2.6.3]# ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=127 time=4.22 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=127 time=1.02 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=127 time=1.01 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=127 time=1.99 ms
64 bytes from 192.168.0.1: icmp_seq=5 ttl=127 time=1.03 ms
--- 192.168.0.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4002ms
rtt min/avg/max/mdev = 1.019/1.857/4.221/1.241 ms
A resposta acima indica que o host 192.168.0.1 está disponível. No final algumas estatísticas de tempo e percentual de respostas positivas e negativas são apresentadas.
No exemplo seguinte vemos um caso em que não obtemos resposta do host.
[root@malkovich linux-2.6.3]# ping 192.168.0.2
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
--- 192.168.0.2 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3998ms
É chamado de cliente o host que inicia a comunicação, ou seja, a partir do qual o usuário executa o comando de teste de disponibilidade. Servidor é o alvo do teste, pois este deve possuir um serviço habilitado para ser capaz de receber o pacote do cliente e respondê-lo.
O cliente envia primeiro um pacote do tipo ICMP Echo Request, ou simplesmente ICMP Echo. Abaixo está a captura deste pacote na rede. Note o tipo do protocolo no cabeçalho IP (ICMP) e o tipo do pacote no cabeçalho ICMP (Echo request).
Internet Protocol, Src Addr: 192.168.0.2 (192.168.0.2), Dst Addr: 192.168.0.1 (192.168.0.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 84
Identification: 0x0000 (0)
Flags: 0x04
Fragment offset: 0
Time to live: 64
Protocol: ICMP (0x01)
Header checksum: 0xb955 (correct)
Source: 192.168.0.2 (192.168.0.2)
Destination: 192.168.0.1 (192.168.0.1)
Internet Control Message Protocol
Type: 8 (Echo (ping) request)
Code: 0
Checksum: 0x5905 (correct)
Identifier: 0x9409
Sequence number: 0x0001
Data (56 bytes)
Quando o servidor recebe este pacote ele responde com um pacote do tipo ICMP Echo Reply. Veja abaixo a captura deste pacote.
Internet Protocol, Src Addr: 192.168.0.1 (192.168.0.1), Dst Addr: 192.168.0.2 (192.168.0.2)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 84
Identification: 0xa078 (41080)
Flags: 0x00
Fragment offset: 0
Time to live: 127
Protocol: ICMP (0x01)
Header checksum: 0x19dd (correct)
Source: 192.168.0.1 (192.168.0.1)
Destination: 192.168.0.2 (192.168.0.2)
Internet Control Message Protocol
Type: 0 (Echo (ping) reply)
Code: 0
Checksum: 0x6105 (correct)
Identifier: 0x9409
Sequence number: 0x0001
Data (56 bytes)
Este processo se repete até que o usuário cancele o ping com um. O utilitário então calcula as estatísticas e as exibe na tela. O usuário também pode controlar, através de opções do comando, quantos pacotes devem ser enviados, o intervalo de tempo entre eles, e o tamanho do pacote. Na verdade a área de dados do pacote não carrega nenhuma informação útil, entretanto, pode ser aumentada para testar a rede com pacotes de tamanhos diferentes. Existe atualmente um limite para o tamanho do pacote, pois um pacote muito grande pode provocar o reboot de alguns sistemas Windows, sendo este o conhecido ping of death, ou ping da morte.
Traceroute
Um dos campos do cabeçalho IP é chamado TTL - Time to Live - e determina por quantas passagens em roteadores este pacote pode sobreviver. A cada passagem em um roteador ou host este campo é decrementado de 1. Este mecanismo é utilizado para evitar que pacotes percorram a rede eternamente, rodando de um lado para outro. Verifique acima que o nosso pacote de ICMP Echo Request possui um TTL igual a 64. Se um pacote possui um TTL de 1 e este deve passar por um roteador antes de alcançar o seu destino final, este roteador irá descartá-lo ao verificar o TTL do pacote e retornar um pacote ICMP do tipo ICMP Time Exceeded para o host que o enviou. Neste pacote de resposta o roteador se identifica como origem da mensagem Time Exceeded. É nessa característica do protocolo que o utilitário traceroute se baseia para traçar uma rota entre dois pontos da rede.
Suponha que o host 1 esteja separado do host 2 por dois roteadores, chamados router A e router B. A partir do host 1 é executado um traceroute para o host 2. O utilitário cria um pacote UDP destinado ao host 2, mas configura o seu TTL para 1. O router A recebe este pacote e, apesar de saber para onde rotear o pacote, ao decrementar o TTL este torna-se 0 (zero) o que siginifica que este pacote deve ser descartado, retornando um ICMP Time Exceeded para o host 1. Quando o traceroute recebe esta resposta ele tem o endereço do primeiro roteador no caminho entre os dois hosts. O primeiro roteador é mostrado para o usuário.
Em seguida, o traceroute cria outro pacote UDP, com o TTL de 2. O pacote sobrevive ao primeiro roteador mas é descartado no segundo. Quando recebe o ICMP Time Exceeded do segundo roteador temos o endereço dele, que também é mostrado na saída do traceroute. O passo seguinte é um pacote com TTL de 3 o qual alcança o host 2. Os pacotes UDP são sempre enviados com uma porta de destino inválida, o que força que o host 2, ao receber o pacote, retorne um pacote ICMP Destination Unreachable. O traceroute sabe então que o caminho completo foi descoberto e mostra ao usuário o endereço do host 2, indicando que o trace foi finalizado.
Como ilustração, executei um traceroute do IP 192.168.1.2 (host virtual A) para o IP 192.168.0.1 (host C). Como roteador entre essas duas máquinas está um Linux (host B) com os IP 192.168.1.1 e 192.168.0.2. Portanto, o caminho do pacote deve ser A <-> B <-> C. O comando foi executado a partir de A:
[root@malkovich root]# traceroute -q 1 192.168.0.1
traceroute to 192.168.0.1 (192.168.0.1), 30 hops max, 38 byte packets
1 192.168.1.1 (192.168.1.1) 8.243 ms
2 192.168.0.1 (192.168.0.1) 12.298 ms
3 192.168.0.1 (192.168.0.1) 21.193 ms
A opção -q 1 é para que o traceroute envie apenas um pacote a cada interação, o default são 3. A opção -I também poderia ser usada para instruir que sejam usados pacotes ICMP Echo Request e não pacotes UDP.
A sequência de troca de pacotes é a seguinte:
Seq Source --> Destination Protocol Description
1 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33435 (TTL=1)
2 192.168.1.1 --> 192.168.1.2 ICMP Time-to-live exceeded
3 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33436 (TTL=2)
4 192.168.0.1 --> 192.168.1.2 ICMP Time-to-live exceeded
5 192.168.0.1 --> 192.168.1.2 ICMP Destination unreachable
6 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33437 (TTL=3)
7 192.168.0.1 --> 192.168.1.2 ICMP Destination unreachable
É mostrado abaixo o primeiro pacote enviado pelo host A e descartado pelo roteador B.
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 38
Identification: 0x827f (33407)
Flags: 0x00
Fragment offset: 0
Time to live: 1
Protocol: UDP (0x11)
Header checksum: 0xb4f4 (correct)
Source: 192.168.1.2 (192.168.1.2)
Destination: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33435 (33435)
Source port: 33406 (33406)
Destination port: 33435 (33435)
Length: 18
Checksum: 0xa29f (correct)
Data (10 bytes)
Note o TTL 1 e a porta de destino. A esse pacote o roteador B responde:
Internet Protocol, Src Addr: 192.168.1.1 (192.168.1.1), Dst Addr: 192.168.1.2 (192.168.1.2)
Internet Control Message Protocol
Type: 11 (Time-to-live exceeded)
Code: 0 (Time to live exceeded in transit)
Checksum: 0x7777 (correct)
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33435 (33435)
Data (10 bytes)
Podemos confirmar o ICMP Time Exceeded aqui. Após a interação seguinte, o pacote chega ao destino. Como é uma porta inválida, o host 192.168.0.1 responde com um ICMP Destination Unreachable:
Internet Protocol, Src Addr: 192.168.0.1 (192.168.0.1), Dst Addr: 192.168.1.2 (192.168.1.2)
Internet Control Message Protocol
Type: 3 (Destination unreachable)
Code: 3 (Port unreachable)
Checksum: 0x48b6 (correct)
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33436 (33436)
Veja que já no passo 5 há uma resposta de ICMP Destination Unreachable, como resposta ao pacote do passo 3, com TTL igual a 2. Entretanto, mesmo assim o traceroute inicia outra interação, enviando um pacote com TTL igual a 3. Isso aconteceu porque antes do ICMP Destination Unreachable ele recebeu, no passo 4, um ICMP Time Exceeded, o que gerou o envio imediato do terceiro pacote UDP.
Fonte: www.sounerd.com.br
Este artigo descreve as interações entre cliente e servidor implementadas por estes dois utilitários.
Ping
Quando queremos determinar se um determinado host está disponível na rede interna ou mesmo na Internet, frequentemente utilizamos o utilitário ping como um dos primeiros recursos de troubleshooting. O fato de um host não responder ao ping não quer dizer que ele esteja realmente fora da rede, pois este serviço pode estar desabilitado neste host por questões de segurança. O comando, provavelmente já conhecido pelo leitor, é:
ping
Exemplo:
[root@malkovich linux-2.6.3]# ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=127 time=4.22 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=127 time=1.02 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=127 time=1.01 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=127 time=1.99 ms
64 bytes from 192.168.0.1: icmp_seq=5 ttl=127 time=1.03 ms
--- 192.168.0.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4002ms
rtt min/avg/max/mdev = 1.019/1.857/4.221/1.241 ms
A resposta acima indica que o host 192.168.0.1 está disponível. No final algumas estatísticas de tempo e percentual de respostas positivas e negativas são apresentadas.
No exemplo seguinte vemos um caso em que não obtemos resposta do host.
[root@malkovich linux-2.6.3]# ping 192.168.0.2
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
--- 192.168.0.2 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3998ms
É chamado de cliente o host que inicia a comunicação, ou seja, a partir do qual o usuário executa o comando de teste de disponibilidade. Servidor é o alvo do teste, pois este deve possuir um serviço habilitado para ser capaz de receber o pacote do cliente e respondê-lo.
O cliente envia primeiro um pacote do tipo ICMP Echo Request, ou simplesmente ICMP Echo. Abaixo está a captura deste pacote na rede. Note o tipo do protocolo no cabeçalho IP (ICMP) e o tipo do pacote no cabeçalho ICMP (Echo request).
Internet Protocol, Src Addr: 192.168.0.2 (192.168.0.2), Dst Addr: 192.168.0.1 (192.168.0.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 84
Identification: 0x0000 (0)
Flags: 0x04
Fragment offset: 0
Time to live: 64
Protocol: ICMP (0x01)
Header checksum: 0xb955 (correct)
Source: 192.168.0.2 (192.168.0.2)
Destination: 192.168.0.1 (192.168.0.1)
Internet Control Message Protocol
Type: 8 (Echo (ping) request)
Code: 0
Checksum: 0x5905 (correct)
Identifier: 0x9409
Sequence number: 0x0001
Data (56 bytes)
Quando o servidor recebe este pacote ele responde com um pacote do tipo ICMP Echo Reply. Veja abaixo a captura deste pacote.
Internet Protocol, Src Addr: 192.168.0.1 (192.168.0.1), Dst Addr: 192.168.0.2 (192.168.0.2)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 84
Identification: 0xa078 (41080)
Flags: 0x00
Fragment offset: 0
Time to live: 127
Protocol: ICMP (0x01)
Header checksum: 0x19dd (correct)
Source: 192.168.0.1 (192.168.0.1)
Destination: 192.168.0.2 (192.168.0.2)
Internet Control Message Protocol
Type: 0 (Echo (ping) reply)
Code: 0
Checksum: 0x6105 (correct)
Identifier: 0x9409
Sequence number: 0x0001
Data (56 bytes)
Este processo se repete até que o usuário cancele o ping com um
Traceroute
Um dos campos do cabeçalho IP é chamado TTL - Time to Live - e determina por quantas passagens em roteadores este pacote pode sobreviver. A cada passagem em um roteador ou host este campo é decrementado de 1. Este mecanismo é utilizado para evitar que pacotes percorram a rede eternamente, rodando de um lado para outro. Verifique acima que o nosso pacote de ICMP Echo Request possui um TTL igual a 64. Se um pacote possui um TTL de 1 e este deve passar por um roteador antes de alcançar o seu destino final, este roteador irá descartá-lo ao verificar o TTL do pacote e retornar um pacote ICMP do tipo ICMP Time Exceeded para o host que o enviou. Neste pacote de resposta o roteador se identifica como origem da mensagem Time Exceeded. É nessa característica do protocolo que o utilitário traceroute se baseia para traçar uma rota entre dois pontos da rede.
Suponha que o host 1 esteja separado do host 2 por dois roteadores, chamados router A e router B. A partir do host 1 é executado um traceroute para o host 2. O utilitário cria um pacote UDP destinado ao host 2, mas configura o seu TTL para 1. O router A recebe este pacote e, apesar de saber para onde rotear o pacote, ao decrementar o TTL este torna-se 0 (zero) o que siginifica que este pacote deve ser descartado, retornando um ICMP Time Exceeded para o host 1. Quando o traceroute recebe esta resposta ele tem o endereço do primeiro roteador no caminho entre os dois hosts. O primeiro roteador é mostrado para o usuário.
Em seguida, o traceroute cria outro pacote UDP, com o TTL de 2. O pacote sobrevive ao primeiro roteador mas é descartado no segundo. Quando recebe o ICMP Time Exceeded do segundo roteador temos o endereço dele, que também é mostrado na saída do traceroute. O passo seguinte é um pacote com TTL de 3 o qual alcança o host 2. Os pacotes UDP são sempre enviados com uma porta de destino inválida, o que força que o host 2, ao receber o pacote, retorne um pacote ICMP Destination Unreachable. O traceroute sabe então que o caminho completo foi descoberto e mostra ao usuário o endereço do host 2, indicando que o trace foi finalizado.
Como ilustração, executei um traceroute do IP 192.168.1.2 (host virtual A) para o IP 192.168.0.1 (host C). Como roteador entre essas duas máquinas está um Linux (host B) com os IP 192.168.1.1 e 192.168.0.2. Portanto, o caminho do pacote deve ser A <-> B <-> C. O comando foi executado a partir de A:
[root@malkovich root]# traceroute -q 1 192.168.0.1
traceroute to 192.168.0.1 (192.168.0.1), 30 hops max, 38 byte packets
1 192.168.1.1 (192.168.1.1) 8.243 ms
2 192.168.0.1 (192.168.0.1) 12.298 ms
3 192.168.0.1 (192.168.0.1) 21.193 ms
A opção -q 1 é para que o traceroute envie apenas um pacote a cada interação, o default são 3. A opção -I também poderia ser usada para instruir que sejam usados pacotes ICMP Echo Request e não pacotes UDP.
A sequência de troca de pacotes é a seguinte:
Seq Source --> Destination Protocol Description
1 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33435 (TTL=1)
2 192.168.1.1 --> 192.168.1.2 ICMP Time-to-live exceeded
3 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33436 (TTL=2)
4 192.168.0.1 --> 192.168.1.2 ICMP Time-to-live exceeded
5 192.168.0.1 --> 192.168.1.2 ICMP Destination unreachable
6 192.168.1.2 --> 192.168.0.1 UDP Source Port: 33406 Destination Port: 33437 (TTL=3)
7 192.168.0.1 --> 192.168.1.2 ICMP Destination unreachable
É mostrado abaixo o primeiro pacote enviado pelo host A e descartado pelo roteador B.
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 38
Identification: 0x827f (33407)
Flags: 0x00
Fragment offset: 0
Time to live: 1
Protocol: UDP (0x11)
Header checksum: 0xb4f4 (correct)
Source: 192.168.1.2 (192.168.1.2)
Destination: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33435 (33435)
Source port: 33406 (33406)
Destination port: 33435 (33435)
Length: 18
Checksum: 0xa29f (correct)
Data (10 bytes)
Note o TTL 1 e a porta de destino. A esse pacote o roteador B responde:
Internet Protocol, Src Addr: 192.168.1.1 (192.168.1.1), Dst Addr: 192.168.1.2 (192.168.1.2)
Internet Control Message Protocol
Type: 11 (Time-to-live exceeded)
Code: 0 (Time to live exceeded in transit)
Checksum: 0x7777 (correct)
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33435 (33435)
Data (10 bytes)
Podemos confirmar o ICMP Time Exceeded aqui. Após a interação seguinte, o pacote chega ao destino. Como é uma porta inválida, o host 192.168.0.1 responde com um ICMP Destination Unreachable:
Internet Protocol, Src Addr: 192.168.0.1 (192.168.0.1), Dst Addr: 192.168.1.2 (192.168.1.2)
Internet Control Message Protocol
Type: 3 (Destination unreachable)
Code: 3 (Port unreachable)
Checksum: 0x48b6 (correct)
Internet Protocol, Src Addr: 192.168.1.2 (192.168.1.2), Dst Addr: 192.168.0.1 (192.168.0.1)
User Datagram Protocol, Src Port: 33406 (33406), Dst Port: 33436 (33436)
Veja que já no passo 5 há uma resposta de ICMP Destination Unreachable, como resposta ao pacote do passo 3, com TTL igual a 2. Entretanto, mesmo assim o traceroute inicia outra interação, enviando um pacote com TTL igual a 3. Isso aconteceu porque antes do ICMP Destination Unreachable ele recebeu, no passo 4, um ICMP Time Exceeded, o que gerou o envio imediato do terceiro pacote UDP.
Fonte: www.sounerd.com.br
Instalando impressoras da rede Windows no Linux
As vezes queremos instalar uma impressora que está em um PC rodando Windows. Como fazer isso???
Simples, utilizando o CUPS. O CUPS é um sistema de impressão para sistemas UNIX como os BSD, UNIX-like como o Linux e MacOS X, e tem como características interessantes:
1. Ser compatível com o protocolo IPP (Internet Printing Protocol)
2. Ser plug-and-play no lado cliente - basta configurar o servidor e instalar o CUPS nos clientes.
3. Suportar tanto impressoras PostScript como não-PS
A página oficial do CUPS está em www.cups.org e uma visita obrigatória deve ser feita a www.linunxprinting.org
Lembro apenas que é necessário ter o samba (cmbclient) e o cups instalado (Se o cliente for um GNOME, então é preciso apenas instalar o pacote gnome-cups-manager).
Abra o seu navegador e digite na barra de endereço:
http://localhost:631
Clique em "Manage Printers". Caso solicitado, entre com o usuário root e a senha.
Depois clique em "Add Printer" (está no canto inferior esquerdo).
Preencha o formulário: nome, localização e descrição (pode preencher com qualquer coisa, não faz diferença). Depois "Continue".
Agora na caixa "Device", vá na última opção do caixa combo: "Windows Printer via Samba". Depois "Continue".
Na caixa "Device URI", digite:
smb://guest@[Endereço da maquina]/[Nome da impressora].
Exemplo:
smb://guest@192.168.254.30/HP840C
Vamos aos significados:
1. "guest" = convidado (você pode colocar o nome de um usuário da máquina Windows XP , se preferir;
2. [Endereço da máquina]= pode ser o IP ou o nome da máquina. No caso de Ip, certifique-se que a máquina usa IP Fixo.
3. [Nome da Impressora] = certifique-se do nome dado ao "compartilhamento" da impressora no Windows.
Agora basta escolher a marca da impressora, e pronto.
Caso você não encontre sua impressora, procure instalar uma genérica. Mesmo assim havendo dificuldades com a marca da impressora, visite: www.linuxprinting.org, baixe o driver e siga as orientações de instalação.
Instalei no meu note a ML-2010 compartilhada no desktop em rede rodando XP por este método e funcionou perfeitamente.
-- Outras opções que achei:
Uma das características do Windows XP é o suporte ao IPP, no entanto esta característica está inexplicavelmente escondida. E o mais incrível: configurar uma impressora IPP no XP é muito fácil. Vamos lá: (estamos utilizando o XP em Português)
1. Abra o Assistente para Adicionar Impressora. Avance.
2. Escolha "Uma impressora de rede, ou uma impressora conectada a outro computador". Avance.
3. Escolha "Conectar-se a uma impressora na Internet ou em uma rede doméstica ou no escritório". Vai abrir uma caixa de texto. Digite:
http://URL-ou-IP-do-seu-servidor-com-CUPS:631/printers/nome-da-impressora
por exemplo, http://pinguimlouco.exemplo.com.br:631/printers/impressora_bem_cara. Avance.
4. Uma outra janela vai se abrir, pedindo o driver da impressora. Instale-o e Avance.
5. Você vai ser perguntado se a sua nova impressora vai ser o padrão do sistema ou não.
Pronto, impressora instalada!
Podemos utilizar também no terminal:
smb://guest:guest@[Endereço da maquina]/[Nome da impressora]
em vez de somente
smb://guest@[Endereço da maquina]/[Nome da impressora]
Fonte: http://www.vivaolinux.com.br/
Simples, utilizando o CUPS. O CUPS é um sistema de impressão para sistemas UNIX como os BSD, UNIX-like como o Linux e MacOS X, e tem como características interessantes:
1. Ser compatível com o protocolo IPP (Internet Printing Protocol)
2. Ser plug-and-play no lado cliente - basta configurar o servidor e instalar o CUPS nos clientes.
3. Suportar tanto impressoras PostScript como não-PS
A página oficial do CUPS está em www.cups.org e uma visita obrigatória deve ser feita a www.linunxprinting.org
Lembro apenas que é necessário ter o samba (cmbclient) e o cups instalado (Se o cliente for um GNOME, então é preciso apenas instalar o pacote gnome-cups-manager).
Abra o seu navegador e digite na barra de endereço:
http://localhost:631
Clique em "Manage Printers". Caso solicitado, entre com o usuário root e a senha.
Depois clique em "Add Printer" (está no canto inferior esquerdo).
Preencha o formulário: nome, localização e descrição (pode preencher com qualquer coisa, não faz diferença). Depois "Continue".
Agora na caixa "Device", vá na última opção do caixa combo: "Windows Printer via Samba". Depois "Continue".
Na caixa "Device URI", digite:
smb://guest@[Endereço da maquina]/[Nome da impressora].
Exemplo:
smb://guest@192.168.254.30/HP840C
Vamos aos significados:
1. "guest" = convidado (você pode colocar o nome de um usuário da máquina Windows XP , se preferir;
2. [Endereço da máquina]= pode ser o IP ou o nome da máquina. No caso de Ip, certifique-se que a máquina usa IP Fixo.
3. [Nome da Impressora] = certifique-se do nome dado ao "compartilhamento" da impressora no Windows.
Agora basta escolher a marca da impressora, e pronto.
Caso você não encontre sua impressora, procure instalar uma genérica. Mesmo assim havendo dificuldades com a marca da impressora, visite: www.linuxprinting.org, baixe o driver e siga as orientações de instalação.
Instalei no meu note a ML-2010 compartilhada no desktop em rede rodando XP por este método e funcionou perfeitamente.
-- Outras opções que achei:
Uma das características do Windows XP é o suporte ao IPP, no entanto esta característica está inexplicavelmente escondida. E o mais incrível: configurar uma impressora IPP no XP é muito fácil. Vamos lá: (estamos utilizando o XP em Português)
1. Abra o Assistente para Adicionar Impressora. Avance.
2. Escolha "Uma impressora de rede, ou uma impressora conectada a outro computador". Avance.
3. Escolha "Conectar-se a uma impressora na Internet ou em uma rede doméstica ou no escritório". Vai abrir uma caixa de texto. Digite:
http://URL-ou-IP-do-seu-servidor-com-CUPS:631/printers/nome-da-impressora
por exemplo, http://pinguimlouco.exemplo.com.br:631/printers/impressora_bem_cara. Avance.
4. Uma outra janela vai se abrir, pedindo o driver da impressora. Instale-o e Avance.
5. Você vai ser perguntado se a sua nova impressora vai ser o padrão do sistema ou não.
Pronto, impressora instalada!
Podemos utilizar também no terminal:
smb://guest:guest@[Endereço da maquina]/[Nome da impressora]
em vez de somente
smb://guest@[Endereço da maquina]/[Nome da impressora]
Fonte: http://www.vivaolinux.com.br/
Instalando a ML-2010 da Samsung no Fedora 12
Apesar de possuir vários drivers para impressoras, não encontrei o driver para a ML-2010 da Samsung, uma ótima (e barata...) impressora Laser. No link abaixo, tem os arquivos rpm para instalação, tanto 32 e 64 bits:
http://www.openprinting.org/printer/Samsung/Samsung-ML-2010
Instalei a minha e funciona perfeitamente!
http://www.openprinting.org/printer/Samsung/Samsung-ML-2010
Instalei a minha e funciona perfeitamente!
Usar Linux???
Sou um usuário Windows praticamente desde que ele surgiu. Passei a utilizá-lo a partir da versão 3.1, e então temos visto o Windows dominar o mercado de S.O. no segmento de PC's.
Já tinha utilizado o Linux uns tempos atrás, mas não me envolvi muito, pois os softs disponíveis eram poucos, difíceis de instalar e remover. Era a maior dificuldade de se instalar um soft qualquer, ao contrário do Windows, onde só clicamos e alguns instantes depois já está lá no menu, pronto para ser utilizado!
Uns dias atrás instalei o Fedora core 12. Confesso que fiquei surpreso com as mudanças e melhoria no uso. Claro que a escolha da distribuição a usar é extremamente pessoal, mas sempre tive uma queda pelo Fedora. E gostei muito. Claro que não é como no Windows (que está muito bom na versão Windows 7) com toda sua parafernália visual e as toneladas de aplicativos e jogos disponíveis para a plataforma Windows.
Ser usuário Linux ainda é ter um pouco de trabalho para se configurar e usar. Alguns codecs são complicados para se achar e instalar (como os de MP3 por exemplo); mas acredito que o resultado final é bom. Afinal de contas o Linux é para aqueles que não querem que o SO faça tudo por nós. Queremos ter mais controle sobre a máquina e não apenas "dar uns cliques e... Voilá! Presto!"
O número de aplicações para o Linux aumentou considerávelmente. Não sinto falta de quase nada do que uso no meu Windows 7 ou mesmo no bom e velho XP. Ainda continuarei a usá-los, mas, estou utilizando mais o Linux, e torcendo para que com o passar do tempo se torne o que o Windows é hoje!
Postarei aqui para meu uso futuro e para todos que precisarem tudo que eu utilizar e ler sobre o Linux, pois as vezes é muito difícil garimpar pela Net, e juntando aqui tudo que eu acho, ficará mais fácil para futuras utilizações e dúvidas! Espero que seja útil para quem necessitar. Fiquem a vontade!
Já tinha utilizado o Linux uns tempos atrás, mas não me envolvi muito, pois os softs disponíveis eram poucos, difíceis de instalar e remover. Era a maior dificuldade de se instalar um soft qualquer, ao contrário do Windows, onde só clicamos e alguns instantes depois já está lá no menu, pronto para ser utilizado!
Uns dias atrás instalei o Fedora core 12. Confesso que fiquei surpreso com as mudanças e melhoria no uso. Claro que a escolha da distribuição a usar é extremamente pessoal, mas sempre tive uma queda pelo Fedora. E gostei muito. Claro que não é como no Windows (que está muito bom na versão Windows 7) com toda sua parafernália visual e as toneladas de aplicativos e jogos disponíveis para a plataforma Windows.
Ser usuário Linux ainda é ter um pouco de trabalho para se configurar e usar. Alguns codecs são complicados para se achar e instalar (como os de MP3 por exemplo); mas acredito que o resultado final é bom. Afinal de contas o Linux é para aqueles que não querem que o SO faça tudo por nós. Queremos ter mais controle sobre a máquina e não apenas "dar uns cliques e... Voilá! Presto!"
O número de aplicações para o Linux aumentou considerávelmente. Não sinto falta de quase nada do que uso no meu Windows 7 ou mesmo no bom e velho XP. Ainda continuarei a usá-los, mas, estou utilizando mais o Linux, e torcendo para que com o passar do tempo se torne o que o Windows é hoje!
Postarei aqui para meu uso futuro e para todos que precisarem tudo que eu utilizar e ler sobre o Linux, pois as vezes é muito difícil garimpar pela Net, e juntando aqui tudo que eu acho, ficará mais fácil para futuras utilizações e dúvidas! Espero que seja útil para quem necessitar. Fiquem a vontade!
quinta-feira, 11 de março de 2010
XMMS no Linux
Instalando Skins no XMMS
O Xmms, ou X MultiMedia System, é o clone do Winamp para Linux. Altamente personalizável, possui seus próprios skins e plugins, além de ser totalmente compatível com os skins do Winamp, o que já aumenta em muito o seu poder de personalização.
Existem vários sites com skins para Xmms. Os principais são o próprio site oficial, Xmms.org , o site oficial do Winamp e os sites Skinz.org e Customize.org .
Para instalá-los, faça o download do Skin desejado no diretório ~/.xmms/Skins no home do usuário.
(Esta pasta é um diretorio oculto no diretorio /home do usuario).
Não é necessário descompactar o arquivo, o Xmms aceita os skins nos formatos .tar.gz e .zip.
Nota: Os skins do site do Winamp possuem a extensão .wsz, porém não passam de arquivos “zipados”. Na hora de fazer o download salve o arquivo como .zip, ao invés de .wsz.
Feito isso, basta abrir a janela de skins (Alt+S) e escolher seu skin
Instalando os presets do XMMS
Você pode baixar presets no proprio site do XMMS.
Para baixa-lo. Abra um terminal e digite:
wget http://www.xmms.org/misc/winamp_presets.gz
Copie e descompacte o arquivo para a pasta ~/.xmms
Instalando Plugins
O Xmms possui vários plugins, que podem ser obtidos em seu site oficial. Para instalar os plugins basta copialá-los para a pasta ~/.xmms/plugins. Faça o download do plugin, descompacte-o com o comando tar xvzf plugin.tar.gz. Para ativar o pluguin vá até as preferências do Xmms (Ctrl+P), na aba General plugins, e marque a caixa “Ativar plugin”.
Como exemplo instalaremos um plugin para visualizar no aMSN as musicas que estão sendo executada no XMMS.
Para isso baixe um plugin para o aMSN chamado MUSIC.
http://ufpr.dl.sourceforge.net/sourceforge/amsn/music-1.3.zip
Descompacte seu conteúdo e mova para pasta ~/.amsn/plugins/.
Acesse o menu Account e Select Plugins
Selecione o plugin e clique em configure e escolha seu player.
Para ativar o pluguin vá até as preferências do Xmms (Ctrl+P), na aba General plugins, e marque a caixa “Ativar plugin”.
Fonte: Blog Etilico
O Xmms, ou X MultiMedia System, é o clone do Winamp para Linux. Altamente personalizável, possui seus próprios skins e plugins, além de ser totalmente compatível com os skins do Winamp, o que já aumenta em muito o seu poder de personalização.
Existem vários sites com skins para Xmms. Os principais são o próprio site oficial, Xmms.org , o site oficial do Winamp e os sites Skinz.org e Customize.org .
Para instalá-los, faça o download do Skin desejado no diretório ~/.xmms/Skins no home do usuário.
(Esta pasta é um diretorio oculto no diretorio /home do usuario).
Não é necessário descompactar o arquivo, o Xmms aceita os skins nos formatos .tar.gz e .zip.
Nota: Os skins do site do Winamp possuem a extensão .wsz, porém não passam de arquivos “zipados”. Na hora de fazer o download salve o arquivo como .zip, ao invés de .wsz.
Feito isso, basta abrir a janela de skins (Alt+S) e escolher seu skin
Instalando os presets do XMMS
Você pode baixar presets no proprio site do XMMS.
Para baixa-lo. Abra um terminal e digite:
wget http://www.xmms.org/misc/winamp_presets.gz
Copie e descompacte o arquivo para a pasta ~/.xmms
Instalando Plugins
O Xmms possui vários plugins, que podem ser obtidos em seu site oficial. Para instalar os plugins basta copialá-los para a pasta ~/.xmms/plugins. Faça o download do plugin, descompacte-o com o comando tar xvzf plugin.tar.gz. Para ativar o pluguin vá até as preferências do Xmms (Ctrl+P), na aba General plugins, e marque a caixa “Ativar plugin”.
Como exemplo instalaremos um plugin para visualizar no aMSN as musicas que estão sendo executada no XMMS.
Para isso baixe um plugin para o aMSN chamado MUSIC.
http://ufpr.dl.sourceforge.net/sourceforge/amsn/music-1.3.zip
Descompacte seu conteúdo e mova para pasta ~/.amsn/plugins/.
Acesse o menu Account e Select Plugins
Selecione o plugin e clique em configure e escolha seu player.
Para ativar o pluguin vá até as preferências do Xmms (Ctrl+P), na aba General plugins, e marque a caixa “Ativar plugin”.
Fonte: Blog Etilico
Iniciando....
Bom, após visitar um blog onde o autor o utilizava para compartilhar informações com os visitantes e com ele mesmo (???)- isto é, ele utiliza o blog como um repositório para suas pesquisas e o que ele via pela net para posterior uso, como se fosse um depósito de informações on-line - resolví fazer o mesmo.
Afinal de contas, entre outras coisas, quem nunca perdeu um artigo ou uma dica importante no meio de tantos DVD's, Cd's e outras midias mais, justo na hora em que mais se precisa dela?
Então, vamos lá ver o que vira este arrêmedo de Blog nas mãos deste inexperiente bloggeiro!
Boa sorte aos visitantes e aos navegantes perdidos que aqui passarem...
Afinal de contas, entre outras coisas, quem nunca perdeu um artigo ou uma dica importante no meio de tantos DVD's, Cd's e outras midias mais, justo na hora em que mais se precisa dela?
Então, vamos lá ver o que vira este arrêmedo de Blog nas mãos deste inexperiente bloggeiro!
Boa sorte aos visitantes e aos navegantes perdidos que aqui passarem...
Assinar:
Postagens (Atom)
