Archive for junho \30\-02:00 2009

session setup failed: ERRDOS – ERRnoaccess (Access denied.)

Posted on junho 30, 2009. Filed under: Linux |

Algumas vezes quando tentamos montar um compartilhamento windows com ‘mount -t smbfs’ acontece o erro:

# mount -t smbfs -o username=usertest,password=pass //ip-server/share /mnt/windows

session setup failed: ERRDOS – ERRnoaccess (Access denied.)
SMB connection failed

Para solucionar essa questão, adicione o domínio no username, da seguinte maneira: ‘username=usertest/domain’, ou caso queria fazer o logon local, no lugar do domínio use o número ip do servidor. Seguem os exemplos:

1) Logon no domínio:
# mount -t smbfs -o username=usertest/domain,password=pass //ip-server/share /mnt/windows

2) Logon Local:
# mount -t smbfs -o username=usertest/ip-server,password=pass //ip-server/share /mnt/windows

Caso você queira proteger o usuário e senha colocando-os em um arquivo protegido, ao montar o compartilhamento você deve setar a opção ‘workgroup’. Seguem os exemplos:

1) Linha de comando:

# mount -t smbfs -o workgroup=domain,credentials=/root/.smbpass //ip-win-server/share /mnt/windows

2) /etc/fstab

//ip-win-server/share /mnt/windows smbfs workgroup=domain,credentials=/root/.smbpass 0 0

Ao invés do logon no domínio, você queira fazer o logon local, basta substituir o domínio pelo ip do servidor na opção ‘workgroup’.

Ler Post Completo | Make a Comment ( 1 so far )

Protegendo credenciais ao montar compartilhamentos via smb

Posted on junho 26, 2009. Filed under: Linux |

Nesse artigo vou demonstrar como proteger o seu dados de autenticação ao montar compartilhamentos do Windows que necessitam de login. Muitas vezes precisamos criar scripts automatizados que acessam compartilhamentos windows ou mesmo configurar o /etc/fstab para facilitar a montagem ou deixar o processo automatico ao iniciar o sistema operacional. O processo de montagem é bem simples. Ao montar o compartilhamento informamos o usuário e senha no comando. Porém é uma prática insegura, pois deixa o usuário/senha à mostra, dentro de um shell script ou na linha de comando. Para montar um compartilhamento com senha fazemos o seguinte:

# mount -t cifs -o username=usuario,password=senha //ip-servidor/dir-compartilhado /mnt/windows

Atenção: o diretório /mnt/windows, usado no exemplo, deve estar criado.

Como já dissemos anteriormente, esta é uma prática insegura. Para proteger seu usuário/senha, crie um arquivo (Ex: /root/.smbsenha) e coloque os dados:

username=usuario
password=senha

Não se esqueça de proteger o arquivo contra leitura de outros usuários que não sejam root.

# chmod 600 /root/.smbsenha

Pronto. Para montar o compartilhamento usuando o arquivo com as credenciais, execute:

# mount -t cifs -o credentials=/root/.smbsenha //ip-servidor/dir-compartilhado /mnt/windows

Para adicionar a mesma configuração no fstab:

//ip-servidor/dir-compartilhado /mnt/windows cifs credentials=/root/.smbsenha 0 0

Bem simples, não ?

Ler Post Completo | Make a Comment ( None so far )

Usando nc (netcat) para enviar emails via shell script

Posted on junho 20, 2009. Filed under: Linux |

O comand nc (netcat) é um utilitário usado para trabalhar com conexões dos protocolos tcp e udp. Nesse artigo vou mostrar como enviar emails diretamente para servidores de email utilizando a porta 25 (smtp).

Por padrão o comando nc não envia CRLF ao final de cada linha. Em servidores Linux geralmente isso não é problema, mas muitos serviços requerem o envio de CRLF ao final de cada linha.

Segue abaixo um exemplo do envio de email usando nc em um servidor Linux, onde não há necessidade do envio de CRLF no final de cada linha. Isso funciona perfeitamente em seu script shell:

# nc localhost 25 << EOF
HELO host.example.com
MAIL FROM: teste@example.com
RCPT TO: guest@example.com
DATA
Corpo do Email
.
QUIT
EOF

Em servidores Windows, Exchange por exemplo, é necessário o envio de CRLF ao final de cada linha. Para que funcione, vamos usar o comando ‘echo’ enviando os caractéres “\r\n” ao final de cada linha. Perceba que usamos o parâmetro ‘-C’ no comando nc, que envia CRFL ao final da linha.

