30 de novembro de 2010

FTP

FTP

A necessidade de se compartilhar arquivos entre diversos computadores através da internet ou mesmo de uma intranet é bastante comum. Uma das formas mais comuns de se fazer isso é através do protocolo FTP. Uma das grandes vantagens do FTP sobre o compartilhamento de diretórios do sistema de arquivos é o fato dele possuir mecanismos de autenticação e controle de acesso mais apropriados para acessos remotos, especialmente no contexto da internet.

FTP significa File Transfer Protocol (Protocolo de Transferência de Arquivos). É uma forma bastante rápida e versátil de transferir arquivos entre duas máquinas: cliente e servidor. Uma vez conectado ao servidor, um cliente pode realizar uma série de tarefas como downloads e uploads de arquivos, renomear e/ou deletar arquivos no servidor, entre outras. É um protocolo aberto e independente de hardware e do sistema operacional.

O FTP funciona sobre TCP, e por padrão os servidores atendem às requisições na porta 21. É através dessa conexão que o cliente envia comandos ao servidor. Entretanto, os dados são enviados por outra porta, de duas maneiras distintas.

A primeira forma de envio é chamada de FTP ativo. Nesse modo, o cliente abre uma porta alta (>1023), envia ao servidor o número desta porta e aguarda uma conexão do mesmo. A conexão parte da porta 20 do servidor e é direcionada a essa porta. Observe que neste caso temos um problema em potencial no cliente: A conexão originada pelo servidor e direcionada à uma porta alta no cliente poderá ser barrada por um firewall localizado neste cliente.

A outra forma é o FTP passivo. Neste caso, é o servidor que abre uma porta alta (>1023) e envia seu número ao cliente, aguardando uma conexão do mesmo. A conexão se origina numa porta alta do cliente e se destina a essa porta informada pelo servidor. Nesse caso, não temos mais o problema do firewall do cliente. Na verdade, apenas transferimos o problema para o lado do servidor. Felizmente, a maioria dos servidores FTP permitem especificar a faixa de portas utilizadas no modo passivo, minimizando o problema.

Entretanto, o problema mais sério do FTP é o fato de que os arquivos, logins e inclusive senhas são transmitidas sem criptografia. O uso do FTP deve ser feito em ambiente restrito/controlado ou ainda abertamente através da internet somente para o caso de logins anônimos.

Servidor FTP

Verifique se você possui o servidor proftpd instalado em seu sistema:

# dpkg -l proftpd

Caso seja necessário, instale-o:

# aptitude install proftpd

Escolha a opção standalone para fazer com que o ProFTPD use um daemon próprio.






Para configurar o seu servidor FTP, edite o arquivo de configuração e altere as diretivas listadas a seguir:

# vim /etc/proftpd/proftpd.conf

a) Para trabalhar em modo standalone:

ServerType standalone

b) Defina o valor padrão de UMASK para gravação:

umask 022

c) Defina o número máximo de logins simultâneos:

MaxInstances 20

d) Defina a home do usuário como sendo o diretório raiz:

DefaultRoot ~

e) Habilite até 5 conexões de usuários anonymous:

MaxClients 5

Cada usuário do ftp pode ter uma mensagem de login diferente. Crie o arquivo welcome.msg na home do usuário. Você pode usar o arquivo de boas vindas para logins
anônimos /home/ftp/welcome.msg como base:

# cp /home/ftp/welcome.msg /home/USER
# vim /home/USER/welcome.msg

Ative seu servidor Proftpd:

# /etc/init.d/proftpd stop
# /etc/init.d/proftpd start

Verifique se a pilha TCP notifica que a porta do FTP está ouvindo:

# netstat -ntpl
Verifique qual processo está ouvindo na porta do FTP:

# fuser -v 21/tcp
Combine com o colega ao lado para que ele realize conexões em seu servidor FTP, e acompanhe as atividades de transferência de arquivos que serão feitas em seguida pelo arquivo de log xferlog. Num terminal separado, digite:

# tail -f /var/log/proftpd/xferlog
Conectando-se a um servidor FTP como cliente

Um servidor FTP pode ser usando de duas formas:

Tradicional: Neste formato, o servidor aceita conexões de um usuário e senha válidos para liberar um shell para ele.

Anonymous: O Servidor FTP com anonymous é muito utilizado na Internet pelo motivo de não ser necessário ter um usuário no servidor. Desta forma, o usuário pode abrir um browser e chamar o endereço ftp://servidor para ter acesso ao diretório disponibilizado pelo serviço. Geralmente, esse diretório é o home do usuário FTP que no Debian é /home/ftp.

Conecte-se a um servidor ftp da forma tradicional. Forneça um usuário e senha válidos:

# ftp IP
Verifique se a conexão foi bem sucedida e encerre a sessão. Em breve iremos abrir uma nova para exercitar mais comandos:

ftp> quit
Agora conecte-se como um usuário anônimo no servidor instalado na sua própria máquina. A sintaxe do comando é a mesma, entretanto você deverá fornecer o login anonymous e uma senha qualquer. Verifique cuidadosamente se a conexão foi aceita:

# ftp localhost
Connected to localhost.
220 ProFTPD 1.3.0 Server (Debian) [::ffff:127.0.0.1]
Name (localhost:aluno): anonymous
331 Password required for anonymous.
Password:

Por que a conexão foi recusada? Estaria a senha incorreta?

Devemos antes liberar o acesso anônimo ao servidor! Edite o arquivo /etc/proftpd/proftpd.conf, e descomente as linhas referentes a seção Anonymous. Esta seção está localizada aproximadamente entre as linhas 100 e 140 do arquivo de configuração original:


User ftp
Group nogroup

