AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1531248
Accepted
trolley
trolley
Asked: 2024-10-27 05:13:33 +0800 CST2024-10-27 05:13:33 +0800 CST 2024-10-27 05:13:33 +0800 CST

A conclusão da guia SCP não funciona quando a autenticação de dois fatores está habilitada para SSH

  • 772

Eu segui https://ubuntu.com/tutorials/configure-ssh-2fa para configurar a proteção 2FA no SSH no meu sistema Ubuntu 22.04.5. Eu tenho apenas autenticação baseada em chave habilitada, então isso pode ser excessivo, mas parece mais seguro que mesmo se de alguma forma minha chave privada se soltasse, não seria o suficiente por si só.

Não quero ter que inserir um código TOTP ao conectar de um sistema na minha LAN, então o meu /etc/pam.d/sshdtem isto:

auth [success=done default=ignore] pam_access.so accessfile=/etc/security/access-local.conf
auth required pam_google_authenticator.so

/etc/security/access-local.conftem:

+ : ALL : 192.168.1.0/24
+ : ALL : LOCAL
- : ALL : ALL

Tudo isso funciona bem. Sou solicitado a fornecer um código TOTP quando estou fora da minha LAN e não quando estou nela.

Meu problema agora é que o tab-completion scpnão funciona mais. Por exemplo, em outro sistema eu tento:

$ scp server:someth<TAB>

e somethingdeve completar automaticamente, assumindo que o arquivo existe. Isso funciona bem quando não tenho o módulo PAM habilitado, mas não funciona quando está. Mesmo no caso em que estou na minha LAN e não sou solicitado a fornecer o código TOTP, ele falha. Quando pressiono TAB, recebo mensagens como esta no servidor /var/log/auth.log:

Oct 26 17:08:13 server sshd[1136620]: Connection closed by authenticating user user 192.168.1.182 port 53145 [preauth]
Oct 26 17:08:13 server sshd[1136732]: Connection closed by authenticating user user 192.168.1.182 port 53146 [preauth]

As mensagens sempre aparecem em pares como esta para cada pressionamento de TAB.

Alguém tem alguma ideia do que posso fazer para que isso funcione?

pam
  • 2 2 respostas
  • 48 Views

2 respostas

  • Voted
  1. user10489
    2024-10-27T12:34:52+08:002024-10-27T12:34:52+08:00

    Para que a conclusão de tabulação funcione, o ssh precisa funcionar sem exigir autenticação interativa.

    Há duas maneiras de fazer isso. A maneira comum é usar uma chave ssh criada com ssh-keygene a parte pública copiada (com ssh-copy-id) para o authorized_keysarquivo na sua configuração ssh remota. Provavelmente isso não pode funcionar sem ignorar ou desabilitar 2fa e derrotaria seus objetivos.

    A outra maneira é usar uma conexão ssh compartilhada habilitada com a ControlMasteropção e ajustada com várias outras opções. Isso efetivamente faz com que você faça login uma vez com ssh, e todas as conexões ssh subsequentes usem a conexão original sem precisar de reautenticação. Todas as conexões serão interrompidas quando a primeira conexão ("mestre") for fechada. Como alternativa, você pode definir um tempo limite com ControlPersistpara limitar quanto tempo a conexão em segundo plano permanece aberta após a primeira ter sido fechada e as conexões restantes ficarem ociosas. (Ou force manualmente o fechamento a qualquer momento...)

    Note, no entanto, que com a opção ControlMaster, todas as conexões ssh são multiplexadas por meio de um único soquete tcp e compartilham essa largura de banda. Então, se você estiver contando com vários soquetes tcp para obter maior largura de banda, precisará ignorar a conexão master para esses fluxos.

    • 1
  2. Best Answer
    trolley
    2024-10-27T21:04:24+08:002024-10-27T21:04:24+08:00

    A resposta de @user10489 me levou à solução. Meu sshd_confighad AuthenticationMethods publickey,keyboard-interactivee removendo keyboard-interactiveresolveram o problema, mas também fizeram com que o módulo PAM não fosse mais invocado para pedir o código TOTP.

    Eu modifiquei assim e tive que movê-lo para o final do meu sshd_config, e agora não sou solicitado a usar o TOTP na minha LAN, mas sim fora da LAN, e a função de completar com tabulação funciona pelo menos na minha LAN, o que é tudo o que eu queria:

    AuthenticationMethods publickey,keyboard-interactive
    
    Match Address 192.168.1.*
        AuthenticationMethods publickey
    
    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve