13장. FTP
13.1 anonymous FTP install
* 쉽게 설치하기 위한 방법 : prompt상에서 "man ftpd"하면 FTPD의 설명과 함께 Example로 포함된 Script부분이 있다.
이 부분을 축출하여 실행 Script로 만들고, man page 에 설명된 설치방법에 따라 수행하면, 간단히 Anonymous FTP를 설치 할 수가 있다.
!) ftp server를 설치해놓고, anonymous로 접속하면 ls,get..등 기본명령이 안 된다.
can't create data socket(0.0.0.0,20) : no such file or directory
- device or library 의 문제일 가능성
다음은 ~ftp아래에 있어야 할 목록들이다.
ftpmgr은 ftp관리용 계정이고, 임의의 걸로 해도 됨.
각 directory Permission에 주의할 것.
~ftp/etc
>ls -al
drwxr-xr-x 9 ftpmgr adm 512 Apr 19 09:58 ./
drwxr-xr-x 5 root root 512 Mar 31 15:08 ../
d--x--x—x 2 root root 512 Apr 19 09:56 bin/
dr-xr-xr-x 2 root root 512 Apr 19 09:49 dev/
dr-xr-xr-x 2 root root 512 Apr 19 09:45 etc/
drwxrwxrwt 3 ftpmgr adm 512 Apr 16 09:57 incoming/
drwxr-xr-x 2 root root 512 Apr 19 09:58 outgoing/
drwxr-xr-x 9 ftpmgr adm 512 Apr 17 16:33 pub/
drwxr-xr-x 4 root root 512 Apr 19 09:51 usr/
> ls -al bin
d--x--x—x 2 root root 512 Apr 19 09:56 ./
drwxr-xr-x 9 ftpmgr adm 512 Apr 19 09:58 ../
lrwxrwxrwx 1 root root 13 Apr 19 09:56 ls -> ../usr/bin/ls*
> ls -al dev
dr-xr-xr-x 2 root root 512 Apr 19 09:49 ./
drwxr-xr-x 9 ftpmgr adm 512 Apr 19 09:58 ../
crw-r--r-- 1 root root 11, 42 Apr 19 09:47 tcp
crw-r--r-- 1 root root 99, 1 Apr 19 09:49 ticotsord
crw-r--r-- 1 root root 11, 41 Apr 19 09:47 udp
crw-r--r-- 1 root root 13, 12 Apr 19 09:47 zero
위는 device file들이고, 아래처럼 mknod 명령으로 만들어준다.
mknod [filename] [type] [major] [minor]
예) mknod zero c 13 12
mknod tcp c 11 42
....
>ls -al usr
drwxr-xr-x 4 root root 512 Apr 19 09:51 ./
drwxr-xr-x 9 ftpmgr adm 512 Apr 19 09:58 ../
d--x--x--x 2 root root 512 Apr 19 09:51 bin/
dr-xr-xr-x 2 root root 512 Apr 19 09:54 lib/
> ls -al usr/bin
total 16
d--x--x--x 2 root root 512 Apr 19 09:51 ./
drwxr-xr-x 4 root root 512 Apr 19 09:51 ../
-r-xr-xr-x 1 root root 13400 Apr 19 09:51 ls*
/usr/bin/ls를 cp하면 되고, 보다 엄밀하게는 새로 Compile 하는 게 좋다.
만약 Compile시 CFLAGS 와 LDFLAGS Option에 –B static (or -static in gcc)로 한다.
ls 외에도 gzip, gtar,,, 등의 Utility도 있으면 준비해 놓을 것.
> ls -al usr/lib
total 2652
dr-xr-xr-x 2 root root 512 Apr 19 09:54 ./
drwxr-xr-x 4 root root 512 Apr 19 09:51 ../
-rwxr-xr-x 1 root root 112104 Apr 19 09:52 ld.so.1*
-rwxr-xr-x 1 root root 621576 Apr 19 09:52 libc.so*
-rwxr-xr-x 1 root root 621576 Apr 19 09:52 libc.so.1*
-rwxr-xr-x 1 root root 2644 Apr 19 09:52 libdl.so*
-rwxr-xr-x 1 root root 2644 Apr 19 09:52 libdl.so.1*
-rwxr-xr-x 1 root root 14060 Apr 19 09:52 libintl.so*
-rwxr-xr-x 1 root root 14060 Apr 19 09:52 libintl.so.1*
-rwxr-xr-x 1 root root 473140 Apr 19 09:53 libnsl.so*
-rwxr-xr-x 1 root root 473140 Apr 19 09:53 libnsl.so.1*
-rwxr-xr-x 1 root root 67928 Apr 19 09:53 libsocket.so*
-rwxr-xr-x 1 root root 67928 Apr 19 09:53 libsocket.so.1*
-rwxr-xr-x 1 root root 44848 Apr 19 09:53 libw.so*
-rwxr-xr-x 1 root root 44848 Apr 19 09:53 libw.so.1*
-rwxr-xr-x 1 root root 10492 Apr 19 09:53 nss_dns.so.1*
-rwxr-xr-x 1 root root 20980 Apr 19 09:53 nss_files.so.1*
-rwxr-xr-x 1 root root 23344 Apr 19 09:54 nss_nis.so.1*
-rwxr-xr-x 1 root root 26680 Apr 19 09:54 nss_nisplus.so.1*
-rwxr-xr-x 1 root root 8068 Apr 19 09:54 straddr.so*
-rwxr-xr-x 1 root root 8068 Apr 19 09:54 straddr.so.2*
lib에는 System에서 제공하는 loader, shared library를 복사하면 됨.
기본적으로 /usr/lib 아래에 있고, cp 하면 된다.
File Permission에 특히 주의하고, incoming Service를 한다면, "chmod 1777 incoming" 로 Sticky Bit를 사용하면 anonymous로 올릴 수는 있는데 지우지는 못하도록 할 수 있다.
File과 Directory 소유권도 중요.
ftp가 소유권을 가지게 되면, 운 없으면(Permission 설정 잘못하면) 어느 날 ftp가 안 되는 사태가 올 수도 있다.
마지막으로, ftpd는 /etc/inetd.conf에서 정의되니, 설치 후 inetd daemon를 restart해야 함.
'Operating System > Solaris' 카테고리의 다른 글
| POWER ADMIN for SUN (Unix C-Shell Programming) (0) | 2007/08/04 |
|---|---|
| POWER ADMIN for SUN (sed) (0) | 2007/08/03 |
| POWER ADMIN for SUN (AWK) (0) | 2007/08/02 |
| POWER ADMIN for SUN (System Tuning) (0) | 2007/08/01 |
| POWER ADMIN for SUN (PPP) (0) | 2007/07/31 |
| POWER ADMIN for SUN (FTP) (0) | 2007/07/30 |
| POWER ADMIN for SUN (NFS) (0) | 2007/07/29 |
| POWER ADMIN for SUN (DNS) (0) | 2007/07/28 |
| POWER ADMIN for SUN (POP Server) (0) | 2007/07/27 |
| POWER ADMIN for SUN (Mail) (0) | 2007/07/26 |
| POWER ADMIN for SUN (Swap) (0) | 2007/07/25 |