Executando Aplicações X11 remotas por ssh

Tags: , , — July 3, 2008 @ 2:24 pm

Já pensou na possibilidade de executar seus programas preferidos, instalados em seu computador de casa, a partir de seu computador do trabalho? Não apenas executar o mesmo programa, mas sim com todas as configurações, local de execução e acesso aos arquivos de seu pc de casa, sem precisar ter o mesmo programa instalado no trabalho.

O SSH, ou Secure Shell, é um aplicativo Unix que permite acesso remoto, por terminal, a outros computadores. Porém, o proŕio SSH tem uma opção de tunelar o X Server, possibilitando a execução de aplicativos X11 remotos.

Já a algum tempo eu sabia que era possível fazer esse tunelamento para executar aplicativos X remotos por ssh, mas ainda não havia pesquisado a respeito. Foi então que ontem me surgiu a idéia de rodar os programas que tenho no trabalho (principelmente o Eclipse IDE) para desenvolver a partir de casa, sem precisar copiar todos os fontes ou montardiretórios remotos, e então acabei me surpreendendo com a facilidade disto.

A maioria dos usuários GNU/Linux devem estar acostumados a acessar máquinas remotas por ssh, com comandos como:

ssh user@server.com

ou

ssh -p 22 -l user 192.168.1.1

Nos exemplos acima exibo dois modos básicos para conexões com ssh. a opção -p é necessária apenas caso o servidor remoto ou cliente nãoestejam usando portas padrões para o SSH, a opção -l serve para definir o usuário a logar no servidor remoto, sendo necessário apenas quando os nomes de usuários no servidor e cliente não coincidem, e é equivalente a utilizar user@ antes doendereço do servidor, que pode ser um endereço de ip, ou um nome de domínio.

Agora, para tunelar o X server basta adicionar a opção -X a linha de comando:

ssh -p 22 -l user -X 192.168.1.1

Assim, uma vez conectado ao servidor remoto, basta executar qualquer aplicação normalmente, que as janelas destas gerão criadas em sua máquina local. Veja o screenshot de exemplo:

Aplicações X remotas, rodando através de ssh -X lBreackout2 e Wine Notepad

No primeiro screenshot acima, estão sendo executados localmente (em meu computador de trabalho)  o terminal, com a sessão ssh aberta, o monitor de sistema GKrellm (a direita), o gerenciador de arquivos Thunar, e a calculadora Galculator, acima da qual está um outra calculadora sendo executada a partir do computador remoto (meu laptop, em casa, conectado através de uma rede sem fio de longa distância), note a diferença no tema do GTK2, e mais acima está o aplicativo Eye of Gnome, o qual tenho instalado apenas no Notebook.

No segundo Screenshot estou executando o jogo lBreakout2 e o Wine Notepad (um clone do editor Notepad do windows, para Wine), demonstrando como é possível rodar praticamente qualquer aplicativo remoto, é possivel inclusive executar um gerenciador de janelas ou desktop inteiramente.

Diferente do VNC, que geralmente se conecta a uma sessão X existente, o tunelamento do X sob ssh envia os aplicativos executados para a sessão X existente na máquina cliente (ou seja, não invade a privacidade de quem estiver utilizando a máquina remota).

Infelizmente o ssh não possibilita tunelar sons reproduzidos por aplicativos X, assim se vc executar um player de mídia, quem irá acabar ouvindo é quem estiver perto do servidor remoto. Aplicativos que exijam OpenGL ou outras bibliotecas gráficas podem não ser executados corretamente também.

Fonte: http://www.vanemery.com/Linux/XoverSSH/X-over-SSH2.html

Se você gostou deste artigo, inscreva-se em meu RSS feed!

Virtualização - Rodando Windows XP sob Linux com Qemu

Tags: , , , — April 24, 2008 @ 2:32 pm

