Viernes, 21 de Noviembre de 2008
Chroot y seguridad: Chroot y seguridad (y VI); FTP en CHROOT
· Chroot y seguridad
· Chroot y seguridad (II)
· Chroot y seguridad (III)
· Chroot y seguridad (IV)
· Chroot y seguridad (V); Librerías Compartidas
· Chroot y seguridad (y VI); FTP en CHROOT

Volver al indice de articulos
#! /bin/sh
# Instala todos los directorios y ficheros necesarios 
# dentro de una cuenta de usuario para que pueda 
# utilizar el FTP restringido y así actualizar sus páginas 
# WEB sin tener que depender de nosotros. 
#
# Jcea - Jesús Cea Avión
# Versión 1, Revisión 1 - 05 Feb 97
#
# **** ATENCION ****
#
# Este script debe ser invocado desde la cuenta del 
# usuario, ya que instala todo en el directorio actual. 
#
#

origen="/export/home/ftp/anonimo"
usuario=`pwd | awk -F/ '{print $NF}'`
echo El directorio fuente de la configuración es $origen
echo El nombre de usuario es $usuario
echo

umask 666

temp=`pwd`
echo Creando estructura de directorios en $temp
ln $origen/../actualizar_web ./actualizar_web
mkdir dev
mkdir usr
mkdir etc
mkdir usr/bin
mkdir usr/lib
ln -s usr/bin bin

lib=$origen/usr/lib
cd usr/lib
temp=`pwd`
echo Creando enlaces a las librerías compartidas en $temp
ln $lib/ld.so.1 ld.so.1
ln $lib/libc.so.1 libc.so.1
ln $lib/libdl.so.1 libdl.so.1
ln $lib/libintl.so.1 libintl.so.1
ln $lib/libnsl.so.1 libnsl.so.1
ln $lib/libsocket.so.1 libsocket.so.1
ln $lib/libw.so.1 libw.so.1
ln $lib/nss_dns.so.1 nss_dns.so.1
ln $lib/nss_files.so.1 nss_files.so.1
ln $lib/nss_nis.so.1 nss_nis.so.1
ln $lib/nss_nisplus.so.1 nss_nisplus.so.1
ln $lib/straddr.so.2 straddr.so.2

bin=$origen/usr/bin
cd ../bin
temp=`pwd`
echo Creando enlace a \"/bin/ls\" en $temp
ln $bin/ls ls

cd ../../etc
temp=`pwd`
umask 133
echo Creando "passwd" y "group" fantasma en $temp
cp /dev/null passwd
cp /dev/null group

dev=$origen/dev
cd ../dev
temp=`pwd`
echo Creando enlaces a dispositivos en $temp
ln $dev/tcp tcp
ln $dev/ticotsord ticotsord
ln $dev/udp udp
ln $dev/zero zero

cd .. 
temp=`pwd`
echo Creando directorio raíz de páginas WEB en $temp
echo Cambiando su propietario y grupo
umask 066
mkdir publico
chown $usuario publico
chgrp usuarios publico

echo
echo ¡¡FIN!!