반드시 수퍼유저로 로그인을 한다.
1. /etc/passwd 화일과 /etc/shadow 화일에 "misc" 그룹으로 된 "ftp" 유저를 등록한다.
예) ftp:x:100:100:anonymous ftp:/usr/FTP:/bin/true <-- /etc/passwd
예) ftp::6445:::::: <-- /etc/shadow
2. /etc/group 화일에 "ftp_g" 엔트리를 추가한다.
예) ftp_g::100:
3. 디렉토리를 생성한다.
# mkdir ~ftp ~ftp/{bin,pub,usr,etc,dev}
4. /bin/ls를 복사한다.
# cp /bin/ls ~ftp/bin
5. /etc/{passwd,group,netconfig} 화일들을 복사하고 설정한다.
# cp /etc./{passwd,group,netconfig} ~ftp/etc
6. 실시간 로더들을 복사한다.
# cp /usr/lib/ld.so ~ftp/usr/lib/ld.so
# cp /usr/lib/ld.so.q ~ftp/usr/lib/ld.so.1
7. ~ftp/dev/zero를 생성한다.
# cd ~ftp/dev
# mknod tcp c 11 42
# mknod ticotsord c 105 1
# mknod udp c 11 41
# mknod zero c 13 12
8. Shared C 라이브러리들의 복사본을 만든다.
# cp /usr/lib/libc* ~ftp/usr/lib
# cp /usr/lib/libdl* ~ftp/usr/lib
# cp /usr/lib/libintl* ~ftp/usr/lib
# cp /usr/lib/libnsl* ~ftp/usr/lib
# cp /usr/lib/libsocket* ~ftp/usr/lib
# cp /usr/lib/libw* ~ftp/usr/lib
# cp /usr/lib/nss_* ~ftp/usr/lib
# cp /usr/lib/straddr* ~ftp/usr/lib
9. 화일과 디렉토리의 퍼미션을 설정한다.
# cd ~ftp
# chown root . pub
# chgrp other . pub
# chown root bin bin/ls etc etc/[pg]* dev dev/zero usr usr/lib usr/lib/*
# chgrp ftp_g bin bin/ls etc etc/* dev dev/zero usr usr/lib usr/lib/*
# chmod 111 bin/ls
# chmod 444 etc/*
# chmod 555 . bin dev etc usr usr/lib usr/lib/*
# chmod 777 pub
10. /etc/inetd.conf 화일에 "ftpd"가 들어있어야 한다.
# ident "@(#)inetd.conf 1.16 94/03/08 SMI
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
11. 이제 ~ftp/pub 디렉토리에 화일들로 채운다.
1. /etc/passwd 화일과 /etc/shadow 화일에 "misc" 그룹으로 된 "ftp" 유저를 등록한다.
예) ftp:x:100:100:anonymous ftp:/usr/FTP:/bin/true <-- /etc/passwd
예) ftp::6445:::::: <-- /etc/shadow
2. /etc/group 화일에 "ftp_g" 엔트리를 추가한다.
예) ftp_g::100:
3. 디렉토리를 생성한다.
# mkdir ~ftp ~ftp/{bin,pub,usr,etc,dev}
4. /bin/ls를 복사한다.
# cp /bin/ls ~ftp/bin
5. /etc/{passwd,group,netconfig} 화일들을 복사하고 설정한다.
# cp /etc./{passwd,group,netconfig} ~ftp/etc
6. 실시간 로더들을 복사한다.
# cp /usr/lib/ld.so ~ftp/usr/lib/ld.so
# cp /usr/lib/ld.so.q ~ftp/usr/lib/ld.so.1
7. ~ftp/dev/zero를 생성한다.
# cd ~ftp/dev
# mknod tcp c 11 42
# mknod ticotsord c 105 1
# mknod udp c 11 41
# mknod zero c 13 12
8. Shared C 라이브러리들의 복사본을 만든다.
# cp /usr/lib/libc* ~ftp/usr/lib
# cp /usr/lib/libdl* ~ftp/usr/lib
# cp /usr/lib/libintl* ~ftp/usr/lib
# cp /usr/lib/libnsl* ~ftp/usr/lib
# cp /usr/lib/libsocket* ~ftp/usr/lib
# cp /usr/lib/libw* ~ftp/usr/lib
# cp /usr/lib/nss_* ~ftp/usr/lib
# cp /usr/lib/straddr* ~ftp/usr/lib
9. 화일과 디렉토리의 퍼미션을 설정한다.
# cd ~ftp
# chown root . pub
# chgrp other . pub
# chown root bin bin/ls etc etc/[pg]* dev dev/zero usr usr/lib usr/lib/*
# chgrp ftp_g bin bin/ls etc etc/* dev dev/zero usr usr/lib usr/lib/*
# chmod 111 bin/ls
# chmod 444 etc/*
# chmod 555 . bin dev etc usr usr/lib usr/lib/*
# chmod 777 pub
10. /etc/inetd.conf 화일에 "ftpd"가 들어있어야 한다.
# ident "@(#)inetd.conf 1.16 94/03/08 SMI
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
11. 이제 ~ftp/pub 디렉토리에 화일들로 채운다.