IT/Linux

[31] Linux DHCP & FTP 실습

o_zeew 2022. 3. 18. 17:52

DHCP & FTP 실습

 

  ※ Linux에서만 작업 ※

 

<문제>
(1) DHCP
 1. 네트워크 10.0.0.0/24
 2. 서버는 30대 운영 중, 네트워크의 앞쪽부터 순차적으로 고정 IP 사용 중
 3. DHCP서버는 세번째 서버
 4. DNS 서버는 첫번째 서버, 168.126.63.1 두개 
 5. 게이트웨이 주소는 네트워크의 마지막
 6. 기본 임대 시간 2시간 최대 임대시간 4시간
 7. W10-1은 백한번째, W11-1은 이백일번째 IP를 우선적으로 사용

(2) FTP
 1. 사용자는 aa, bb
 2. 사용자의 홈디렉토리에 각 500MB의 aa.txt, bb.txt를 각각 생성함
 3. passive mode 최소 포트 60000, 최대 61000 사용 중
 4. anonymous 계정 사용 금지
 5. /data 디렉토리 생성 후 banner, xferlog, chroot 파일 저장
 6. 접속 후 3분이 지나면 세션 종료, 데이터 전송 중이라도 1분 후면 연결끊기
 7. aa는 chroot 적용
 8. W10-1은 ftp 접속 가능, W11-1은 접속 불가능하게 TCP_Wrapper 설정
 9. 그 외 나머지 설정은 일반적인 설정으로 구성

 


<DHCP 설정>

1. ip 확인

ip address 명령어를 사용해 ip 확인

 

2. VMware Workstation IP 변경

VMware Workstation Edit - Virtual Network Editor
문제 조건에 맞게 설정 변경

 

3. Host PC IP 변경

  - 문제에 Host PC의 IP가 지정되어 있지 않기 때문에 임의로 구성(뒤에서 두번째 IP)

실행창에 ncpa.cpl 입력 - VMnet8 우클릭 - 속성
인터넷 프로토콜 버전 4(TCP/IPv4) - IP 설정 

 

4. 설정 파일 편집

vi 편집기를 사용해 설정 파일 열기
문제 조건에 맞게 IP 변경
설정 파일 변경 후 반드시 시스템 재시작
ip address 명령어로 바뀐 IP 확인

 

5. Xshell 접속을 위해 등록정보 변경

CentOS7-1 우클릭 - 등록 정보
문제 조건에 맞게 IP 변경 (DHCP서버는 세번째 서버 사용)

 

6. DHCP, FTP 설치

yum 명령어로 dhcp와 vsftpd 설치
설치 완료

 

7. 설정 파일 편집

vi 편집기로 설정 파일 열기
예제 파일의 경로 확인 후 설정파일 맨 마지막에 붙여넣기

  - 필요 없는 내용 삭제

1번째 행 ~ 51번째 행 삭제
10번째 행 ~ 28번째 행 삭제
14번째 행 ~ 마지막 행 삭제

  - 설정해야할 예약이 두개이기 때문에 예약 부분 하나 더 복사

10번째 행 ~ 13번째 행을 맨 마지막에 복사

  - 문제 조건에 맞게 DHCP 서버 설정 변경

  - 설정 파일 변경 후 시스템 시작

 

8. W10-1, W11-1 에서 설정 적용 확인

  - ipconfig /release 명령어로 기존 IP 초기화

w10-1
w11-1

  - ipconfig /renew 명령어로 새로운 IP 할당

w10-1
w11-1

  - ipconfig /all 명령어로 자세한 정보 확인

w10-1
w11-1

  * 이 때 DNS 서버가 10.0.0.1에 고정되어 있기 때문에 url을 해석할 DNS가 없음

google url을 해석하지 못함

  * IP로는 ping이 되기 때문에 인터넷이 안되는 것이 아닌 DNS가 url을 IP로 변경하지 못하는 문제

IP로 Ping 테스트 가능

  * 2차 DNS를 추가하여 1차에서 해석 못한 url을 2차로 찾아가게 설정

vi 편집기로 설정 파일 열기
2차 DNS 추가
설정파일 변경 후 시스템 재시작

  * 다시 IP 받아서 설정 확인

DNS 설정 확인 가능
url을 해석하는 모습

 


 

<FTP 설정>

1. 사용자 aa, bb 생성 후 비밀번호 설정

사용자 aa, bb 생성 후 비밀번호 설정

 

2. 사용자의 홈 디렉토리에 각 500MB 파일 생성

사용자 aa의 홈디렉토리에 aa.txt 파일 생성
사용자 bb의 홈디렉토리에 bb.txt 파일 생성

 

3. 관련 파일 생성

설정 파일들을 모을 디렉토리 생성

  - banner file

banner 생성할 파일 생성
banner 화면 편집

  - chroot list

chroot list를 작성할 파일 생성
사용자 aa를 chroot에 추가

  - TCP Wrapper : hosts.deny 파일에 작성된 IP는 FTP 접속 불가

vi 편집기로 차단 설정 파일 열기
w11-1 추가

 

4. 설정 파일 편집

vi 편집기로 설정 파일 열기
anonymous 사용 안함
local 사용
쓰기 가능
Passive Mode 사용을 위해 20번 port 주석처리
xferlog 사용
xferlog file 경로 설정
접속 후 180초 동안 움직임 없을 시 접속 끊음
데이터 전송 시간이 60초를 초과하면 전송 끊기
banner file 경로 설정
chroot list 사용
chroot list 경로 설정
tcp wrapper 사용 / chroot 쓰기 권한 부여 / Passive Mode 허용 / 최소 포트 60000 / 최대 포트 60100
설정 파일 변경 후 시스템 시작

 

5. 방화벽 열기

  * 방화벽을 명령어로 열게 되면 아래의 원본 파일이 수정 됨

    명령어로 방화벽을 여는 것과 원본 파일을 직접 수정하는 방법이 있음

vi 편집기를 사용해 방화벽 원본 파일 열기
21번 port와 60000~60100번 port 설정
파일 수정 후 방화벽 재시작
설정 확인 가능

 

6. FileZilla에서 설정 적용 확인

  - W11-1은 hosts.deny에 입력했기 때문에 접속이 불가능 해야함

호스트 변경
전송 설정 - 수동형
로그인 비밀번호 입력
접속 불가능

  - W10-1은 접속 가능해야함

호스트 변경
전송 설정 - 수동형
로그인 암호 입력
접속 가능

 

7. Port 확인

  * 리눅스에 net-tools를 설치하면 netstat와 ipconfig 가능

설치 완료
데스크탑에 aa.txt파일을 넣은 후 전송이 시작됨
클라이언트 62032번 port / 로컬 60042번 port
로컬 60042번 port / 클라이언트 62032번 port