Solução da comunidade

Como iniciar sessão no Terminal Web do CasaOS e no SSH

A CasaOS discussion showing that the dashboard administrator and Linux SSH accounts can differ, with the original author succeeding after installing OpenSSH Server and setting a Linux user password.

A interface Web do CasaOS tem o seu próprio início de sessão de administrador, mas a funcionalidade integrada de Registo e Terminal liga-se ao sistema operativo através de SSH. Essa distinção explica o problema original da comunidade: introduzir o nome e a palavra-passe do administrador da WebUI do CasaOS não autenticava necessariamente uma conta do sistema Ubuntu, Debian ou Raspberry Pi.

As respostas de 2024 sugeriram inicialmente o histórico casaos nome de utilizador e palavra-passe na porta SSH 22. Isso funcionou na instalação do dispositivo de um dos participantes, mas não na instalação do CasaOS do autor original num portátil. O autor só conseguiu finalmente depois de instalar openssh-server, definir uma palavra-passe para um utilizador Linux real e introduzir esse nome de utilizador e palavra-passe na caixa de diálogo do terminal do CasaOS.

As credenciais da WebUI do CasaOS e as credenciais Linux são diferentes

Gumball tinha criado um perfil admin para iniciar sessão no CasaOS. Essa conta funcionava na interface do navegador, mas falhava na caixa de diálogo do terminal na porta 22. Outro participante relatou a mesma separação: as credenciais de administrador abriam o painel do CasaOS, enquanto o SSH utilizava uma conta do sistema operativo.

Isto significa que os campos do terminal devem ser entendidos como campos de autenticação SSH:

  • Nome de utilizador: uma conta Linux autorizada a iniciar sessão através de SSH.
  • Palavra-passe: a palavra-passe dessa conta Linux, caso a autenticação por palavra-passe esteja ativada.
  • Porta: normalmente 22, exceto se o servidor SSH tiver sido configurado para escutar noutra porta.

O CasaOS pode ser instalado em diferentes distribuições Linux e hardware, pelo que não é seguro assumir universalmente que todas as instalações atuais continuam a disponibilizar uma conta casaos/casaos funcional. Os utilizadores que estejam a comparar os dois sistemas operativos da IceWhale podem consultar CasaOS vs ZimaOS.

A resposta histórica sobre casaos/casaos

M3nhir respondeu que uma instalação inalterada do dispositivo poderia utilizar o nome de utilizador casaose a palavra-passe casaose a porta SSH 22. Para acesso através da LAN, o exemplo era:

ssh casaos@SERVER_LAN_IP

A resposta mencionava uma instalação do ZimaBlade. Quando aparece uma referência legada ao ZimaBlade no conteúdo atual da loja, o produto relevante é o servidor de placa única ZimaBlade atual. No entanto, o autor original estava a utilizar um portátil, e não hardware Zima.

As palavras-passe SSH predefinidas são um risco de segurança. Mesmo que casaos/casaos funciona numa imagem mais antiga; altere-a imediatamente e não exponha diretamente a porta 22 à Internet pública.

Por que o início de sessão de administrador do CasaOS falhou no terminal

A conta de administrador do CasaOS pertence ao sistema de utilizadores da aplicação Web. O SSH autentica-se junto dos utilizadores conhecidos pelo sistema operativo anfitrião e segue a configuração de autenticação do daemon SSH. O facto de o mesmo texto coincidir nos dois formulários de início de sessão não torna automaticamente as contas idênticas.

O tópico também contém relatos posteriores em que o terminal funcionava num Raspberry Pi, mas falhava no Ubuntu e no Hyper-V. Essas respostas mostram que o resultado depende da distribuição base, da existência e execução de um servidor SSH e da permissão para iniciar sessão com palavra-passe.

A solução confirmada pelo autor original

O Gumball acabou por comunicar que tinha conseguido depois de instalar o OpenSSH Server e definir uma palavra-passe. No Ubuntu ou Debian, o guia oficial do OpenSSH Server do Ubuntu utiliza:

sudo apt update
sudo apt install openssh-server

Após a instalação, confirme que o serviço está ativado e em execução:

sudo systemctl enable --now ssh
sudo systemctl status ssh

Defina ou altere a palavra-passe da conta Linux que será utilizada no terminal:

sudo passwd YOUR_LINUX_USERNAME

Na caixa de diálogo Registo e Terminal do CasaOS, o autor disse para introduzir o próprio nome de utilizador Linux, em vez de uma cadeia como username@192.168.x.x, introduzindo depois a palavra-passe definida para esse utilizador. Para um cliente SSH separado noutro dispositivo da LAN, o formato normal mantém-se:

ssh YOUR_LINUX_USERNAME@SERVER_LAN_IP