2008-04-24_093557.pngVirtualização é a alma do negócio de hospedagem hoje em dia. Na semana passada contratei um novo servidor virtual, onde tenho acesso root e controle total, mas este não passa de uma máquina virtual, ou seja, é um sistema que roda dentro de outro. Mas não apenas para hospedagem web, virtualização também pode ser usada para rodar, por exemplo, um Windows XP dentro de sua distro preferida, eliminando a necessidade de um Dual Boot para rodar aplicações Windows.

Existem diversos emuladores de processadores disponíveis para criar máquinas virtuais, como o VMware, VirtualBox e QEMU, por exemplo, os três disponíveis para Linux. No meu caso utilizei o QEmu, isso porque já havia testado ele uma vez, e pelo que li a respeito achei que ele parece mais fácil de usar do que os outros.

ATENÇÃO: Caso precise rodar apenas algumas aplicações Windows, você poderá utilizar o Wine, uma implemetação livre da API do Windows que suporta uma boa gama de programas win32, podendo rodá-los nativamente no Linux, o que mostra uma performance muito melhor.

Também é possível encontrar facilmente programas Linux equivalentes para a maioria das aplicações conhecidas para Windows, veja aqui, aqui ou aqui.

Um Windows XP executado em uma máquina virtual tente a ficar um pouco lento. Para melhor a performance pode-mos utilizar o Qemu Accelerator (KQemu) ou o KVM (Kernel Based Virtual Machine), o que vou abordar aqui.

Primeiramente precisamos saber se seu kernel possui suporte para rodar o kvm. Digite o comando abaixo, como root, em um terminal:

# grep -E '^flags.*(vmx|svm)' /proc/cpuinfo

Se você obtiver algum resultado, então seu computador suporta virtualização de hardware e podemos continuar, caso contrário, verifique em sua BIOS se há opção para habilitar/desabilitar virtualização. Se não houver esta opção será melhor tentar utilizar o KQemu (tutorial aqui, em inglês).

Continuando… Primeiramente instale os pacotes qemu e kvm.

# aptitude install qemu kvm

Após isso carrege o módulo kvm próprio para seu processador (você pode adicionar o módulo em /etc/modules posteriormente para ser carregado na inicialização).

  • Para processadores AMD:
    # modprobe kvm-amd
  • Para processadores Intel:
    # modprobe kvm-intel

Além disso você precisará alterar o grupo de /dev/kvm para o grupo kvm e adicionar seu usuário a este grupo:

# chown root:kvm /dev/kvm
# adduser $USER kvm

Lembrando de sair e logar novamente para certificar-se que o novo grupo será usado. Agora começamos com a instalação em si.

Primeiramente você deve criar um arquivo de image, que será onde o Windows XP será instalado:

$ qemu-img create windows.img -f qcow 6G

A opção -f qcow economiza espaço, utilizando apenas o necessário para a instalação, até o limite especificado (6G). A desvantagem é que a imagem no formato qcow não pode ser montada no sistema, então se você deseja acessar os arquivos da imagem windows.img poderá omitir a opção ‘-f qcow’, mas lembrando que assim a imagem alocará todo o espaço especificado (ou seja, todos os 6G, mesmo que a instalação ocupe menos).

Para uma instalação completa do Windows XP você precisará de, no mínimo, 2GB ou 3GB. Porém é possível encontrar imagens de instalação modificadas (obviamente ilegais, mas não deve haver problema se você possui uma chave original do Windows XP) que ocupam menos de 500MB.

Após criada a imagem, insira o cd do windows em seu driver e execute a linha a seguir:

$ kvm -no-acpi -m 384 -cdrom /dev/cdrom -boot d windows.img

2008-04-23_220608.pngA opção -m especifica a quantidade de memória alocada para o sistema. 384 é um bom começo para o WinXP, caso disponha de mais memória você poderá alocar mais. Também é essencial que utilize a opção -no-acpi, já que o windows não terá acesso direto a placa mãe.

