'리눅스 초급'에 해당되는 글 17건

  1. 2016.05.03 [DHCP](1) DHCP의 이해
  2. 2016.05.02 [FTP](5) Passive mode와 Active mode
  3. 2016.05.02 [FTP](4) FTP와 FileZilla 사용하기
  4. 2016.04.28 [FTP](3) FTP 설치 및 설정
  5. 2016.04.28 [FTP](2) FTP 기본명령어
  6. 2016.04.28 [FTP](1) FTP의 이해
  7. 2016.04.04 named.conf 설정




1. DHCP란?

 DHCP(Dynamic Host Configuration Protocol) 프로토콜은 TCP/IP 네트워크에서 호스트 컴퓨터가 IP 주소의 할당을 요청할 경우 이를 할당해 주며 동시에 호스트가 속한 네트워크에 대한 다른 정보를 알려 주는 역할을 한다. 네트워크 관리자는 DHCP 서버에 다른 호스트에 할당할 IP 주소 pool을 지정하며 IP를 할당받을 호스트에는 dhcp 클라이언트 프로그램이 설치되어야 한다. BOOTP 프로토콜도 DHCP와 비슷한 역할을 한다.


결국 PC의 수가 많아지거나 기존에 배정했던 IP를 사용하지 않게 되는 경우 IP 관리가 어렵기 때문에 DHCP 서버에서 안 쓰는 IP를 반납시키고 현재 사용가능한 IP 중에 하나를 배정해준다.


2. DHCP 구성

 2-1. DHCP 서버

  IP 주소를 가지고 있는 서버에서 실행되는 프로그램으로 일정한 범위의 IP 주소를 다른 클라이언트에게 할당하여 자동으로 설정하게 해주는 역할을 한다. DHCP 서버는 클라이언트에게 할당된 IP 주소를 변경 없이 유지해 줄 수 있다.

 2-2. DHCP 클라이언트

  시스템이 시작하면 DHCP 서버에 자신의 시스템을 위한 IP 주소를 요청한다. DHCP 서버로부터 IP 주소를 부여 받으면 TCP/IP 설정은 초기화되고 다른 호스트와 TCP/IP를 사용해서 통신을 할 수 있게 된다.  


'리눅스 초급 > DHCP' 카테고리의 다른 글

[DHCP](2) DHCP 기본설정  (0) 2016.05.03
Posted by 알 수 없는 사용자
,

1. ACTIVE mode

 

전통적으로 21번 port를 server ftp port로 알고 있습니다.

이는 command를 위한 port이고

실제 data를 전송하기 위해서는 data전송을 위한 port를 사용합니다.

보통 data전송 port는 20번 port를 사용합니다.

 

클라이언트는 1024번 이상의 빈 port를 골라서 command port로 사용하고

해당포트에 +1을 더한 port를 data port로 사용합니다.

 

예를 들어)

1. 클라이언트가 서버 ftp에 접속하려고 1080번 port를 이용하여 서버 ftp에

   접속 요청을 날립니다. 이때 +1더한 1081번 port의 정보를 같이 서버에 보냅니다.

2. 서버 ftp의 21번 포트에서 해당 클라이언트의 요청을 수락하고 21번 command port는

   1080번과 20번 data port는 1081번과 connection을 맺습니다.

3. 클라이언트에서 데이터를 요청하면

   서버측에서 클라이언트로 해당 데이터를 넣어줍니다.

 

 

2. PASSIVE mode

 

passive mode 일때 서버의 command port는 21번이며

data port는 1024번 이상의 사용하지 않는 port 중 하나를 사용합니다.

 

클라이언트는 1024번 이상의 빈 port를 골라서 command port로 사용하고

해당포트에 +1을 더한 port를 data port로 사용합니다.

 

예를 들어)

1. 클라이언트가 서버 ftp에 접속하려고 1080번 port를 이용하여 서버 ftp에

   접속 요청을 날립니다. 이때 +1더한 1081번 port의 정보를 같이 서버에 보냅니다.

2. 서버 ftp의 21번 port에서 해당 클라이언트의 요청을 수락하고 21번 command port는

   1080번과 connection을 이루며

   서버측의 1024이상의 빈 port와 클라이언트의 1081번 port와 connection을 맺습니다.

