공부/인프라

리눅스 2주차-2

티오비 2017. 6. 27. 23:57
리눅스 2주차 - 2(DHCP, vsftpd).md

리눅스 2주차 - 2(DHCP, vsftpd)

DHCP

클라이언트나 다른 TCP/IP 기반 장비에 IP 주소를 제공하는 서비스

IP 주소와 함께 GateWay, Dns 주소 등 네트워크 자원에 연결할 수 있는 정보 제공

DHCP 서버는 클라이언트에서 특정 기간 IP를 임대하여 갱신 요청시 IP 주소 갱신한다.

PORT 번호
Server (UDP)67
Client (UDP)68

DHCP 동작 과정


  • Discover : client가 server 탐색, 주소 요청

  • Offer : server가 client에 응답, 할당 주소 제공

  • Request : client가 server

  • Ack : server가 client에 주소 사용 승인

    DHCP 서버 구성하기

1. 패키지 설치

yum -y install dhcp*

2. DHCP 관련 파일
  1. /etc/dhcp/dhcp.conf : dhcp 서비스 메인설정 파일

    • 기본적으로 내용이 없다. 참조 파일을 이용해서 설정 파일을 구성한다.

    • cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcp.conf

       
      subnet 10.5.5.0 netmask 255.255.255.244 // 클라이언트에게 제공할 ip 주소의 network id와 netmask 표시
      range 10.5.5.26 10.5.5.30 / 클라이언트에게 제공할 ip 주소의 범위값
      option domain-name-servers ns1.internal.example.org //클라이언트에게 제공해줄 DNS 서버 주소
      option domain-name "internal.example.org" //클라이언트에게 제공해줄 DNS 서버의 도메인명
      option routers 10.5.5.1 // 클라이언트가 사용할 게이트웨이 주소
      option broadcast-address 10.5.5.31 // Brocast 주소
      default-lease-time 600 // ip 임대 기간의 기본값 , 단위로 초
      max-lease-time 7200 // ip 임대 기간의 최대 값
  2. /var/lib/dhcpd/dhcp.lease : dhcp 데이터베이스 파일 - 임대 정보 확인

  3. 서비스 실행 및 방화벽 설정

    firewall-cmd --permanent --add-service=dhcp
    firewall-cmd --reload 
    systemctl start dhcpd
    systemctl enable dhcpd
3. Client에서 ip 할당 확인하기
  • 먼저 client에 dhclient가 설치되어 있는지 확인
  • 네트워크 설정에서 dhcp로 변경 -> network 서비스 중지 후 재실행 -> ip 주소 할당 확인

VSFTPD (Very Secure File Transfer Protocol) : 매우 안전한 ftp 서비스

-- redhat linux 기본 ftp 패키지로 채택

1.기존 명령어와 비교

proftpredhat 8-9대까지 사용, 설정이 복잡, 데이터 자원 소모가 큼
vsftpdredhat enterprise 출시 부터, 설정이 간편 데이터 자원 소모 적음

2. ftp 서비스 사용자

시스템에 등록된 사용자 : /etc/passwd에 등록된 사용자 - 관리자가 허가한 권한에 따라 업로드, 다운로드 가능

시스템에 등록되어 있는 사용자 : anonymous 익명 사용자 - 보안상 업로드는 허용하지 않는다

3. vsftpd 구성하기

1. 패키지 설치

yum -y install vsftpd*

2. 서비스 실행 및 방화벽 설정
firewall-cmd --permanent --add-sevice=ftp
firewall-cmd --reload
systemctl start vsftpd
3. 설정파일
12.anonymous_enable : 익명사용자 서비스 허용 여부 - ftp 서버를 공개 형태로 운영시에는 yes
16.local_enable : 시스템에 등록된 사용자 허용 여부 - 기본값 yes
19.write_enable : 시스템에 등록된 사용자 업로드 허용 여부 
29.anon_upload_enable : 익명 사용자 업로드 허용 여부
33.anon_mkdir_write_enable : 익명 사용자 디렉토리 생성 여부
37.dirmessage_enable : ftp 서비스 접속시 사용자는 해당계정의 홈디렉토리에 접근
                       사용자 홈디렉토리에 디렉토리 메세지 설정
                       계정 홈디렉토리 경로에 .message 파일 생성
40.xferlog_enable : 파일 전송시 발생되는 로그 사용 여부 
86.ftpd banner=Welcome to ...... : ftp 서비스 banner 설정
4.포트 형식
  • active mode : 서버가 클라이언트에 맞춰주는 형식 - 클라이언트가 데이터를 수신받을 임의의 포트를

    열어 알려주면 서버는 20번 포트를 이용해서 임의의 포트에 전송

  • passive mode : 클라이언트가 서버에 맞춰주는 형식 - 1023번 이후의 랜덤 포트를 서버가 클라이언트에 허용

    ​ 허용된 랜덤포트를 통해서 데이터 전송 작업

    • /etc/vsftpd/vsftpd.conf 에서 라인 수정

      pasv_enable=yes // passive mode 사용

      pasv_min_port = 10100

      pasv_max_port = 10120 // 적절한 범위

5. xferlog 분석

/var/log/xferlog : xferlog 경로

sun jun 18 13:1219 2017 1 ::ffff:192.167.137.1 .............

필드

1. ftp 서비스 접속 시간

  1. 파일 전송시 소요된 시간 -- 단위는 초

  2. ftp 서비스에 접속한 host 정보

  3. 전송한 데이터 크기 단위는 byte

  4. 전송된 파일의 위치, 정보

  5. 전송된 파일의 형식 : a (ASCII 7비트 문자) - 문서파일, b(binary == *,exe) - 실행파일

  6. 취해진 행동

    -:아무일 없음

    c:압축

    u:압축하지 않음

    t:tar로 묶임

  7. 전송형태 : i (incomming) : 업로드

  8. 접속한 사용자 종류 : r - 시스템에 등록된 사용자, a - anonymous 익명 사용자

  9. 접속한 사용자 명 : 9번이 r일 경우 접속한 사용자명, a일 경우는 7로 표시

  10. 접속한 서비스 명

  11. 인증 사용 여부 : 0 - 인증 사용 안 함, 1 - 인증 사용함

  12. 인증 성공 여부 : * - 인증 사용 안함, 0 - 인증 실패, 1-인증 성공

  13. 전송 여부 : i - 전송 실패, c - 전송 성공


'공부 > 인프라' 카테고리의 다른 글

리눅스3주차(fdisk) -1  (0) 2017.07.12
리눅스 2주차 - 1  (0) 2017.06.19