Fórum Ubuntu Linux - PT

Suporte Técnico => Servidores => Tópico iniciado por: brunoqkz em 26 de Julho de 2012, 10:06

Título: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 26 de Julho de 2012, 10:06
Configurei uma mensagem que deve aparecer assim que o usuário tenta fazer login no sistema, no entanto essa mensagem está aparecendo com erros, no lugar dos acentos estão sendo exibidos códigos. Como posso solucionar esse problema?  ???
Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 27 de Julho de 2012, 12:42
Use os acentos em outra codificação. Você deve tê-los escrito em ISO-8859-1, o sistema os está exibindo em formato UTF-8 (ou vice-versa).
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 30 de Julho de 2012, 17:24
Use os acentos em outra codificação. Você deve tê-los escrito em ISO-8859-1, o sistema os está exibindo em formato UTF-8 (ou vice-versa).

Suponho que seja isso. Como faço pra resolver?

O banner como escrevi (salvei como UTF-8 através do comando no vim :set fileencoding=utf-8 :wq):
Código: [Selecionar]
********************************************************************************

     AVISO!

O ACESSO E A UTILIZAÇÃO DESTE SISTEMA PRIVADO
       É RESTRITO À USUÁRIOS AUTORIZADOS!

    INDIVÍDUOS NÃO AUTORIZADOS QUE TENTEM ACESSAR ESTE SISTEMA DE COMPUTADOR
      ESTARÃO SUJEITOS À AÇÕES JUDICIAIS!

      TODAS AS INFORMAÇÕES E COMUNICAÇÕES
  NESTE SISTEMA SÃO MONITORADAS E REGISTRADAS!

********************************************************************************

Como ele aparece:
Código: [Selecionar]
********************************************************************************

     AVISO!

O ACESSO E A UTILIZA\303\207\303\203O DESTE SISTEMA PRIVADO
       \303\211 RESTRITO \303\200 USU\303\201RIOS AUTORIZADOS!

    INDIV\303\215DUOS N\303\203O AUTORIZADOS QUE TENTEM ACESSAR ESTE SISTEMA DE COMPUTADOR
      ESTAR\303\203O SUJEITOS \303\200 A\303\207\303\225ES JUDICIAIS!

      TODAS AS INFORMA\303\207\303\225ES E COMUNICA\303\207\303\225ES
  NESTE SISTEMA S\303\203O MONITORADAS E REGISTRADAS!

********************************************************************************
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 30 de Julho de 2012, 18:23
Como você acessa? putty? Acho que por padrão ele não usa utf8.
Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 30 de Julho de 2012, 21:17
Como você acessa? putty? Acho que por padrão ele não usa utf8.
Eu olhei na máquina que estou usando agora, o padrão é ISO-8859-1.

Mas achei interessante os caracteres terem saído como \0xx em vez de algo como Â$ ou coisa parecida. Esse arquivo que vc gravou é o "/etc/issue", mesmo?
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 31 de Julho de 2012, 08:19
Como você acessa? putty? Acho que por padrão ele não usa utf8.

Não, tentei acessar pelo próprio sistema para testar. O putty realmente tem que alterar o padrão porque ele não usa UTF-8, você está certo.
Como você acessa? putty? Acho que por padrão ele não usa utf8.
Eu olhei na máquina que estou usando agora, o padrão é ISO-8859-1.

Mas achei interessante os caracteres terem saído como \0xx em vez de algo como Â$ ou coisa parecida. Esse arquivo que vc gravou é o "/etc/issue", mesmo?

Eu fiz um arquivo e apontei ele na configuração do SSH.
Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 31 de Julho de 2012, 11:11
Apontou ele na configuração, qual configuração?
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 31 de Julho de 2012, 11:52
Apontou ele na configuração, qual configuração?

/etc/ssh/sshd_config

Banner "/home/usuário/banner"
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 31 de Julho de 2012, 14:09
Por experiencia, digo que no vim fileencoding=utf-8 não é o bastante, quando o arquivo já está danificado. Isso porque ele só dita a transformação memória → disco. Na época converter também não resolveu, acabei digitando de novo (ctrl+c ctrl+v pode carregar o problema).