...



Reinicie novamente o serviço para que as alterações tenham efeito:

# /etc/init.d/proftpd restart


Tente novamente a conexão como usuário anônimo. Agora deverá funcionar. Veja o quadro abaixo:

# ftp localhost
Connected to localhost.
220 ProFTPD 1.3.0 Server (Debian) [::ffff:127.0.0.1]
Name (localhost:aluno): anonymous
331 Password required for anonymous.
Password:
331 Anonymous login ok, send your complete email address as your password.
Password:
230-Welcome, archive user anonymous@localhost !

Continue logado como usuário anônimo. Iremos fazer alguns testes a seguir.


Comandos FTP


Os servidores de FTP muito raramente mudam, mas novos programas clientes FTP aparecem com bastante regularidade. Estes clientes variam no número de comandos que implementam. A maioria dos clientes FTP comerciais implementam apenas um pequeno subgrupo de comandos FTP. Mesmo que o FTP seja um protocolo orientado à linha de comandos, a nova geração dos clientes FTP esconde esta orientação num ambiente gráfico muitas vezes bastante desenvolvido.

As interfaces clientes do FTP do BSD UNIX e do GNU/Linux possuem muitos comandos, alguns deles arcaicos e sem utilidade hoje em dia, como por exemplo o tenex e o carriage control. Já outros são bastante utilizados: cd, dir, ls, get, mget, put e mput.

Abaixo estão listados alguns dos mais utilizados comandos FTP:

help - Lista os comandos disponíveis. Um sinônimo é ?
help CMD - Mostra uma ajuda para o comando CMD
ls - Lista os arquivos no servidor. Um sinônimo é dir
cd - Troca de diretório no servidor
lcd - Troca de diretório da máquina local
!ls - Lista os arquivos da máquina local
!CMD - Executa na máquina local o comando CMD
get - Faz download de um arquivo do servidor para a máquina local.
mget - Faz download de mais de um arquivo.
put - Faz upload de um arquivo da máquina local para o servidor.
mput - Faz upload de mais de um arquivo.

Logado como usuário anônimo vamos fazer alguns testes:

Liste o conteúdo do servidor:

ftp> ls


Liste o conteúdo do seu diretório local:

ftp> !ls




Faça o download de algum arquivo:

ftp> get ARQUIVO


Verifique se o arquivo foi copiado:

ftp> !ls


Tente agora fazer o upload de um arquivo:

ftp> put ARQUIVO


Por padrão, usuários anônimos não devem ter permissão para fazer upload de arquivos.

Encerre a sessão e logue-se em seguida como um usuário válido no servidor FTP da máquina de algum colega:

ftp> quit

221 Goodbye.

# ftp IP

Tente agora fazer o upload do arquivo. Deverá funcionar desta vez:

Faça o download de vários arquivos:

ftp> mget *


Note que é exigida a confirmação para cada arquivo copiado, o que pode ser incômodo. Desligue o modo interativo, e tente novamente:

ftp> prompt

Interactive mode off.
ftp> mget *

Faça o upload de vários arquivos:

ftp> mput *


Verifique o log de atividade do FTP:

# less /var/log/proftpd/xferlog

28 de novembro de 2010

Atravesse o pacífico com um jet ski

Um amigo me mandou os seguintes dizeres no e-mail:

    “Entre no google maps e no ponto A coloque Japan, no B coloque China, São inumeros passos, Mas LEIA o nº 43?..

    Vou deixar a curiosidade de vcs leitores para terem um ataque de risos! (Muito hilario)





Comédiaaaa. Cruze o pacífico com um jet ski. rsrsrsrs. May loko que o batma esse google maps

Fonte: Vida de suporte

26 de novembro de 2010

Assinatura de email no Thunderbird

Eae galerê! tudo bem?

Bom, estou meio de saco cheio de ficar repetindo como inserir assinatura de email no thunderbird para clientes, para meus familiares, para meus amigos, para meus colegas, para  enfim... pra todo mundo que me pergunta. Só essa semana eu fiz isso 7 vezes. Demorei cerca de 40 minutos em cada inclusão de assinatura. Se eu fosse fazer na mão demoraria 2 minutos no máximo, cada inclusão. Na ESPN, às vezes eu ajudava o suporte  técnico de lá a adicionar as assinaturas. Eram 200 assinaturas por dia, isso porque eu ajudava ele. Se eu ficasse o dia inteiro fazendo seriam mils por dia. E como é uma coisa muitooooo boba, acho que seria legal eu expor aqui para a galerê que tá com dúvida. Então, é melhor colocar um "tutorial" aqui e depois falar pro povo ir no meu blog e seguir.

Você pode ter a sua assinatura de duas formas: jpg ou html


JPG
Na opção um você deve ter a sua assinatura em formato de imagem (de preferência jpg). Depois abra seu Thunderbird clique em Edit --> Account Settings (ou se o seu Thunderbird estiver em português.. Ferramentas --> configurações de contas).

Próximo passo é clicar em cima da sua conta de email, logo após clique em Attach this signature (ou em português, adicione a sua assinatura) e escolha a sua assinatura em formato .jpg. Pronto está feito.



HTML
Na opção 2 você escreve um código html e na img src você tem que colocar o caminho absoltuto inteiro. Muita gente escreve o html errado colocando o caminho relativo do arquivo.
Para adicionar é o mesmo passo a passo. A diferença é que muda de jpg para htm. Para o Thunderbird compreender onde está a sua imagem, você deve escrever na img src o seguinte:
[file:///home/sabino/img.jpg]

Se a sua imagem estiver na internet
[http://www.sabinux.com/img.jpg]

Abraços
Espero ter ajudado com essa dica!