sun's longitude:300 50 14.40 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/delete.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
 ★ 글 지우기 항목입니다. 한번 더 생각하시고 결정하십시오.!!!
제목 180 번 글의 답장글 : Re: 메일 보내기가 않됩니다.(김봉철씨 글 발취)
 이름  미운오리새끼



김봉철 씨 글 발취



4-1. sendmail 설치하기

먼저 sendmail이 설치되어 있는지 확인해 보자.

[san2@www san2]$ rpm -qa |grep sendmail
sendmail-8.9.3-10kr
[san2@www san2]$

필자의 시스템에는 버전이 8.9.3 인 RPM으로 설치되어 있다.
설치되어 있지 않다면 CD-ROM이나 해당 배포본의 FTP싸이트에서
다운로드하여 설치하자.

예: CD-ROM으로 설치하는 경우

[san2@www san2]$ su
Password: ********
[root@www san2]# mount /mnt/cdrom
[root@www san2]# cd /mnt/cdrom/RedHat/RPMS
[root@www RPMS]# rpm -Uvh sendmail*
sendmail #################################
[root@www RPMS]#
[root@www RPMS]# /etc/rc.d/init.d/sendmail start
[root@www RPMS]#


4-2. qpopper 설치하기

메일을 보내기만 하면 안되겠죠?? 클라이언트에서 메일을 받을 수 있어야
한다. 즉 클라이언트에서 받을 수 있게 하기 위해서는 POP3같은 데몬을
서버에 설치해 주어야 한다.
레드햇 배포본은 기본적으로 pop3을 제공한다. 그러나 단독으로 pop3 패키
지로 되어 있지 않고 imap 와 함께 제공된다.

# rpm -qi imap

