xinetd를 사용할 경우를 기준으로 하였습니다.

1. xinetd 에디트.

# vi /etc/xinetd.d/telnet

service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
#아래가 특정아이피만 텔넷을 가능하게 합니다.
#127.0.0.1과 로컬호스트만 가능,중복설정가능
only_from = 127.0.0.1 localhost
server = /usr/sbin/in.telnetd
log_on_failure = HOST RECORD
}


2. 상기 형식으로 고쳐준 후 xinetd restart
> /etc/init.d/xinetd restart
2005/07/04 12:35 2005/07/04 12:35
우선 아무런 설정을 하지 않았을때, 웹서버가 어떤 정보를 보여주는지
아래와 같이 telnet 접속을 해보세요. GET / HTTP/1.0 를 입력 후 enter.

[root@op home2]# telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/1.0

HTTP/1.1 403 Forbidden
Date: Tue, 28 Oct 2003 06:06:16 GMT
Server: Apache/1.3.27 (Unix) PHP/4.3.1
Connection: close

위와 같이 아파치 1.3.27과 php4.3.1을 쓰고 있다는
것을 보여줍니다.

이런 정보들을 보여 주고 싶지 않다면 아파치 설정파일에
(아파치 설정 파일은 httpd.conf를 말함)

ServerTokens Prod[uctOnly] ([] 안은 생략될수 있음)를 넣어주면 됩니다.

몇가지 다른 키워드가 있는데 다음과 같습니다.

ServerTokens Prod[uctOnly]
: Apache 만 보여줌
ServerTokens Min[imal]
: Apache 버젼만 보여줌
ServerTokens OS
: 아파치 버젼과 운영체제를 보여줌
ServerTokens Full (또는 지시하지 않았을때)
: 모두 보여줌

ServerTokens 옵션은 아파치 1.3 이후 버젼에서 사용할수 있으며,
ProductOnly 키워드는 1.3.12 이후 버젼에 추가되었습니다.
2005/07/04 12:34 2005/07/04 12:34
원래 아파치 httpd.conf 세팅

DocumentRoot /home/httpd/htdocs
ServerName www.abc.com
ErrorLog logs/error_www.abc.com
CustomLog logs/access_www.abc.com common


수정된 아파치 httpd.conf 세팅

DocumentRoot /home/httpd/htdocs
ServerName www.abc.com
ErrorLog logs/error_www.abc.com
CustomLog logs/access_www.abc.com common
## 수정부분 시작
SetEnvIF Referer "http://www.abc.com" pass

Order deny,allow
deny from all
allow from env=pass
ErrorDocument 403 "이미지 링크하지 마세요!"

## 수정부분 끝

간단히 설명하자면 Referer 중 http://www.abc.com
이라는 값에 pass 라는 환경변수를 설정하였다가
gif, jpg, jpeg, png 이미지를 억세스할때 pass
환경변수가 있으면 억세스가 되고 없으면 접속거부를
하도록 하는 겁니다.
2005/07/04 12:33 2005/07/04 12:33