A wiki do CasaOS descreve igualmente o ambiente de linha de comandos como acessível através de SSH, do terminal do painel ou de um teclado e monitor ligados, no seu exemplo de acesso à linha de comandos.

A autenticação por palavra-passe também pode bloquear o terminal Web

Instalar o pacote não é suficiente se o servidor aceitar apenas chaves SSH. Os relatórios do projeto CasaOS documentaram casos em que o terminal Web esperava uma autenticação com nome de utilizador e palavra-passe e não funcionava com um servidor SSH configurado para aceitar apenas chaves.

Antes de alterar as definições de autenticação, teste primeiro a partir de um terminal normal na LAN. Se o SSH normal funcionar com o mesmo nome de utilizador e palavra-passe, mas o terminal do CasaOS não, é mais provável que o problema esteja na integração do terminal do CasaOS. Se o SSH normal também falhar, verifique o estado do serviço SSH e os registos de autenticação.

Não enfraqueça a segurança de um servidor exposto à Internet apenas para fazer com que o terminal Web aceite uma palavra-passe. Prefira o acesso apenas pela LAN, uma VPN de confiança ou SSH baseado em chaves a partir de um cliente normal, quando possível.

Correção importante: DenyUsers casaos bloqueia esse utilizador

Uma resposta posterior incluía um vídeo e dizia que tinha adicionado esta linha a /etc/ssh/sshd_config:

DenyUsers casaos

Essa diretiva não permite o acesso à conta casaos. O manual oficial do OpenSSH sobre o sshd_config indica que os nomes de utilizador correspondentes a DenyUsers não podem iniciar sessão. Por conseguinte, adicionar essa linha bloquearia o início de sessão SSH de casaos.

O vídeo é mantido abaixo porque fez parte da discussão da comunidade, mas a instrução citada DenyUsers casaos a instrução não deve ser copiada como solução para o início de sessão.

Se DenyUsers casaos já existir e a intenção for permitir essa conta, remova ou comente a regra correspondente, valide a configuração e só depois reinicie o SSH:

sudo sshd -t
sudo systemctl restart ssh

Não reinicie após um teste de configuração inválido; uma configuração SSH danificada pode bloquear o acesso de um administrador remoto.

Lista de verificação do início de sessão no terminal do CasaOS

  1. Identifique o nome de utilizador Linux no anfitrião; não presuma que o administrador da WebUI do CasaOS é a mesma conta.
  2. Instale openssh-server se o sistema operativo base ainda não o disponibilizar.
  3. Confirme que o serviço SSH está em execução e à escuta na porta esperada, normalmente a 22.
  4. Defina uma palavra-passe forte para o utilizador Linux selecionado, caso o terminal Web do CasaOS exija autenticação por palavra-passe.
  5. Teste ssh username@server-ip a partir de outro dispositivo na LAN.
  6. Na caixa de diálogo do terminal do CasaOS, introduza apenas o nome de utilizador, a respetiva palavra-passe e a porta SSH configurada.
  7. Verifique AllowUsers, DenyUsers, definições de autenticação por palavra-passe e regras da firewall, se o início de sessão continuar a falhar.
  8. Mantenha o SSH restrito à LAN ou a uma camada segura de acesso remoto.

Perguntas frequentes sobre o início de sessão no terminal do CasaOS

Que porta utiliza o terminal do CasaOS?

As respostas da comunidade utilizaram a porta SSH 22. Uma porta SSH personalizada tem de corresponder à porta onde o servidor SSH do anfitrião está efetivamente à escuta, e as implementações mais antigas do terminal do CasaOS podem ter limitações relativamente a portas não predefinidas.

Devo introduzir a conta de administrador da WebUI do CasaOS?

Não necessariamente. A conta da WebUI e a conta SSH do Linux são distintas no caso descrito no tópico. Utilize um nome de utilizador Linux válido e o respetivo método de autenticação SSH.

casaos/casaos continua a ser o início de sessão predefinido?

Foi reportado numa instalação mais antiga do dispositivo, mas falhou na instalação do portátil do autor original. Não o considere uma credencial universal atual e altere qualquer palavra-passe predefinida que ainda funcione.

Porque é que instalar o openssh-server resolveu o caso original?

O terminal Web do CasaOS depende de um servidor SSH no sistema operativo subjacente. Sem um daemon SSH em execução que aceite as credenciais do utilizador selecionado, o terminal não consegue estabelecer a sessão.

DenyUsers casaos permite o acesso ao terminal?

Não. Nega explicitamente o início de sessão SSH a casaos utilizador. A resposta posterior que o apresentou como parte de uma solução entra em conflito com o manual do OpenSSH.