Usuário SSH limitado no Ubuntu 12

2

Estou executando o Minecraft em um servidor. Como posso dar acesso ao meu amigo SSH apenas para a pasta minecraft (uma pasta raiz), o comando screen e algumas portas?

    
por Jon Sullivan 05.08.2012 / 04:14

3 respostas

1

Para alcançar os 2 primeiros pontos, você deve prender o usuário em um diretório desejado, o termo é chamado de sandboxing e está relacionado com chroot no linux.

Um bom artigo para chroot (cadeia) de um usuário ssh pode ser encontrado aqui .

Sobre o terceiro ponto, não tenho certeza, mas você pode consultar Como limitar o acesso à rede por usuário / grupo usando iptables - Correspondência de proprietário .

Mas não tenho certeza se você tem que dar a ele restrições / privilégios.

    
por 05.08.2012 / 18:06
0

No FreeBSD, podemos usar a prisão para restringir o usuário. Mas a cadeia não existe no Linux. (Pode existir, mas não faz parte do sistema.) A prisão no FreeBSD é virtualização no nível do sistema operacional. Podemos conseguir o mesmo no Linux. Eu sugiro que você leia esse artigo, já que ele também menciona algum programa que pode fazer isso. Eu recomendo a virtualização no nível do SO para mais desempenho:

link

Então, basicamente, você é executado como um segundo sistema operacional e seu amigo ficará restrito a ele e ao seu conteúdo. O segundo Os que será executado irá correr dentro de uma pasta, e seu amigo não poderá sair para ver o resto do seu arquivo. Ele será restrito apenas a ele. Isso tem mais vantagem sobre o chroot, já que pode ser fácil escapar de um sandbox criado por um chroot.

Você poderá acessar a pasta do minecraft sem problemas. Mas você também terá que instalar a tela no segundo sistema operacional, se quiser que seu amigo tenha acesso à tela e instale todas as outras coisas que deseja que seu amigo tenha acesso.

Normalmente, seu segundo sistema operacional terá seu IP específico, você só precisa dizer que sempre que algo se conectar ao seu computador na porta x e y, redirecione-o para esse IP. Então, se ele se conectar à porta do computador (a porta que você quer que ele use para o SSH), ele será redirecionado no segundo sistema operacional. Mesmo com o porto de minecraft.

Além disso, para torná-lo mais fácil para você, você pode criar um link simbólico para a pasta minecraft, assim você nem sempre precisa ir para a pasta do segundo sistema operacional para acessar a pasta do minecraft.

Pode não ser a melhor solução para você (ou talvez seja), mas ainda é uma solução viável que você deve considerar, pois não é difícil de configurar e oferecer mais segurança e privacidade.

    
por 06.08.2012 / 04:19
0

O SSH não foi concebido para isso. Você provavelmente encontrará uma solução que considere segura, mas, de fato, provavelmente haverá um backdoor em algum lugar ( ssh -W , ssh -o ProxyCommand , etc.).

Acho que a melhor solução é criar uma VM que teria acesso à pasta minecraft e dar ao seu amigo uma conta SSH nessa VM .

Para você, o melhor seria o uso da virtualização no nível do sistema operacional como lxc ou OpenVZ , que basicamente implementa melhorou chroot e outros mecanismos de isolamento do nível do kernel, quase sem impacto no desempenho.

    
por 17.12.2013 / 22:54