Android

Como instalar e configurar o vnc no centos 7

Install & Configure TIGER VNC Server in CentOS 7 and RHEL 7

Install & Configure TIGER VNC Server in CentOS 7 and RHEL 7

Índice:

Anonim

Neste tutorial, mostraremos as etapas para instalar e configurar um servidor VNC em um sistema CentOS 7. Também mostraremos como se conectar com segurança ao servidor VNC através de um túnel SSH.

O Virtual Network Computing (VNC) é um sistema gráfico de compartilhamento de área de trabalho que permite usar o teclado e o mouse para controlar remotamente outro computador.

Pré-requisitos

Antes de continuar com o tutorial, verifique se você está conectado como um usuário com privilégios sudo. Vamos assumir que você está logado como um usuário chamado linuxize .

Instalando o Xfce Desktop Environment

As instalações do servidor CentOS geralmente não vêm com um ambiente de área de trabalho instalado; portanto, começaremos instalando um ambiente de área de trabalho leve.

Neste guia, instalaremos o Xfce. É um recurso rápido, estável e com poucos recursos do sistema, o que o torna ideal para uso em servidores remotos.

Os pacotes Xfce estão disponíveis nos repositórios EPEL. Se você não tiver o repositório EPEL ativado no seu servidor, poderá fazê-lo digitando:

sudo yum install epel-release

Depois que o repositório for adicionado, instale o Xfce no seu CentOS com:

sudo yum groupinstall xfce

Dependendo do seu sistema, o download e a instalação dos pacotes e dependências do Xfce podem levar algum tempo.

Instalando o servidor VNC

Usaremos o TigerVNC como servidor VNC de sua escolha. O TigerVNC é um servidor VNC de código aberto de alto desempenho e com manutenção ativa.

Digite o seguinte comando para instalar o TigerVNC no seu servidor CentOS:

yum install tigervnc-server

Agora que o servidor VNC está instalado, a próxima etapa é executar o comando vncserver que criará a configuração inicial e definirá a senha. Não use sudo ao executar o seguinte comando:

vncserver

Você será solicitado a digitar e confirmar a senha e defini-la como uma senha somente para visualização. Se você optar por configurar uma senha somente para visualização, o usuário não poderá interagir com a instância do VNC com o mouse e o teclado.

You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

Na primeira vez em que o comando vncserver for executado, ele criará e armazenará o arquivo de senha no diretório ~/.vnc , que será criado se não estiver presente.

Observe o :1 após o nome do host na saída acima. Isso indica o número da porta de exibição na qual o servidor vnc está sendo executado. No nosso caso, o servidor está sendo executado na porta TCP 5901 (5900 + 1). Se você criar uma segunda instância com vncserver ela será executada na próxima porta livre, ou seja :2 significa que o servidor está executando na porta 5902 (5900 + 2).

É importante lembrar que, ao trabalhar com servidores VNC,: :X é uma porta de exibição que se refere ao 5900+X

Antes de continuar com a próxima etapa, primeiro pare a instância do VNC usando o comando vncserver com uma opção -kill e o número do servidor como argumento. No nosso caso, o servidor está sendo executado na porta 5901 ( :1 ), portanto, paramos com:

vncserver -kill:1

Killing Xvnc process ID 2432

Configurando o servidor VNC

Agora que o Xfce e o TigerVNC estão instalados no servidor CentOS, o próximo passo é configurar o TigerVNC para usar o Xfce. Para fazer isso, abra o seguinte arquivo:

nano ~/.vnc/xstartup

E mude a última linha de exec /etc/X11/xinit/xinitrc para exec startxfce4 :

~ /.vnc / xstartup

#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4

Salve e feche o arquivo. O script acima será executado automaticamente sempre que você iniciar ou reiniciar o servidor TigerVNC.

Aqui está um exemplo:

~ /.vnc / config

# securitytypes=vncauth, tlsvnc # desktop=sandbox geometry=1920x1080 # localhost # alwaysshared dpi=96

Criando um arquivo de unidade Systemd

Criaremos um arquivo de unidade systemd que nos permitirá iniciar, parar e reiniciar facilmente o serviço VNC conforme necessário, igual a qualquer outro serviço systemd.

Copie o arquivo da unidade vncserver com o comando cp :

sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Abra o arquivo com seu editor de texto e substitua com seu nome de usuário real.

sudo nano /etc/systemd/system/vncserver@\:1.service /etc/systemd/system/vncserver@:1.service

Description=Remote desktop service (VNC) After=syslog.target network.target Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' ExecStart=/usr/sbin/runuser -l linuxize -c "/usr/bin/vncserver %i" PIDFile=/home/linuxize/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' WantedBy=multi-user.target

Salve e feche o arquivo. Notifique ao systemd que criamos um novo arquivo de unidade com:

sudo systemctl daemon-reload

A próxima etapa é ativar o arquivo da unidade com o seguinte comando:

sudo systemctl enable vncserver@:1.service

O número 1 após o sinal @ define a porta de exibição na qual o serviço VNC será executado; no nosso caso, esse é o padrão 1 e o servidor VNC escutará na porta 5901 conforme discutido na seção anterior.

Inicie o serviço VNC executando:

sudo systemctl start vncserver@:1.service

Verifique se o serviço foi iniciado com êxito com:

sudo systemctl status vncserver@:1.service

● vncserver@:1.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-09-16 09:59:53 UTC; 4s ago Process: 6391 ExecStart=/usr/sbin/runuser -l linuxize -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS) Process: 6389 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 6413 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service ‣ 6413 /usr/bin/Xvnc:1 -auth /home/linuxize/.Xauthority -desktop server2.linuxize.com:1 (linuxize) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /home/linuxize/.vnc/passwd -rfbport…

Conectando ao servidor VNC

O VNC não é um protocolo criptografado e pode estar sujeito à detecção de pacotes. A abordagem recomendada é criar um túnel SSH que encaminhará com segurança o tráfego da máquina local na porta 5901 para o servidor na mesma porta.

Configurar o encapsulamento SSH no Linux e macOS

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

Você será solicitado a inserir a senha do usuário.

Não se esqueça de substituir username usuário e endereço_do_ip_servidor pelo seu nome de usuário e pelo endereço IP do seu servidor.

Configurar o encapsulamento SSH no Windows

Abra o Putty e digite o endereço IP do servidor no campo Host name or IP address do Host name or IP address .

Agora você pode começar a interagir com a área de trabalho remota do XFCE na sua máquina local usando o teclado e o mouse.

Conclusão

Até agora você deve ter um servidor VNC em funcionamento e pode gerenciar facilmente seu servidor CentOS 7 usando uma interface gráfica.

Para configurar o servidor VNC para iniciar uma exibição para mais de um usuário, crie a configuração inicial e defina a senha usando o comando vncserver e crie um novo arquivo de serviço usando uma porta diferente.

Sinta-se livre para deixar um comentário se tiver alguma dúvida.

centos vnc