echo -ne "HELO smtpexchange.com\r\nMAIL FROM:teste@example.com\r\nRCPT TO:guest@example.com\r\nDATA\r\nSubject: Assunto\r\n\r\nCorpo da Mensagem\r\n\n.\n" | nc -C smtpexchange.com

Ler Post Completo | Make a Comment ( None so far )

Zend_Amf e Módulos Flex 3, usando RemoteObject

Posted on junho 5, 2009. Filed under: Flex, PHP, Zend Framework |

Recentemente tive um problema de comunicação entre o Flex 3 e o componente Zend_Amf do Zend Framework. Estou trabalhando em um sistema modular com o flex no frontend acessando o Zend Framework no backend através do RemoteObject. O problema ocorria quando tentava usar o RemoteObject dentro de um módulo flex. Após carregar o módulo, executava-se a função init() definido no atributo “creationComplete”. O método init() realizava o request remoto e carrega combox e grids. Porem ocorria falhas frequentes ao tentar receber os dados da requisição. Debugando o Zend_Amf, recebia a seguinte mensagem:

“[RPC Fault faultString=”Method “null” does not exist” faultCode=”0″ faultDetail=”#0 /usr/share/php/Zend/Amf/Server.php(268): Zend_Amf_Server->_dispatch(‘null’, Object(stdClass))..”

Para corrigir o problema foi necessário acrescentar a linha abaixo dentro do método init():

registerClassAlias("flex.messaging.messages.RemotingMessage", mx.messaging.messages.RemotingMessage);

Por padrão o ‘flex.messaging.messages.RemotingMessage’ não foi registrado no módulo. Devido a isso não aconteciam o mapeamento correto no Zend_Amf.

Foi necessário também adicionar o import:

import mx.messaging.messages.RemotingMessage;

Após isso não houve mais problemas.

Ler Post Completo | Make a Comment ( None so far )

Exportando Display do Linux para o Windows

Posted on junho 2, 2009. Filed under: Linux |

Para aqueles que trabalham em estações Windows e por alguma necessidade precisam receber o display de aplicações gráficas do Linux, eis aqui a solução.
Um exemplo bem prático, é você estar conectado via ssh ( putty) em um servidor Linux e precisa usar uma aplicação gráfica. Lembrando que não é possível rodar aplicações gráficas por ssh, uma alternativa é exportar o Display para abrir a aplicação em uma outra máquina Linux rodando o X, ou para abrir em uma estação rodando Windows, situação que nos interessa. Para isso você precisará de um XServer em seu Windows.

O XServer no Windows pode ser instalado através do projeto chamado Xming:
http://sourceforge.net/projects/xming.

A instalação é bem simples. Para facilitar habilite a opção para criar o short cut no Desktop. Após a instalação clique no short cut com o botão direito e adicione o parâmetro ‘-ac’ ao final da lista de parâmetros. Por padrão deve estar da seguinte forma: ‘:0 -clipboard -multiwindow’. Após a alteração, será: ‘:0 -clipboard -multiwindow -ac’

A opção ‘-ac’ irá permitir acesso de qualquer host remoto que queira conectar. Não é uma opção segura, evite usar em redes públicas.

Para uma configuração mais segura, verifique o link abaixo:
http://www.straightrunning.com/XmingNotes/trouble.php#head-11

Tudo certo no Windows, vamos ao Linux. Exporte o Display:

# export DISPLAY=”enderecoip:0.0″

enderecoip deve ser o ip da sua estação Windows. O Xming abrirá a porta 6000 no seu Windows. Portanto é necessário a porta esteja livre de firewalls entre o Linux e sua estação Windows.

Pronto, basta executar no Linux os comandos de interface gráfica que deseja e pronto:

# xterm

Ler Post Completo | Make a Comment ( None so far )

Museu do PHP

Posted on junho 1, 2009. Filed under: PHP |

Para aqueles que são fãs do PHP, o site do php.net disponiliza um link onde é possível encontrar todas as versões do php, desde á primeira, com código fonte ou binário. Para aqueles mais novos, é curioso observar a evolução da linguagem. Já para os veteranos é possível matar a saudades das versões mais antigas. Segue abaixo o link:

http://museum.php.net

Ler Post Completo | Make a Comment ( None so far )

Liked it here?
Why not try sites on the blogroll...

%d blogueiros gostam disto: