Como ter a tela de login através do VNC no Oracle Linux?

2

Basicamente, o que estou procurando é um recurso semelhante ao RDP no Windows. Eu deveria ser capaz de ver a tela de login através do VNC Viewer. Mesmo se o servidor for reiniciado, eu ainda conseguirá acessá-lo através do VNC Viewer. Atualmente alguém tem que primeiro obter o console através do OVM (estas são todas as VMs), o login e só então é possível remoto através do VNC Viewer.
Eu sei que esta pergunta foi feita aqui anteriormente [ref1] [ref2] também aqui mas até agora não obtive sucesso em minhas tentativas. Alguém pode fornecer um guia detalhado sobre como fazer isso?

  • SO: Oracle Linux 5
  • VNC rpm: vnc-server-4.1.2-14.el5_6.6

Atualização 1 - VNC no nível do usuário

Ok, então eu segui tudo listado aqui

  • Conectado ao servidor por meio do PuTTY usando a raiz (porque essa é a conta que preciso usar para efetuar login através do VNC).
  • Ran vncpasswd e defina a senha de login do VNC.
  • Salvou o script como /etc/init.d/vncserver depois de alterar os seguintes parâmetros:
    • USER="root"
    • DISPLAY="1"
  • Fez chmod +x /etc/init.d/vncserver .
  • Fez chkconfig --level 2345 vncserver on .
  • Fez vi /root/.vnc/xstartup e descomentou as linhas:
    sh unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc e alterei a última linha de twm & para startx & (já que estou usando o GNOME).
  • Reiniciou o servidor.

Agora eu consegui remotamente com sucesso para o servidor através do VNC Viewer. Isso funciona mesmo se o servidor for reiniciado. No entanto, ignora a tela de bloqueio e não solicita senha . Para isso eu tive que configurar uma senha através do System > Preferências > Área de trabalho remota .
Nota importante: Como @slm descrito abaixo, esse método fornece acesso VNC no nível do usuário. Significa que você pode criar vários usuários e fornecer acesso VNC separadamente. Cada usuário terá um desktop exclusivo. Isso não era exatamente o que eu estava procurando!

Atualização 2 - VNC no nível do sistema, como RDP no Windows

Depois de implementar a solução @ slm, percebi que era isso que eu realmente tinha em mente quando fiz essa pergunta. Eu segui exatamente o que ele disse. É muito mais simples! Algumas coisas que gostaria de acrescentar:

  • Eu não precisei instalar o x11vnc. Eu usei apenas o vnc rpm que foi instalado por padrão.
  • O ficheiro

    /etc/X11/xorg.conf estava em falta. Para criá-lo eu fiz o seguinte: (Source)

    • Como root run: Xorg :1 -configure . Isto irá criar o arquivo /root/xorg.conf.new
    • cp /root/xorg.conf.new /etc/X11/xorg.conf

Eu segui o resto das instruções. Reiniciei o gdm e o Voila! Funcionou! Consegui ver a tela de login através do VNC Viewer, exatamente como o RDP no Windows. Funcionou mesmo após o reinício do servidor. Ótimo!

    
por Gh0sT 17.01.2014 / 07:10

2 respostas

2

Para adicionar a resposta do @Timo parece que há 3 maneiras de configurar o acesso ao VNC.

  1. No nível do usuário (é isso que você está usando agora)
  2. No nível do sistema
  3. No nível do Host (ao executar dentro de uma VM) - esta é a sugestão do Timo

NOTA: Este tutorial mostra como fazer # 1 , intitulado: Como instalar o servidor VNC no CentOS 6 .

Se você acha que por um segundo # 3 é apenas outra forma de # 1 & # 2 , dependendo de onde você fornece acesso à área de trabalho. No nível do usuário ( # 1 ) ou no nível do sistema, ( # 2 ).

Então, acho que o que você quer é realmente # 2 . Para obter este tipo de configuração, existem basicamente 2 métodos que eu conheço.

x11vnc

Você pode instalar o pacote x11vnc e usá-lo para obter acesso à sessão atual do X11 em um sistema remoto. É geralmente na maioria das distro repos baseadas na Red Hat, então eu não cobrirei a instalação, mas uma vez instalado você terá ssh em um sistema que você quer acessar a exibição do console (: 0.0), e execute manualmente como assim :

$ x11vnc -nopw -display :0.0

Existem métodos para tornar isso mais permanente, para que ele seja executado como parte da sessão. Um desses métodos é discutido nesta postagem do blog, intitulada: x11vnc no CentOS5 com GDM .

X11 + vnc

O segundo método é instalar um módulo / driver no X11 para que você possa se conectar a qualquer desktop X11 em execução. O que eu estou familiarizado é chamado vnc . Esse driver precisa ser instalado na configuração do X do sistema host para que você possa acessar o gerenciador de login do sistema. Eu não tenho certeza do que é no Oracle (provavelmente é o GDM - GNOME Display Manager), uma vez que deriva do RHEL.

A boa notícia é que, se você instalou o pacote vnc-server , já terá o driver X11 instalado. Basta adicionar isso à configuração do X11 do seu sistema host.

Primeiro, você precisará adicionar esta linha à seção xorg.conf do seu Module :

# /etc/X11/xorg.conf
Section "Module"
  Load "vnc"
EndSection

Em seguida, você precisará adicionar várias linhas à mesma seção Screen dos arquivos:

Option "SecurityTypes" "VncAuth"
Option "UserPasswdVerifier" "VncAuth"
Option "PasswordFile" "/root/.vnc/passwd"

Última configuração de uma senha para esta conexão, usando a ferramenta vncpasswd e reinicie o X.

Referências

por 17.01.2014 / 16:00
1

Em vez de executar vnc-server no próprio servidor, você deve se conectar (usando VNC) ao OVM diretamente através das configurações do seu VirtualMachine: Configurações → Display → Remote Display.

Nessa TAB, ative o servidor (certifique-se de marcar o número da porta que você selecionou), que é um servidor VNC e você pode se conectar ao seu cliente normal.

    
por 17.01.2014 / 09:31