Outra coisa que já me fez perder tempo em arquivos unicode, é o BOM. Em utf8, ele não é estritamente necessário, eu sempre prefiro não usá-lo, e misturar utf8 com BOM e sem BOM pode dar resultados ruins, dependendo do visualizador.
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 01 de Agosto de 2012, 11:27
Por experiencia, digo que no vim fileencoding=utf-8 não é o bastante, quando o arquivo já está danificado. Isso porque ele só dita a transformação memória → disco. Na época converter também não resolveu, acabei digitando de novo (ctrl+c ctrl+v pode carregar o problema).

Outra coisa que já me fez perder tempo em arquivos unicode, é o BOM. Em utf8, ele não é estritamente necessário, eu sempre prefiro não usá-lo, e misturar utf8 com BOM e sem BOM pode dar resultados ruins, dependendo do visualizador.

eu criei um arquivo em UTF-8 (e outras codificações), mesmo assim não consigo de jeito nenhum fazer com que seja exibido corretamente! :|
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 01 de Agosto de 2012, 13:07
O quê você está usando pra visualizar? Como está configurado? Assumindo que o arquivo está correto, o erro deve estar ai.
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 01 de Agosto de 2012, 15:15
O quê você está usando pra visualizar? Como está configurado? Assumindo que o arquivo está correto, o erro deve estar ai.

Sistema:
Código: [Selecionar]
$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04 LTS"

Versão SSH:
Código: [Selecionar]
$ dpkg -s ssh
Package: ssh
Status: install ok installed
Priority: extra
Section: net
Installed-Size: 29
Maintainer: Colin Watson <cjwatson@ubuntu.com>
Architecture: all
Source: openssh
Version: 1:5.9p1-5ubuntu1
Depends: openssh-client, openssh-server
Description: secure shell client and server (metapackage)
 This metapackage is a convenient way to install both the OpenSSH client
 and the OpenSSH server. It provides nothing in and of itself, so you
 may remove it if nothing depends on it.
Homepage: http://www.openssh.org/
Original-Maintainer: Debian OpenSSH Maintainers <debian-ssh@lists.debian.org>

Configuração cliente SSH:
Código: [Selecionar]
$ cat /etc/ssh/ssh_config

# This is the ssh client system-wide configuration file.  See
# ssh_config(5) for more information.  This file provides defaults for
# users, and the values can be changed in per-user configuration files
# or on the command line.

# Configuration data is parsed as follows:
#  1. command line options
#  2. user-specific file
#  3. system-wide file
# Any configuration value is only changed the first time it is set.
# Thus, host-specific definitions should be at the beginning of the
# configuration file, and defaults at the end.

# Site-wide defaults for some commonly used options.  For a comprehensive
# list of available options, their meanings and defaults, please see the
# ssh_config(5) man page.

Host *
#   ForwardAgent no
#   ForwardX11 no
#   ForwardX11Trusted yes
#   RhostsRSAAuthentication no
#   RSAAuthentication yes
#   PasswordAuthentication yes
#   HostbasedAuthentication no
#   GSSAPIAuthentication no
#   GSSAPIDelegateCredentials no
#   GSSAPIKeyExchange no
#   GSSAPITrustDNS no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   Port 22
#   Protocol 2,1
#   Cipher 3des
#   Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
#   MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials no

Servidor SSH:
Código: [Selecionar]
$ cat /etc/ssh/sshd_config
# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 443
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
Banner "/etc/utf"

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

Arquivo banner:
Código: [Selecionar]
$ cat /etc/utf
atenção!

Codificação arquivo banner:
Código: [Selecionar]
$ file /etc/utf
/etc/utf: UTF-8 Unicode text

Como ele aparece quando tento conectar pelo terminal:
Código: [Selecionar]
$ ssh -p 443 localhost
aten\303\247\303\243o!

Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 01 de Agosto de 2012, 15:47
Qual terminal? Um emulador: gnome-terminal, xterm... rxvt-unicode? Teste em uns dois.
echo $LANG? Como você digitou? Teste: sudo tee /etc/utf <<< Atenção!
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 01 de Agosto de 2012, 16:15
Qual terminal? Um emulador: gnome-terminal, xterm... rxvt-unicode? Teste em uns dois.
echo $LANG? Como você digitou? Teste: sudo tee /etc/utf <<< Atenção!

