Permitir acesso via sshkey a usuários chrooted específicos

1

Estou tentando criar um sshkey para enviar a um fornecedor para que eles possam se conectar à pasta chrooted: / home / jail / home / A configuração e as permissões da pasta estão definidas para esse usuário específico, digamos "user1 "user1: user1

Sempre que eu crio uma chave com ssh-keygen, ele sempre lista o usuário root na parte inferior do .pub como root @ system. Não quero que o fornecedor se conecte como root, em vez disso, eles devem se conectar como user1 para que tenham acesso apenas ao diretório chrooted. As contas de usuário não têm creds de login, pois eu só quero que eles façam login com sshkeys para que possam transferir seus dados para a pasta-depósito.

Não consigo criar a chave na conta user1, pois seus privilégios são mínimos e eles nem executam o ssh-keygen. Tudo o mais que estou tentando é apenas configurá-lo para root @ system, já que essa é a conta na qual estou logado. Isso tem que ser uma prática comum, mas não consigo entender isso. Eu estava supondo que eu iria colocar o .pub do par no arquivo authorized_hosts chrooted e, em seguida, enviá-los com segurança a chave privada para usar para se conectar via SFTP e deixar seus arquivos.

Tudo funciona corretamente se eu tentar usar o sftp: sftp -i file [email protected]. No entanto, eu também posso apenas fazer o sftp -i arquivo [email protected] e me deixa lá com permissões de root. Eu só preciso parar o fornecedor de ser capaz de usar apenas root como o nome de usuário e ignorar o chroot.

    
por saleetzo 29.03.2017 / 22:15

1 resposta

4

Qualquer coisa depois da própria chave pública real no arquivo .pub é na verdade apenas um comentário; Geralmente, o padrão é username@hostname para o usuário que criou a chave e o host no qual ela foi criada. Ele pode ser removido totalmente ou substituído por um comentário indicando seu papel como uma chave de usuário único:

ssh-rsa [HASH GOES HERE] root@myhost

poderia ser:

ssh-rsa [HASH GOES HERE] Special keypair jailed shell access

Isso pode ser feito na criação com a opção -C . Quoth man ssh-keygen :

 -C comment
         Provides a new comment.

Então, se eu fosse para ssh-keygen -C "This is a comment" , a chave pública apareceria como:

ssh-rsa [HASH] This is a comment
    
por 29.03.2017 / 22:24

Tags