3. 클라이언트에서 데이터를 요청하고

   클라이언트가 서버에서 데이터를 가져옵니다.

 

'리눅스 초급 > FTP' 카테고리의 다른 글

[FTP](4) FTP와 FileZilla 사용하기  (0) 2016.05.02
[FTP](3) FTP 설치 및 설정  (0) 2016.04.28
[FTP](2) FTP 기본명령어  (0) 2016.04.28
[FTP](1) FTP의 이해  (0) 2016.04.28
Posted by 알 수 없는 사용자
,

1. 먼저 ftp 로컬로 접속이 가능한지 테스트를 하는 도중에 login fail이 떴다.


[root@localhost vsftpd]# ftp

ftp> open

(to) 220.116.179.196

Connected to 220.116.179.196 (220.116.179.196).

220 (vsFTPd 2.2.2)

Name (220.116.179.196:root): root

331 Please specify the password.

Password:

500 OOPS: cannot change directory:/root

Login failed.



2. setsebool 명령어를 이용하여 ftpd full access on 을 설정해준다.

[root@localhost vsftpd]# setsebool allow_ftpd_full_access on

[root@localhost vsftpd]# getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> on
allow_ftpd_use_cifs --> off

ftp> open
(to) 220.116.179.196
Connected to 220.116.179.196 (220.116.179.196).
220 (vsFTPd 2.2.2)
Name (220.116.179.196:root): root
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

* setsebool 명령어란?
NAME
       setsebool - set SELinux boolean value

SYNOPSIS
       setsebool [ -PV] boolean value | bool1=val1 bool2=val2 ...

DESCRIPTION
       setsebool  sets  the current state of a particular SELinux boolean or a
       list of booleans to a given value. The value may be 1 or true or on  to
       enable the boolean, or 0 or false or off to disable it.

구글링해도 애매하게 나오길래 man page를 검색해보았다. setsebool 는 현재 상태를 설정해주는 특정 selinux의 boolean 이나 boolean 리스트이다. 1은 사용가능, 0은 사용불가능이다. selinux 정책으로 사용되는 기능들을 setsebool을 통하여 끄고 킬 수 있는 명령어이다.


3. FileZilla로 파일 업로드하기

[root@localhost centos]# ls -l

합계 5617564

-rw-r--r--. 1 root root 4467982336 2016-05-02 20:40 CentOS-6.5-x86_64-bin-DVD1.iso

-rw-r--r--. 1 root root 1284395008 2016-05-02 20:35 CentOS-6.5-x86_64-bin-DVD2.iso


윈도우에 있는 이미지 파일들이 /centos 안으로 잘들어갔다


성공!




'리눅스 초급 > FTP' 카테고리의 다른 글

[FTP](5) Passive mode와 Active mode  (0) 2016.05.02
[FTP](3) FTP 설치 및 설정  (0) 2016.04.28
[FTP](2) FTP 기본명령어  (0) 2016.04.28
[FTP](1) FTP의 이해  (0) 2016.04.28
Posted by 알 수 없는 사용자
,

1. vsFTP 설치

[root@vilinux-03 ~]# yum -y install vsftpd

-> yum 명령으로 간단하게 vsftpd 설치가 가능하다.

[root@vilinux-03 ~]# rpm -qa | grep ftp
ftp-0.17-54.el6.x86_64
vsftpd-2.2.2-14.el6_7.1.x86_64
-> vsftp가 잘 설치된 것을 볼 수 있다.


2. /etc/vsftp/vsftpd.conf 설정하기

anonymous_enable=NO 

-> 익명의 사용자가 접속할 수 있는지 설정한다. 기본값은 YES로 보안을 위해 NO로 바꿔준다.

local_enable=YES

-> local 사용자가 사용가능한지 설정해준다.

write_enable=YES

-> 접속한 사용자가 write할 수 있는지 설정한다.

local_umask=022

-> 파일을 업로드하거나 받았을 때 기본 umask값

anon_upload_enable=YES
-> 위의 anonymous_enable 과 연관된 설정으로 익명의 사용자가 업로드 할 수 있게 할 것인지 설정한다.

dirmessage_enable=YES
-> 사용자가 특정 디렉토리에 접근하였을 때 메시지를 보여준다.

xferlog_enable=YES
-> vsftp의 로그파일로 오류가 있거나 작업을 하였을 때 확인할 수 있다.

xferlog_file=/var/log/xferlog
-> vsftp의 로그파일 경로

connect_from_port_20=YES
-> ftp는 20,21번 포트를 사용한다.

chroot_local_user=YES
-> local 사용자가 접근했을 때 chroot으로 상위 디렉토리에 접근하지 못하게 막는다. 즉 계정의 홈디렉토리를 최상위로 설정하여 상위 디렉토리에 접근 할 수 없다. 

listen=YES
-> ftp 요청을 받기 위한 설정



3. vsftp 잘 작동하는지 확인

 3-1. 실습을 위해서 방화벽을 꺼준다.(실습을 위해 그냥 다꺼버리는게 속편합니다)

[root@vilinux-03 /]# service iptables stop

iptables: Setting chains to policy ACCEPT: filter          [  OK  ]

iptables: Flushing firewall rules:                         [  OK  ]

iptables: Unloading modules:                               [  OK  ]



 3-2. selinux도 꺼준다.(selinux enabled 안바꿨다가 동작하지 않았던 경험이..)

[root@vilinux-03 /]# cat /etc/sysconfig/selinux | grep disabled

#     disabled - No SELinux policy is loaded.

SELINUX=disabled

[root@vilinux-03 /]# cat /etc/selinux/config | grep disabled

#     disabled - No SELinux policy is loaded.

SELINUX=disabled



 3-3. 실습하기 위해 yong 유저를 만들고 test! 파일을 생성해준다.
[root@vilinux-03 /]# cd /home/yong
[root@vilinux-03 yong]# ls
test!

 

 3-4. 01번 클라이언트로 접속했을 때 test! 파일이 보이는 것을 확인할 수 있다.
[root@vilinux-01 ~]# ftp
ftp> open
(to) 14.0.81.236
Connected to 14.0.81.236 (14.0.81.236).
220 (vsFTPd 2.2.2)
Name (14.0.81.236:root): yong
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/home/yong"
ftp> ls
227 Entering Passive Mode (14,0,81,236,126,245).
150 Here comes the directory listing.
-rw-r--r--    1 0        0               0 Apr 28 02:38 test!
226 Directory send OK.

*실습을 위해 vsftpd.conf 에서 chroot_local_user=NO로 바꿨습니다. 


 3-5. 550 Failed to change directory 오류

ftp> cd /home/yong

550 Failed to change directory.


해결

chroot_local_user=NO


여기서 중요한 문제가 발생한다. chroot 항목을 NO로 풀어버리면 다른 사용자가 상위 디렉토리를 활보하고 다니게 된다. 보안상 굉장히 위험하다.


 3-6. chroot 응용법

다른 사용자는 막아두고 yong만 상위 디렉토리를 이용하게 하고 싶다면 chroot_list 에 yong 을 적어놓고 아래와 같이 설정합니다.

chroot_local_user=YES

chroot_list_enable=YES


[root@vilinux-03 yong]# cat /etc/vsftpd/chroot_list
#root 
yong

[root@vilinux-01 ~]# ftp
ftp> open
(to) 14.0.81.236
Connected to 14.0.81.236 (14.0.81.236).
220 (vsFTPd 2.2.2)
Name (14.0.81.236:root): yong
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/home/yong"
ftp> ls
227 Entering Passive Mode (14,0,81,236,44,106).
150 Here comes the directory listing.
-rw-r--r--    1 0        0               0 Apr 28 02:38 test!
226 Directory send OK.

[root@vilinux-01 ~]# ftp
ftp> open 14.0.81.236
Connected to 14.0.81.236 (14.0.81.236).
220 (vsFTPd 2.2.2)
Name (14.0.81.236:root): won
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pw
257 "/"
ftp> cd /home/won
550 Failed to change directory.

chroot_list에 설정해둔  yong 사용자는 다른 디렉토리를 사용할 수 있고 list에 없는 won 사용자는 다른 디렉토리 이동이 안되는 것을 볼 수 있습니다.







* 다음 글에선 passvie mode와 active mode의 차이점을 알아보겠습니다!

'리눅스 초급 > FTP' 카테고리의 다른 글

[FTP](5) Passive mode와 Active mode  (0) 2016.05.02
[FTP](4) FTP와 FileZilla 사용하기  (0) 2016.05.02
[FTP](2) FTP 기본명령어  (0) 2016.04.28
[FTP](1) FTP의 이해  (0) 2016.04.28
Posted by 알 수 없는 사용자
,

1. FTP 명령어

open : 일반사용자가 ftp서버에 접속할 때 사용한다.

ex) open IP, hostname, domainname


close : 접속을 종료한다.

ex) close


ascii : ASCII 전송 모드로 바뀐다

ex) type acill


bin : 이진 모드로 바뀐다. 일반적으로 사용한다.

ex) type bin


get : 정확한 이름을 지정하여 파일을 받는다.

ex) get 파일명


mget : Multiple get 여러 개의 파일을 동시에 받는다

ex) mget 파일명


put : 정확한 이름으로 파일을 전송한다.

ex) put 파일명


mput : Multiple put 여러 개의 파일을 동시에 전송한다.

ex) mput 파일명


* 이 외의 pwd, ls, mkdir 등의 기본 명령어들도 똑같은 기능으로 사용이 가능하다.


'리눅스 초급 > FTP' 카테고리의 다른 글

[FTP](5) Passive mode와 Active mode  (0) 2016.05.02
[FTP](4) FTP와 FileZilla 사용하기  (0) 2016.05.02
[FTP](3) FTP 설치 및 설정  (0) 2016.04.28
[FTP](1) FTP의 이해  (0) 2016.04.28
Posted by 알 수 없는 사용자
,

1. FTP

 웹상에서 파일을 PC로 다운받거나 업로드 할 때에 사용하는 프로토콜이다. FTP는 서버와 클라이언트로 나눠진다. 

포트는 21번을 사용하며 자신에게 오는 FTP 클라이언트들의 요청을 받아 들일 준비를 하고 있는 프로토콜이다. 


2. FTP 의 종류

 2-1. SFTP

Secure FTP 즉 보안이 강화된 FTP라고 보면 된다. SSH을 통해서 파일을 전송하는 프로토콜이다.

 2-2. TFTP

Trivial FTP 로서 FTP, SFTP와는 다르게 UDP를 사용한다. UDP 는 전송 도중에 데이터가 유실될 가능성이 높다.

예전에는 장비들의 펌웨어 업그레이드를 위하여 TFTP가 자주 사용되었다.

 2-3. vsFTP

 vsftp는 보안 부분을 특히 강조한 데몬으로 Redhat, Suse, Open-BSD에서 기본 FTP로 채택하고 있으며 보안, 빠른 퍼포먼스, 안정성을 주요 특징으로 소개하고 있다. 

 2-4. proFTP

 Professional FTP Daemon 서버는 Unix 호환 운영체제를 위해 배포되고 있는 FTP 데몬으로 GPL에 의거하여 만들어진 프로그램이므로 누구나 자유롭게 수정, 배포, 사용할 수 있습니다.


3.  FTP 사용방법

 3-1. 웹브라우저를 사용하는 방법 

웹 주소는 http://~ 형식으로 시작하게 된다. http를 ftp로 바꿔서 ftp://~ 로 쓰게 되면 서버에 접속이 가능해진다.

 3-2. FTP 전용 클라이언트를 사용하는 방법

알FTP나 Filezilla 같은 프로그램으로 원하는 서버의 ip주소를 입력하여 서버에 접속할 수 있다.

 3-3. linux terminal 을 이용하는 방법

 terminal 창에 들어가서 ftp -> open 서버ip 를 통하여 접속할 수 있다.


 

'리눅스 초급 > FTP' 카테고리의 다른 글

[FTP](5) Passive mode와 Active mode  (0) 2016.05.02
[FTP](4) FTP와 FileZilla 사용하기  (0) 2016.05.02
[FTP](3) FTP 설치 및 설정  (0) 2016.04.28
[FTP](2) FTP 기본명령어  (0) 2016.04.28
Posted by 알 수 없는 사용자
,

named.conf 설정 ( centos 6 버전 )

# vi /etc/named.conf

-> DNS 데몬 설정 파일


# vi /etc/named.conf


//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
        //listen-on port 53 { 127.0.0.1; };

        listen-on port 53 { any; };

        -> DNS 서버의 port 번호 설정과 접근 할 수 있는 IP 설정 옵션

        -> DNS port 53에 대한 모든 IP가 접근 가능하도록 설정
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";

        -> zone 파일 디렉토리 설정 옵션
        dump-file       "/var/named/data/cache_dump.db";

        -> cache dump 파일이 생성되는 파일의 디렉토리 설정 옵션

        statistics-file "/var/named/data/named_stats.txt";

        -> 통계파일이 생성되는 디렉토리와 파일의 이름을 지정하는 설정 옵션
        memstatistics-file "/var/named/data/named_mem_stats.txt";

        -> memory관련 통계파일이 생성되는 디렉토리와 파일의 이름을 지정하는 설정 옵션

        allow-query     { any; };

        -> DNS 서버의 쿼리를 허용할 ip 대역 설정

        recursion yes;

        -> 외부에서 Name Server를 지정하여 허용/차단 옵션

        dnssec-enable yes;

        -> DNSSEC 서명검증 기능 설정 (공개키 암호화방식으로 데이터 위조-변조 공격을 막는 설정 )

        -> DNSSEC ( Domain Name System Security Extension ),bind 9버전 부터 적용
        dnssec-validation yes;

        -> DNSSEC 검증 확인 설정
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

         -> DLV ( DNSsec Lookaside Validator )
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

->Name Server의 실행에 있어 디버깅시에 참조 할 수 있는 log파일 생성 위치를 지정하는 설정 옵션


zone "." IN {
        type hint;
        file "named.ca";
};

-> "." 루트 도메인 지정  

​-> type : hint(루트도메인을 지정), master(1차 네임서버), slave(2차 네임서버) 

-> file   : Name Server에 대한 설정을 named.ca라는 파일에서 참조하는 설정

-> named.ca 파일은 13개의 루트 네임서버의 정보가 있다. 

-> 루트 네임서버가 13개일 경우 493Byte으로 UDP 연결이 가능하지만 

    루트 네임서버가 13개 이상일 경우 512Byte가 넘어서 TCP 연결로 해야하기 때문에 부하가 많아 생겨 13개까지 루트 네임서버가 있다.


include "/etc/named.rfc1912.zones";

-> 외부 설정파일 설정 옵션
include "/etc/named.root.key";

-> root 영역을 위한 DNSKey 파일  


# named-checkconf /etc/named.conf

-> conf 파일 정상적인지 체크




named.rfc1912.zones 설정 ( centos 6 버전 )

# vi /etc/named.rfc1912.zones

-> zone 관련 외부 설정 파일

-> zone 설정을 named.conf에서 설정하지 않고 named.rfc1912.zones 파일에서 설정


// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
// and http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt
// (c)2007 R W Franks
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

zone "localhost.localdomain" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "localhost" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "1.0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "0.in-addr.arpa" IN {
        type master;
        file "named.empty";
        allow-update { none; };
};


