Eu tenho um servidor Ubuntu que é usado para duas finalidades primárias para meus alunos:
.m
arquivos e as imagens de saída, que é apenas minha imagem original já percorreram o código deles). Todos os alunos são obrigados a gerar um par de chaves pública / privada, eles me dão a chave pública, que eu adiciono aos arquivos authorized_keys
para sua conta no meu servidor Ubuntu. Eles precisam ter a chave privada criptografada com uma senha strong e não compartilhá-la com outros alunos.
Atualmente, tenho a única entrada em authorized_keys
para cada conta prefixada com no-pty
, para que os alunos possam fazer login no servidor como um proxy e usar o SFTP para fazer upload de arquivos para o servidor. Esta é exatamente a configuração que eu preciso.
No entanto, no futuro, posso ativar o telnet e o FTP no servidor para um número restrito de contas. Se eu quiser impedir que qualquer serviço tenha um shell interativo, basta adicionar /sbin/nologin
ou /dev/null
a /etc/shells
e definir o shell padrão para usuários individuais como /etc/passwd
, mas isso interrompe a configuração de proxy e SFTP , mas aparentemente permite que o FTP funcione sem permitir logins interativos.
Existe uma maneira de definir "não há shells interativos" em um único local, ou eu deveria abandonar a configuração de telnet e FTP, e apenas manter a configuração do SFTP? A única razão pela qual estou considerando o FTP e o telnet, que são muito menos seguros do que o SFTP, é que alguns alunos estão fazendo firewalls que impedem as conexões SSH de saída.
Obrigado.
Tags ssh login linux ssh-keys ssh-tunnel