Em Sábado 23 Outubro 2010, às 11:49:36, Carlos Welington Almeida escreveu: > Pessoal, bom dia! > > Pessoal, existe alguma forma (sem ser pelo sudo) de se criar um usuário que > possa ter um shell e a única permissão seja: ele logar no server, e pingar > pra clientes e deslogar? Ou seja, um usuário comum que só tenha o > privilégio de ter um shell para pingar para clientes e nenhum outro acesso > a > diretórios, outros executáveis, que ele não saia da pasta que está logado. > Uma outra pergunta seria: se podemos criar um grupo, e que quem pertença a > esse grupo só tenha permissão para logar no sever e pingar e mais nada. > > Abraço a todos > > Carlos ALmeida
Olá! Não é bem a resposta para a sua pergunta, mas faz quase a mesma coisa: Você pode fazer uma jaula, colocar o usuário dentro dela e apagar de lá os comandos/programas que você não queira que ele tenha. Para brincar, você pode iniciar com este script que faz automagicamente uma jaula para você com um usuário que você especificar. (É uma jaula meio fajuta, mas funciona bem) http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/ ele coloca alguns programas dentro da jaula, mas sinta-se a vontade para remove-los (menos o bash e o su) (Existem outras maneiras de se fazer uma jaula, libpam-chroot e rbash por ex ) Uma outra idéia é colocar um script no lugar do shell do usuário no /etc/passwd, e que so permita a entrada de hosts para realizar um ping. Creio que seja o mais proximo ao que você procura. Por exemplo, este scriptzinho sem-vergonha: /usr/local/bin/login_ping.sh =====oOo===== #!/bin/rbash clear ipa=1 echo -ne " **************************************** * Maquina da empresa X * * Uso controlado * * Somente ips ou FQDN, por favor. * **************************************** " echo " Bem vindo, $USER" while [ -n "$ipa" ] ; do echo -en "\nentre o ip/host: " read ipa if [ ${#ipa} -gt 50 ] || [ -z "$ipa" ]; then exit 0; fi ipa=${ipa//,/\.} ipa=${ipa// /} ipa=${ipa//[^a-zA-Z0-9_.-]/} if [ -z "$ipa" ] ; then exit 0; fi ping -c 4 $ipa sleep 2s done =====oOo===== grep teste /etc/passwd teste:x:1019:1019:,,,:/dev/null:/usr/local/bin/login_ping.sh agora, testando: ++++++++++++++++++++++++ ssh te...@localhost Password: **************************************** * Maquina da empresa X * * Uso controlado * * Somente ips ou FQDN, por favor. * **************************************** Bem vindo, teste entre o ip/host : 127.0.0.1 PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_req=1 ttl=64 time=0.102 ms 64 bytes from 127.0.0.1: icmp_req=2 ttl=64 time=0.086 ms 64 bytes from 127.0.0.1: icmp_req=3 ttl=64 time=0.080 ms 64 bytes from 127.0.0.1: icmp_req=4 ttl=64 time=0.080 ms --- 127.0.0.1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2997ms rtt min/avg/max/mdev = 0.080/0.087/0.102/0.009 ms entre o ip/host : www.unicamp.br PING lvs0.unicamp.br (143.106.10.30) 56(84) bytes of data. 64 bytes from lvs0.unicamp.br (143.106.10.30): icmp_req=1 ttl=57 time=13.9 ms 64 bytes from lvs0.unicamp.br (143.106.10.30): icmp_req=2 ttl=57 time=14.3 ms 64 bytes from lvs0.unicamp.br (143.106.10.30): icmp_req=3 ttl=57 time=16.8 ms 64 bytes from lvs0.unicamp.br (143.106.10.30): icmp_req=4 ttl=57 time=13.5 ms --- lvs0.unicamp.br ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 13.519/14.695/16.895/1.312 ms entre o ip/host : Connection to localhost closed. ++++++++++++++++++++++++ [ ]s, e divirta-se. Henry -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201010232219.08527.jmhenri...@yahoo.com.br