Caso deseje executar a instalação a partir de uma imagem, e não do CD, basta usar o comando como a seguir. No exemplo abaixo também alocamos mais memória.

$ kvm -no-acpi -m 512 -cdrom /backups/windows.iso -boot d windows.img

Caso a instalação trave em algum momento, basta fechar oqemu (feche a janela, ou pressione Ctrl+C no terminal que rodou os comandos) e iniciar novamente, que a instalação progredirá de onde parou.

IMPORTANTE:
A opção -boot d força o kvm/qemu a iniciar primeiro do cdrom, após concluir a instalação você poderá iniciar seu windows com o comando a seguir:

$ kvm -localtime -no-acpi -m 512 -cdrom /dev/cdrom windows.img

A opção -localtime ajusta o relógio da máquina virtual como a hora atual de seu sistema, e a opção -cdrom diz a máquina para tentar iniciar primeiramente do cdrom, útil para atualizações do windows ou coisas do gênero.

2008-04-24_093452.pngVocê pode criar um lançador ou item no menu, para seu windows, especificando o caminho completo para windows.img, assim você poderá iniciá-lo com apenas um clique.

Configurar Rede:

O Qemu cria uma rede virtual entre a máquina host (o seu Linux) e a guest (O Windows) e um servidor DHCP, o que é suficiente para transferir arquivos e navegar na internet.

Por padrão o ip do host fica 10.0.2.2 e do guest algo como 10.0.2.15. Assim, caso tenha algum servidor instalado no host você pode acessá-lo pelo ip 10.0.2.2 (como páginas web, no caso de um Apache ou Lighttpd rodando).

Caso a navegação não funcione, pode ser um problema de DNS. Assim, vá nas “Configurações de Rede” do Windows, selecione a “Conexão Local” e nas propriedades do IP coloque o DNS de sua preferência (mantenha o endereço IP como “Obter Automaticamente”). Caso não conheça nenhum, utilize este: 200.176.2.10. Este é um servidor DNS no Terra, mas utilizando um mais próximo de seu computador vai deixar a navegação mais rápida.

A rede em modo de usuário, que é o padrão do qemu, tem várias desvantagens, como por exemplo, não permitir pings. Se você deseja configurar uma rede completa, e deixar a máquina virtual visível para toda a rede, você precisará configurar interfaces de rede virtuais. Não vou explicar aqui porque ainda não testei esta possibilidade, mas basta pesquisar na documentação do qemu que você verá vários bons tutoriais.

O Qemu ainda tem várias outras opções, como gravar as alterações no sistema em um arquivo separado, mantendo a imagem instalada intacta. Para isso você deve criar uma imagem de overlay:

qemu-img create -b windows.img -f qcow windows.ovl

Então, para executar o windows utilize a imagem de overlay (adicione as opções que desejar):

kvm windows.ovl

Assim, caso a imagem do windows seja arruinada, por um vírus ou algum bug, por exemplo (nada muito incomum), basta remover a imagem de overlay e utilizar a imagem original.

A principal razão para mim decidir rodar um Windows XP numa máquina virtual é para poder rodar alguns jogos que não rodam no wine, por utilizarem nProtect/GameGuard. No meu caso ainda não habilitei o som na máquina virtual nem habilitei compartilhamento de arquivos, mas logo farei um novo post abordando esses assuntos.

Fontes: https://help.ubuntu.com/community/WindowsXPUnderQemuHowT, https://help.ubuntu.com/community/KVM

PS.: Apesar dos tutoriais terem sido tirados da wiki do ubuntu, estes podem ser utilizados para virtualização no Debian (o meu caso) ou qualquer outra distro.

Se você gostou deste artigo, inscreva-se em meu RSS feed!

Linux no Playstation 3

Tags: , , — February 1, 2008 @ 1:28 pm

Achei interessante um vídeo que achei (na verdade há vários, e até alguns tutoriais) de uma distro Linux (Fedora) rodando no PS3. Não vou postar um tutorial, porque não tenho um ps3 pra testar :P, quem sabe futuramente.

Algumas palavras do autor do vídeo:

” This is Fedora Core 5 running on the Playstation 3. And Ebay believes installing open source software on an open platform (as is stated on Sony’s site) is a “copyright violation”. Apparently they don’t understand open source…so my auction of this unit was cancelled without notification. Thanks, Ebay… And here is the new version of the video with voiceover explanations: http://www.youtube.com/watch?v=_ZXcuhJkwx4″

Parece a respeito de algum projeto sobre “empacotar” o ps3 com uma distro linux. Quando obtiver mais informações posto aqui também, por hora, contentem-se com o vídeo.


Fonte: http://lintube.com/index.php?option=com_seyret&Itemid=9&task=videodirectlink&id=132

Se você gostou deste artigo, inscreva-se em meu RSS feed!

LinTube.com - videos by Linux

Tags: , , , — January 31, 2008 @ 2:39 pm

Não é uma espécie de youtube para vídeos open source, uma vez que não hospeda os vídeos, mas sim exibe uma série de vídeos sobre linux e software livre de outros websites.

Trata-se de uma adição, pelo menos interessante, contendo alguns vídeos bem-humorados, como este a seguir:


Fontes: http://www.lintube.com, http://br-linux.org/2008/lintube-site-agrega-videos-sobre-codigo-aberto-do-youtube/

Se você gostou deste artigo, inscreva-se em meu RSS feed!

Vista é mais seguro que Linux e OSX, diz MS

Tags: , , — June 26, 2007 @ 2:40 pm

Um relatório divulgado pela Microsoft afirma que o Windows Vista, desde o seu lançamento, tem menos vulnerabilidades sérias que o Linux e o OS X, da Apple.

Especificamente, o relatório compara o número de brechas de segurança registradas nos seis primeiros meses de vida no Vista, Windows XP, Red Hat Enterprise Linux 4 Workstation, Ubuntu 6.06, Novell SUSE Linux Enterprise Desktop 10.8, Mac OS X 10.4 e outros.

A conclusão, sempre segundo a Microsoft, é de que o Vista teve 12 brechas corrigidas. Em comparação, o Red Hat Workstation teve 281, sendo 86 de “alta severidade”. O Ubuntu teve 145 vulnerabilidades, 47 graves; o SUSE, 159, 50 severas; e o Mac OS X, 60, com 18 de alta severidade.

O relatório é apresentado por Jeff Jones, diretor de estratégia de segurança da Microsoft. Seus números e conclusões já estão sendo postos em dúvida. Uma das críticas feitas a ele refere-se à relação entre falhas conhecidas e corrigidas. Aponta-se, por exemplo, que o Red Hat teve mais brechas, mas resolveu 81% das falhas conhecidas, enquanto a taxa de correção no Vista é de apenas 48%.

O relatório original de Jones, em formato PDF, está neste endereço.

Fonte: http://info.abril.com.br/aberto/infonews/062007/25062007-19.shl

Se você gostou deste artigo, inscreva-se em meu RSS feed!

“O Windows é muito melhor que Software livre” (???)

Tags: , , — May 21, 2007 @ 12:39 pm

Esta foi uma coluna publicada na Microsoft TechNet. O artigo já tem um tempinho, mas vale a pena dar uma lida, tendo pérolas como:

” O software livre não possui todas as funcionalidades de configuração, gerenciamento e integração com outros softwares como o Windows possui.”

” Não é necessário fazer modificações, o software (da microsoft) já vem completo;”

segue o link: http://www.microsoft.com/brasil/technet/Colunas/
PauloBindo/melhorqueSoftwarelivre.mspx

Se você gostou deste artigo, inscreva-se em meu RSS feed!

Next Page >>>