위의 명령으로 imap와 pop3가 설치되어 있는지 확인하기 바란다.
설치가 되어 있다면 굳지 이하 아래에 설명하는 qpopper를 설치할 필요는
없다.
imap 패키지로 설치되어 있는데 메일을 받을 수 없다면 /etc/inetd.conf
파일과 /etc/serveecs 파일에서 pop3(정확히 pop-3)에 관련된 주석(#)을
제거하면 된다.

필자는 직접 qpopper 3.0 소스를 받아 컴파일하여 설치하였다.
박재호님 홈페이지(http://www.kies.co.kr/~jhpark/Sendmail/popper.html)
에 자세한 정보가 있으니 꼭 방문하도록 한다.
여기에서는 모든 개념적인 설명은 제외하고 오직 설치에만 언급한다.

일단 qpopper 3.0을 다운로드하자.

ftp://ftp.qualcomm.com/eudora/servers/unix/popper/

에 접속하면 2.53 버전과 3.0b17, 3.0b18 버전이 있다.
필자는 qpopper3.0b18.tar.Z (2,432KB)을 다운로드 하였고,
/usr/local/src 에 그 소스를 컴파일하고
/usr/local/qpopper 라는 디렉토리에 설치할 것이다.

# cp qpopper3.0b18.tar.Z /usr/local/src/
# cd /usr/local/src
# ls
qpopper3.0b18.tar.Z
# uncompress qpopper3.0b18.tar.Z
# tar xvf qpopper3.0b18.tar
# cd qpopper3.0
# ./configure --enable-specialauth \
--enable-bulletins=/var/spool/bulls \
--enable-servermode
# make
# cp popper/popper /usr/local/lib/
#

레드햇6.0은 기본적으로 쉐도우패스워드를 사용하므로
"--enable-specialauth" 옵션을 주고 꼭 컴파일하기 바란다.


/etc/services 파일을 다음과 같이 편집한다.

-----------------------------------------------------------
#pop-2 109/tcp postoffice # POP version 2
#pop-2 109/udp
#pop-3 110/tcp # POP version 3
#pop-3 110/udp
pop3 110/tcp # popper
-----------------------------------------------------------

참고로,

pop3 110/tcp pop-3 # POP3

와 같이 설정했을 경우 오른쪽의 "pop-3"은 왼쪽의 "pop3" 서비스 이름에 대한
별칭이름이다.
따라서 다음과 같이 모두 접속할 수 있다.

[root@www san2]# telnet localhost 110
[root@www san2]# telnet localhost pop3
[root@www san2]# telnet localhost pop-3

/etc/inetd.conf 파일도 다음과 같이 편집한다.

-----------------------------------------------------------
#pop-2 stream tcp nowait root /usr/sbin/tcpd ipop2d
#pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d
pop3 stream tcp nowait root /usr/local/lib/popper popper -s
-----------------------------------------------------------

참고로, 포트 번호가 1024 보다 작은 포트는 오직 root 레벨에서만 접근할 수
있다. 이 포트를 맨 페이지에 의하면 일명 "low numbered" 포트라고 부른다.


슈퍼데몬을 재실행한다.

# /etc/rc.d/init.d/inet restart

제대로 동작하는지 테스트해보자.

[root@www san2]# telnet localhost pop3
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK QPOP (version 3.0b18) at www.linux.ac.kr starting.
user san2 #<---이 부분은 직접 입력한다.
+OK Password required for san2.
pass 12345678 #<---이 부분은 직접 입력한다.
+OK san2 has 42 messages (595757 octets).
quit #<---이 부분은 직접 입력한다.
+OK Pop server at www.linux.ac.kr signing off.
Connection closed by foreign host.
[root@www san2]#

위와 같이 메시지가 나오면 성공한 것이다.
필자 QPOP 버전은 3.0b18 이고 42개의 mail 이 있는 셈이다.
imap 패키지의 pop3(pop-3)으로 테스트하려면
# telnet localhost pop-3 나
# telnet localhost 110으로 접속해야 한다.
imap 는 143번으로 접속한다.

이제 여러분의 리눅스 박스는 클라이언트에서 메일을 받을 준비가 되어 있다.
다음은 sendmail 설정파일의 예이다. 꼭 이해하고 넘어가야 한다.


4-3. /etc/sendmail.cf

--------------------------------------------------------------
# anything else is bogus
R$* $#error $@ 5.7.1 $: "550 Relaying denied" #<------[주의]
# 중략
Cwlocalhost
# file containing names of hosts for which we receive email
Fw/etc/sendmail.cw
--------------------------------------------------------------

부연 설명하자면 [주의]부분을 주석으로 처리하면 spam 메일 문제가 있다.
주석으로 처리되어 있다면 어쩌면 여러분의 리눅스박스는 Spamer의
본거지가 될 수 도 있다는 것이다.
주석으로 처리되어 있다면 주석을 위와 같이 제거하고 access파일을
아래와 같이 편집해 준다.
그리고
Fw/etc/sendmail.cw
와 같이 주석처리가 되어 있지 않아야 한다.

참고로, 센드메일 설정 파일에서 F 설정 명령어와 C 설정 명령어로 정의한
"w" 클래스는 서로 동일하다.
F 설정 명령어는 파일을 정의하는데 사용하고 C 설정 명령어는 문자열을
정의하는데 사용한다.
따라서,

Cwlocalhost linux.ac.kr mail.linux.ac.kr mail.sonamu.co.kr sonamu.co.kr

와 같이 직접 길게 나열해도 상관없다.


4-4. /etc/sendmail.cw

--------------------------------------------------------------
# sendmail.cw - include all aliases for your machine here.
# 네임서버에 등록된 모든 도메인을 이 파일에 다음과 같이 적어준다.
linux.ac.kr
mail.linux.ac.kr
linuxer.net
linuxer.com
sonamu.co.kr
--------------------------------------------------------------

참고로 이 파일은 하나의 리눅스 박스로 메일이 들어올 경우 각각의 메일을
받아줄 수신자를 설정하는 내용이다.
만약, sonamu.co.kr 도메인이 없다면 ID@sonamu.co.kr로 메일을 보내면
센드메일은 sonamu.co.kr 수신자가 없으므로 메일을 받지 못한다.
또한 sonamu.co.kr 호스트에 대해서 MX 레코드로 지정했다면 자체 큐잉상태가
되어 버린다.
이때 반송되는 메일 헤더의 메시지는 다음과 같다.


553 sonamu.co.kr. config error: mail loops back to me (MX problem?)
554 <aaa@sonamu.co.kr>... Local configuration error

다음은 메일서버(mail.sonamu.co.kr)가 독립적으로 존재할 경우
554 MX list for xxx.kr. points back to mail.sonamu.co.kr
554 <aaa@sonamu.co.kr>... Local configuration error

따라서 하나의 리눅스 박스로 네임서버와 메일서버를 같이 운영한다면
/etc/sendmai.cw 파일에는 MX 레코드를 갖는 모든 호스트를 수신자로 설정
해야한다.
또한 순수 도메인을 사용하고자 하므로 각각의 가상 도메인도 수신자로 설정
해야 한다.


4-5. /etc/sendmail.cm

특별하게 편집할 필요는 없다. 그냥 넘어간다.


4-6. /etc/mail/access

-------------------------------------------------------------
# 예제:
# cyberspammer.com REJECT
# sendmail.org OK
# 128.32 RELAY
#
# 주의 사항!!!
#
# 설정 파일을 작성할 때 sendmail.org 와 OK, 128.32 와 RELAY 사이는
# 스페이스가 아니라 꼭!!! <탭>키를 사용하여 띄워야 합니다.
localhost.localdomain RELAY
localhost RELAY
linux.ac.kr OK
linuxer.net OK
linuxer.com OK
sonamu.co.kr OK
192.168 RELAY

# access 파일을 고친 이후에는
#
# makemap hash /etc/mail/access < /etc/mail/access
#
# 명령으로 갱신해 주어야 합니다.
----------------------------------------------------------

참고로 /etc/mail/access 파일은, 센드메일 입장에서 센드메일이 메일 중계를
허용할 것인가(RELAY), 또는 허용하지 않을 것인가(REJECT)를 결정하는데
그 초점이 있다.

메일 중계라는 의미는 그 통로를 열어줄 것인지 아니면 열어주지 않을 것인지
에 대한 중계의 의미이다.
메일 중계의 대상은 센드메일로 들어오는 메일이다.
따라서 로컬 사용자의 POP3 유저와 다른 SMTP 서버가 이에 해당된다.


4-7. /etc/mail/virtusertable

매우 중요한 설정파일이다. 이 파일을 어떻게 잘 편집하느냐에 따라서
웹호스팅의 성공여부가 달려 있다고 해도 좋다. 주의 깊게 살펴보자.

필자가 왜 이렇게 설정했는가에 대해서는 맨 위의 '나의 목표'를 다시한번
읽어보기 바란다.

------------------------------------------------------------
# 이 파일을 보면 김정균님이 쓴 예제를 보면 쉽게 이해 할 수 있다.

webmaster@linux.ac.kr san2
ftp@linux.ac.kr san2
study@linux.ac.kr san2
study-app@linux.ac.kr san2
study-net@linux.ac.kr san2
game@linux.ac.kr gamedori@hanmail.net
@linuxer.com com
webmaster@linuxer.net net
ftp@linuxer.net net
meeting@linuxer.net meet
admin@sonamu.co.kr sonamu
----------------------------------------------------------

부연설명하자면

도메인 linux.ac.kr(메일서버) 에 대해서
game@linux.ac.kr로 오는 메일은 gamedori@hanmail.net으로
메핑하고 나머지 webmaster@linux.ac.kr ftp@linux.ac.kr
study@linux.ac.kr study-app@linux.ac.kr study-net@linux.ac.kr
로 오는 메일은 이 서버 관리자인 root의 일반 유저인 'san2' 계정으로
보낸다.

@linux.ac.kr san2

로 설정해 버리면 linux.ac.kr 도메인(메일서버)을 사용하여 오는 메일은
모두 'san2'가 받게 되어 버린다. 다른 일반 유저까지도 포함하기 때문에
하나하나씩 지정해 주어야 한다.

도메인 linuxer.com(메일서버) 에 대해서
webmaster@linuxer.com ftp@linuxer.com stock@linuxer.com 으로 오
는 메일은 모두 com 유저가 받아 볼 수 있다.

이것을 이해 할 수 있다면 나머지 linuxer.net 과 sonamu 메일서버에 대해
서는 쉽게 이해 하리라 생각된다.

파일 편집이 끝났으면 다음과 같은 명령을 꼭 실행해 주어야 한다.

# makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable

이로써 가상메일서버 설정이 모두 끝났다.
2000년 04월 11일 22:20:38 화(저녁)  from 210.253.2.49
0
암호: 공용 보안 SSL 서버가 준비되기 전까지는 off 합니다

apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds