Network/Linux & WindowsServer

CentOS 7 - Linux (DHCP, FTP, DNS, WEB, Virtual Host) / 1

잇(IT) 2022. 4. 8. 09:47

- 이번 포스팅은 DHCP, FTP, DNS, WEB을 리눅스에서 작성하여 Windows 환경에서 확인해보는 작업을 해 볼 것이다. DHCP, FTP, DNS, WEB 설정 모두 리눅스에서만 설정 할 것이고 조건은 아래 주어진 조건에 맞추어 설정 할 것이다.

우선 아래 빨간색 부분의 조건들을 먼저 설정 해 줄 것이다.



- CentOS7 -1 설정

 

- /etc/sysconfig/network-scripts/ifcfg-ens33

리눅스 네트워크 설정을 조건에 맞게 설정해준다.

 

- DFS, WEB, DNS를 사용하기 위해 nfs-utils, httpd, bind, bind,utils, bind-libs 패키지를 설치해준다.

 

- /etc/named.conf

DNS 사용을 위해 named 설정 파일로 진입하여 13, 21번째 줄을 다음과 같이 수정해준다.

13 : Listen-on port 53 { any; } : DNS port 53으로 어떤 IP가 접근 가능하도록 할지 설정 하는 것이다. any로 했기 때문에 모두가 접근 가능하다.

21 : allow-query { any; } : 재귀 질의가 올 때 응답할지에 대한 설정이다.

 

- /etc/named.rfc1912.zones

NS를 정의하는 파일이다. 도메인에 대한 설정을 하기 위한 파일이다. zone 파일의 위치 master&slave 설정, 허용할 IP 등 설정을 한다.

 

- 정방향 zone 파일

CentOS7-1, CentOS7-2, CentOS7-3 모두 DNS를 사용할 것이기 때문에 NS서버를 3개 설정해주고 각 네임서버 도메인마다 IP 주소를 할당해준다. 외에도 @, www를 포함한 도메인에도 IP 주소를 맞게 설정해준다.

 

- 역방향 zone 파일

역방향 조회시 도메인 주소가 나오도록 하기 위해서 3개의 네임서버 및 도메인에 역방향 조회 설정을 해준다.

 

- User, Group 외에 other 권한도 사용할 수 있도록 권한을 변경 해준다. 변경된 설정을 저장해주기 위해 시스템 재실행을 해준다.

 

- DNS 사용을 위해 53번 포트를 udptcp 방식으로 방화벽을 허용해준다.

 

- /etc/httpd/conf/httpd.conf

- 119 : httpd가 요청된 파일을 검색할 경로를 지정하는 곳이다. (아파치 웹 문서들의 루트 디렉토리다.)

- 124~128 : 지정된 디렉토리 및 하위 디렉토리의 권한에 대한 정보다. /var/www까지의 접속을 허용하는 것을 알 수 있다.

- 163~165 : 이곳에 작성된 서비스를 제공한다. 여기선 index.html을 시작페이지로 제공하겠다는 의미다.

 

- 다음과 같이 기본 웹 페이지를 작성해준다.


- CentOS7-2 설정

 

- /etc/sysconfig/network-scripts/ifcfg-ens33

리눅스 네트워크 설정을 조건에 맞게 설정해준다.

 

- DHCP, WEB, DNS를 사용하기 위해 dhcp, httpd, bind, bind,utils, bind-libs 패키지를 설치해준다.

 

- /etc/dhcp/dhcpd.conf

dhcp 설정 파일에서 dhcp 네트워크 설정 및 예약 설정을 위와 같이 해준다.

 

- 시스템 변경 사항을 저장하기 위해 시스템 재시작을 해준다.

 

- /etc/named.conf

13 : 포트 53번으로 접근 가능하게 할 IP 주소를 설정한다. any로 설정했기 때문에 any로 설정한다.

 

- /etc/named.rfc1912.zones

master&slave에서 slave에 해당하는 서버이기 때문에 zone 설정 파일에서 typeslave, zone 파일명은 메인 dns 서버와 동일하게, mater 서버로 부터 zone 파일을 받아오기 위해 IP 주소를 입력한다.

변경된 사항을 저장하기 위해 시스템 재시작을 하게되면 다음과 같이 파일 변경 시간이 최신으로 바뀐 것을 볼 수 있고 이는 master 서버의 zone 파일을 잘 받아왔다는 것을 알 수 있다. (master 서버의 zone 파일에서 변경사항이 발생하면 serial 번호의 숫자가 커져야 slave 서버에서 zone 파일 업데이트가 된다.)

 

- 메인 웹 서버 접근 시 웹 페이지에 보여질 화면을 작성하고 시스템 재실행을 해준다.

 

- 위에서 설정한 서비스들을 사용하기 위해 방화벽을 허용해준다.


- CentOS7-3 설정

 

- 네트워크 설정을 조건에 맞게 변경해준 다음 변경된 사항을 저장하기 위해 시스템 재실행을 해준다.

 

- 임의의 사용자 2개를 생성한다.

 

- http, dns ftp 패키지를 사용하기 위해 해당 패키지들을 설치해준다.

 

- /etc/vsftpd/vsftpd.conf

- vsftpd 설정 파일에서 조건에 맞게 해당 설정들을 변경해준다.

12 : 임의의 사용자 접근 여부를 설정한다.

43 : passive mode를 사용 할 것이기 때문에 20번 포트는 주석처리 해준다.

53 : xferlog 파일의 경로를 지정해준다.

60, 63 : 세션 타임아웃, 데이터 연결 타임아웃 시간을 지정해준다.

102, 104 : chroot를 사용하고 사용할 사용자를 저장할 경로를 지정한다.

128 : tcp_wrappers(hosts.deny(allow) 사용을 허용한다.

129 : chroot 사용을 허용한다.

130~132 : passvie mode 사용을 허용하고 해당 포트를 열어준다.

 

- ftp 실행시 경고 메세지를 띄우기 위해 /etc/httpd/conf/httpd.conf 파일에서 지정한 경로에 파일을 생성하고 내용을 작성해준다.

 

- /etc/httpd/conf/httpd.conf 파일에서 지정한 경로에 chroot 지정 설정 파일을 생성하고 chroot를 적용시킬 사용자를 저장한다.

 

- xferlog 파일을 생성해준다.

 

- tcp_wrappers=YES tcp_wrappers를 사용하기 위해 /etc/hosts.allow(deny) 파일을 설정해준다. allow에는 ftp를 허용시킬 IP 주소를 입력하고 deny에는 제한 시킬 IP 주소를 입력한다.

 

- 변경된 설정을 저장하기 위해 시스템 재실행을 해준다.

 

- 메인 웹페이지 경로를 지정하고 해당 웹 페이지를 구성한다.

 

-  /etc/named.conf

13 : 해당 서버에 접근 허용할 IP 주소를 설정한다.

 

- /etc/named.rfc1912.zones

현재 서버는 master&slave slave에 해당하는 서버이기 때문에 zone 설정 파일에서 typeslave, file은 주DNS 서버의 zone 파일명과 동일하게, 업데이트 파일을 받을 master 서버의 IP 주소를 입력한다.

 

- 서비스들을 사용하기 위해 사용하는 서비스들의 방화벽을 허용해준다.

728x90