[Tutorial] Shell seguro e com chroot para seu servidor Linux
Enviado: 16 Jan 2016 20:46
Olá pessoal a algum tempo queria fazer esse tutorial, porem estava sem tempo, pois bem, agora vai sair. A algum tempo estava em busca de uma solução de shell linux seguro onde pudesse limitar os comandos que meus usuários poderiam executar no meu servidor e que os mesmos ficassem presos a seu diretório home.
Pois bem, após alguma pesquisa descobri um shell que faz isso o "lshell" e vou agora ensinar como instala-lo e configura-lo em um servidor baseado no Debian, porem você poderá instala-lo em qualquer outra distro, geralmente a partir de seus repositórios.
Para instala-lo no Debian você pode fazer via apt-get, como qualquer outro pacote:
Após concluir a instalação do lshell, deveremos proceder com a sua configuração. Esse shell tem toda sua configuração baseada no arquivo lshell.conf, para acessa-lo abra com seu editor favorito o arquivo: /etc/lshell.conf
Neste arquivo existirá um bloco [default] e no mesmo um item chamado allowed, esse item que você irá definir quais comandos poderão ser executados.
No meu caso dei permissão apenas para os comandos básicos que meus usuários precisarão para fazer serviços básicos em um servidor web, como backup, edição de arquivos, compactação e descompactação, etc.
Agora para começar a usar esse shell, você tem que nos usuários que deseja usa-lo, tornar para ele o shell padrão de um usuário já existente execute o seguinte comando:
Caso não exista o usuário ainda, você deverá usar o comando
Espero que essa dica seja de grande ajuda para mais pessoas.
Pois bem, após alguma pesquisa descobri um shell que faz isso o "lshell" e vou agora ensinar como instala-lo e configura-lo em um servidor baseado no Debian, porem você poderá instala-lo em qualquer outra distro, geralmente a partir de seus repositórios.
Para instala-lo no Debian você pode fazer via apt-get, como qualquer outro pacote:
Código: Selecionar todos
# apt-get install lshell
Neste arquivo existirá um bloco [default] e no mesmo um item chamado allowed, esse item que você irá definir quais comandos poderão ser executados.
Código: Selecionar todos
[default]
## a list of the allowed commands or 'all' to allow all commands in user's PATH
allowed : ['ls','pwd','cd','scp','nano','vi','tar','zip','unzip']
Agora para começar a usar esse shell, você tem que nos usuários que deseja usa-lo, tornar para ele o shell padrão de um usuário já existente execute o seguinte comando:
Código: Selecionar todos
usermod -s /usr/bin/lshell usuario
Código: Selecionar todos
adduser -s /usr/bin/lshell usuario