xterm, gnome-terminal e putty.. mesma coisa..

Código: [Selecionar]
$ echo $LANG
pt_BR.UTF-8

abri o gedit, digitei o texto e fui em Arquivo > Salvar como... > Codificação de caracteres: Localidade atual (UTF-8)

executei o comando que você sugeriu e o problema persiste  :-\

Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 01 de Agosto de 2012, 17:36
Bruno, uma pergunta... alguma vez vc já conseguiu fazer esse procedimento, ou é a primeira vez que faz?
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 02 de Agosto de 2012, 08:55
Bruno, uma pergunta... alguma vez vc já conseguiu fazer esse procedimento, ou é a primeira vez que faz?

essa é a primeira vez que eu tento usar um banner com acentos no ssh, por isso não sei se ele é capaz de exibir acentos..
vou acabar voltando a usar um em inglês mesmo  :-\
Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 02 de Agosto de 2012, 11:52
Ah. Sabe pq perguntei? Pq tenho a impressão de que o problema é da forma como vc criou o arquivo, aquele vim com parâmetros extras.
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 02 de Agosto de 2012, 13:09
Ah. Sabe pq perguntei? Pq tenho a impressão de que o problema é da forma como vc criou o arquivo, aquele vim com parâmetros extras.
eu tentei pelo vim, tentei pelo gedit, tentei pelo comando que nosso colega irtigor indicou.. não acho que seja problema com o arquivo
tô achando que tem alguma coisa haver com configuração de idioma e caracteres e parâmetros 'locale' ou algo assim
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 02 de Agosto de 2012, 14:07
Você já tentou utf8 sem BOM? Nem todos os editores fornecem essa opção. O problema é só com o texto do arquivo? Depois de conectar, você consegue digitar normalmente (ã,é,ç)?
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 02 de Agosto de 2012, 15:50
Você já tentou utf8 sem BOM? Nem todos os editores fornecem essa opção. O problema é só com o texto do arquivo? Depois de conectar, você consegue digitar normalmente (ã,é,ç)?
é somente com o banner, depois de conectado, consigo inserir caracteres acentuados sem problemas..
e aproveitando que você comentou, o que seria esse BOM? como posso redigir um texto sem isso?
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 02 de Agosto de 2012, 16:25
http://stackoverflow.com/questions/2223882/whats-different-between-utf-8-and-utf-8-without-bom

Você tem que checar no seu editor. Acho que no vim, vem desabilitado por padrão, mas verifique.
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 02 de Agosto de 2012, 16:55
http://stackoverflow.com/questions/2223882/whats-different-between-utf-8-and-utf-8-without-bom

Você tem que checar no seu editor. Acho que no vim, vem desabilitado por padrão, mas verifique.
tentei criar um arquivo no vim
antes executei o comando set nobomb pra garantir que esse BOM estava desativado
sem sucesso!  >:(
Título: Re: Banner do SSH não exibe acentos
Enviado por: irtigor em 02 de Agosto de 2012, 22:06
Desabilite "AcceptEnv LANG LC_*" no /etc/ssh/sshd_config (comente a linha, e reinicie o serviço). É um tiro no escuro, só vi uma reclamação onde o cara resolveu assim, se não funcionar, volte ao padrão.
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 03 de Agosto de 2012, 10:47
Desabilite "AcceptEnv LANG LC_*" no /etc/ssh/sshd_config (comente a linha, e reinicie o serviço). É um tiro no escuro, só vi uma reclamação onde o cara resolveu assim, se não funcionar, volte ao padrão.
não deu certo também  :-\
Título: Re: Banner do SSH não exibe acentos
Enviado por: zekkerj em 03 de Agosto de 2012, 12:05
Você já tentou gerar esse arquivo em outro formato, tipo texto puro? Sem forçar UTF-8?
Título: Re: Banner do SSH não exibe acentos
Enviado por: brunoqkz em 03 de Agosto de 2012, 13:20
Você já tentou gerar esse arquivo em outro formato, tipo texto puro? Sem forçar UTF-8?
já tentei também!
minhas primeiras tentativas eu sequer havia me preocupado com codificação