Visite também: BR-Linux ·  VivaOLinux ·  LinuxSecurity ·  Dicas-L ·  NoticiasLinux ·  SoftwareLivre.org ·  [mais]

Tutoriais/Redes/redirecionar-vnc

De UnderLinux Wiki

Redirecionando solicitação do VNC

Introdução

Bom...o assunto tratado em questão é quanto ao uso do VNC, seja ele o "comum" ou o "Ultra" ou qualquer outra versão do mesmo. Isso acontece quando alguma empresa desenvolve o software (seja ele financeiro ou administrativo ou qualquer outro) para uma outra empresa, pois pode haver determinado momento em que é preciso uma "Conexão Remota" para que um suporte técnico ou até mesmo um suporte institucional. Neste caso, a pessoa que fará tal assistência remota, terá uma conta de usuário com senha para poder acessar a estação remotamente.

Vamos adotar para essa "situação" os seguintes critérios:

  • Servidor de Internet ::: Linux
  • A interface de recepção do sinal da internet é a eth0
  • Servidor de Contas de Usuários ::: Windows Server 2003 (De preferência com o Active Directory instalado e configurado)
  • Estação de trabalho que receberá o suporte ::: Windows XP Professional SP2
  • Distribuição do sinal da internet a partir do Linux para toda a rede através de um Switch (ou HUB)
  • VNC Server instalado na Estação WinXP
  • A porta de conexão do VNC será apenas a porta 8000

Obs.: Utilizei esses critérios pois são os mais utilizados em empresas que têm como servidor de internet o Linux.

Configurando

Bom, primeira coisa a fazer é certificar-se de que o IPTables está disponível na sua distribuição do Linux. É fácil saber por, a partir do kernel 2.4.x ele passou a se chamar "iptables". Caso você não saiba qual a versão do kernel que você utiliza, vá até o prompt de comando (pode ser no Konsole) e digite:

Código:

# whereis iptables

Caso apareça algo como "/sbin/iptables" seu kernel possui o IPTables.

Bom, vamos ao que interessa.

O cidadão quer acessar a máquina Fin01 que possui o IP interno 192.168.15.32/24 para dar um suporte técnico ao "rapaz do financeiro". Pois bem, temos que liberar a passagem de sua solicitação até a máquina que possui tal IP. A questão é que, quem quer dar a assistência, não tem (nem precisa ter) a mínima noção de qual é a faixa de IPs da sua rede sequer qual o IP de quem ele quer dar o suporte. Para saber disso, você precisa entrevistá-lo. É onde ele vai te dizer que precisa fazer uma assistência remota na máquina do "rapaz do financeiro". Aí é claro, você sabe como chegar até lá. Só é preciso liberar a "entrada "do desenvolvedor do sistema até lá.

Pois bem, vamos encarar que exista um arquivo de texto que você aloge as regras de firewall. vamos abrí-lo e digitar os seguintes comando para que, quando esse arquivo for novamente executado, as novas regras já surtam efeito.

Código:

#Roteando os pacotes pra maquina Fin01
echo "Roteando a solicitacao da porta 8000 para o IP 192.168.15.32..."
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 8000 -j DNAT --to 192.168.15.32:8000
iptables -t nat -A PREROUTING -p udp -i eth0 --dport 8000 -j DNAT --to 192.168.15.32:8000
echo "                                                                                        [OK]"
#
#Autorizando o trafego de pacotes da maquina Fin01
echo "Permitindo a comunicacao entre o Assistente e o Assistido..."
iptables -A FORWARD -p tcp -s 192.168.15.32 --dport 8000 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.15.32 --sport 8000 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.15.32 --dport 8000 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.15.32 --sport 8000 -j ACCEPT
echo "                                                                                        [OK]"

Feito isso, o Assistente terá condições de acessar somente a máquina que ele precisa.

Caso ele tente fazer o acesso via Terminal Server, ao invés da porta 8000, será utilizada a porta 3389. Neste caso, será solicitado, no ato da conexão, um nome de usuário e uma senha para acessar a estação.

Bom pessoal, espero ter ajudado bastante com qualquer dúvida que vocês poderiam ter...

Abraços

Autor

Frusciante