zone "dongwook.com" IN {

->도메인명 (dongwook.com 도메인명으로 요청이 들어오면 dongwook.zone 파일을 참조해서 질의 응답
           type master; 

           -> MASTER / SLAVE 설정

           file "dongwook.zone";

           -> zone 파일 설정 (정방향)

           allow-update { none; };     

           -> zone 파일 갱신 허용 (any or none)

};



zone "0.168.192.in-addr.arpa" IN {

->192.168.0 대역으로 요청이 들어오면 dongwook.rev 파일을 참조해서 질의 응답
           type master; 

           -> MASTER / SLAVE 설정

           file "dongwook.rev";

           -> zone 파일 설정 (역방향)

           allow-update { none; };     

           -> zone 파일 갱신 허용 (any or none)

};



# named-checkconf /etc/named.rfc1912.zones

-> conf 파일 정상적인지 체크  

-> 아무런 메세지가 발생하지 않으면 OK





정방향 zone파일 새성

도메인 주소를 IP주소로 변경

정방향 zone 파일은 *.zone으로 생성

 

 

# cd /var/named/

--> 링크 파일인 zone 파일 위치

 

# cd /var/named/chroot/var/named

--> zone 파일 위치

--> zone, rev 파일 설정 후  service named restart 하면 chroot 아래 자동으로 파일 생성됨

# cp /var/named/named.localhost /var/named/dongwook.zone

-> named.localhost을 샘플로 이용해서 dongwook.zone 파일 생성

 

# chown root:named dongwook.zone

# chmod 660 dongwook.zone

--> 정방향 zone파일 권한 변경

 

 

정방향 zone 파일 설정

# vi /var/named/dongwook.zone


$TTL    86400

-> Time To Live, 데이터의 수명 (1일) 
다른 네임서버에서 자신의 정보를 가져갔을 때, 그 서버의 캐시에 정보가 얼마나 오랫동안 남아있을지를 결정하는 설정 (초 단위)

-> 도메인 IP을 변경했을 경우 다른 네임서버들은 적용되려면 1하루가 걸린다. ​

@         IN          SOA        localhost. root.localhost.  (

                                       -> localhost. 네임 서버 주소 지정, root.localhost. 관리자 메일 주소
                                      1997022700 ; Serial  

                                      -> 데이터 버전정보나 년월일시간으로 시리얼 값 설정
                                      28800      ; Refresh
                                      -> 2차 네임서버가 1차 네임서버을 재조회 하는 시간

                                      14400      ; Retry

                                      -> Refresh가 안될경우 다시 재조회 하는 시간
                                      3600000    ; Expire

                                      -> Retry이나 1차 네임서버에 데이터가 수정 및 삭제 되었을 경우 해당 정보 삭제하는 시간
                                      86400 )    ; Minimum

                                      -> TTL 값


 

 

          IN           NS           dongwook.com.             : 네임 서버 지정

          IN           MX    10   mail.dongwook.com.       : 메일을 보낼 도메인 또는 주소 

          IN            A             192.168.10.10               : dongwook.com         도메인을 찾아갈 IP 주소 (192.168.10.10 으로 찾음)

ns      IN            A             192.168.10.10                : ns.dongwook.com    도메인을 찾아갈 IP주소 (192.168.10.10 으로 찾음)

www  IN            A             192.168.10.10                : www.dongwook.com 도메인을 찾아갈 IP주소 (192.168.10.10 으로 찾음)

test1   IN            A             192.168.10.101              : test1.dongwook.com  도메인을 찾아갈 IP 주소 (192.168.10.101 으로 찾음)
test2   IN            A             192.168.10.102              : test2.dongwook.com  도메인을 찾아갈 IP 주소 (192.168.10.102 으로 찾음)
mail    IN            A             192.168.10.100              : mail.dongwook.com   도메인을 찾아갈 IP 주소 (192.168.10.100 으로 찾음)
*        IN            A             123.123.123.123             : *.dongwook35.com   모든 서브 도메인이 찾아갈 서버 IP 주소

 

# 특이사항 : 도메인 끝에다가는 항상 '.' 찍어서 마지막을 나타내야한다.

                .을 안찍으면 dongwook.com.dongwook.com 으로 인식함.

 

@           : public domain을 의미  ( 공백 = @ = public domain )

IN           : 우측 설정을 적용

SOA        : Start Of Authority  권한이 시작됨을 의미

NS          : Name Server 네임 서버 지정
NA          : zone을 담당하는 네임 서버 주소

A            : 호스트 이름에 대응하는 IP주소 설정

PTR        : IP 주소에 대응하는 호스트 이름 설정

MX         : Mail Exchanger 메일 서버 지정
CNAME   : 별칭(aliase) 지정

TXT        : 호스트에 대한 텍스트 정보

HINFO     : 호스트의 CPU 정보와 운영체제 정보

MINFO    : 메일박스와 메일 리스트 정보

UINFO     : 사용자 정보

ANY        : 호스트에 관련된 모든 레코드들의 정보 


# named-checkzone "도메인명" "파일명"

# named-checkzone dongwook.com /var/named/dongwook.zone

zone dongwook.com/IN: loaded serial 0
OK

-> zone 파일 설정이 정상적인지 검사

 

 

역방향 rev 파일 새성

IP주소를 도메인으로 변경 (reverse zone)

역방향 rev 파일은 *.rev으로 생성

 

# cd /var/named/

--> 링크 파일인 rev 파일 위치

  

# cp /var/named/dongwook.zone /var/named/dongwook.rev

-> dongwook.zone 파일을 샘플로 이용해서 dongwook.rev 생성


# vi /var/named/chroot/var/named/dongwook.rev

--> 역방향 rev 파일 생성

 

# chmod 640 dongwook.rev

# chown root:named dongwook.rev

--> 역방향 rev 파일 권한 변경

 

 

역방향 zone 파일 설정

# vi /var/named/dongwook.rev


$TTL    86400

-> Time To Live, 데이터의 수명 (1일) 
다른 네임서버에서 자신의 정보를 가져갔을 때, 그 서버의 캐시에 정보가 얼마나 오랫동안 남아있을지를 결정하는 설정 (초 단위)
-> 도메인 IP을 변경했을 경우 다른 네임서버들은 적용되려면 1하루가 걸린다.


@         IN          SOA        localhost. root.localhost.  (

                                       -> @=public domain, localhost. 도메인네임서버 주소, root.localhost. 관리자 메일 주소
                                      1997022700 ; Serial  

                                      -> 데이터 버전정보나 년월일시간으로 시리얼 값 설정
                                      28800      ; Refresh
                                      -> 2차 네임서버가 1차 네임서버을 재조회 하는 시간

                                      14400      ; Retry

                                      -> Refresh가 안될경우 다시 재조회 하는 시간
                                      3600000    ; Expire

                                      -> Retry이나 1차 네임서버에 데이터가 수정 및 삭제 되었을 경우 해당 정보 삭제하는 시간
                                      86400 )    ; Minimum

                                      -> TTL 값


 

 


           IN           NS              dongwook.com.           : 
10        IN           PTR            dongwook.com.           : 192.168.10.10 주소에 대해서 dongwook.com 도메인과 매칭
10        IN           PTR            www.donwook.com.     : 192.168.10.10 주소에 대해서 www.dongwook.com 도메인과 매칭
101       IN           PTR            test1.dongwook.com.   : 192.168.10.101 주소에 대해서 test1.dongwook.com 도메인과 매칭
102       IN           PTR            test2.dongwook.com.   : 192.168.10.102 주소에 대해서 test2.dongwook.com 도메인과 매칭
100       IN           PTR            mail.dongwook.com.    : 192.168.10.100 주소에 대해서 mail.dongwook.com 도메인과 매칭 


# 특이사항 : 도메인 끝에다가는 항상 '.' 찍어서 마지막을 나타내야한다.

               .을 안찍으면 dongwook.com.dongwook.com 으로 인식함.


@           : public domain을 의미  ( 공백 = @ = public domain )

IN           : 우측 설정을 적용

SOA        : Start Of Authority  권한이 시작됨을 의미

NS          : Name Server 네임 서버 지정
NA          : zone을 담당하는 네임 서버 주소

A            : 호스트 이름에 대응하는 IP주소 설정

PTR        : IP 주소에 대응하는 호스트 이름 설정

MX         : Mail Exchanger 메일 서버 지정
CNAME   : 별칭(aliase) 지정

TXT        : 호스트에 대한 텍스트 정보

HINFO     : 호스트의 CPU 정보와 운영체제 정보

MINFO    : 메일박스와 메일 리스트 정보

UINFO     : 사용자 정보

ANY        : 호스트에 관련된 모든 레코드들의 정보


# named-checkzone "도메인명" "파일명"

# named-checkzone 192.168.0.10 /var/named/dongwook.rev
zone 192.168.0.10/IN: loaded serial 0
OK

-> zone 파일 설정이 정상적인지 검사

 

 

/etv/resolv.conf

# vi /etc/resolv.conf

nameserver 192.168.10.10

-> DNS 서버 IP 설정

-> 다른 네트워크에 있는 IP에 해당하는 도메인과 매칭(찾아) 시켜주는 파일(외부적으로 사용)


/etc/hosts, /etc/resolve.conf 차이점

-> /etc/hosts은 특정 서버의 호스트명을 관리하는 파일이다.

     인터넷이 미미하던 시절에는 /etc/hosts에다가 호스트명을 관리하고

     다른 서버에도 동일하게 내용을 복사해서 넣어줘야 하지만 관리할 서버가 많아지면서 호스트 이름이 중복이 되거나

     오타가 나면서 관리가 불가능해졌다. 그래서 이런 문제점을 해결하려고 나온 것이 DNS이다. 

-> /etc/hosts에서 정의된 내용이 없을 경우 /etc/resolve.conf 정의된 내용을 참조한다. 


Posted by 겸겸사
,