본문 바로가기

Linux/CentOS Linux 6.5

Chapter 9. Network of Linux

Chapter 9. Network of Linux
1. TCP/IP Network
 - Linux의 Network는 SELinux(Security Enhanced Linux)와 Network Service에 의해 관리된다.
 - Linux의 보안은 초기 설치 시 굉장히 느슨한 상태로 설치되며 보안이 취약해 보안 설정을 해줘야한다.
 - 보안성과 편의성은 반비례해 보안성이 높아지면 편의성은 낮아지고 편의성이 높아지면 보안성이 낮아진다.
 - Network Service가 원활히 수행되려면 Daemon을 실행해줘야 한다.
 - Daemon
 · Linux내의 주기적인 Service의 요청을 처리하기 위해 계속 실행되는 프로그램
 · Network Daemon

  ◦  Network Daemon의 인수로 start, stop, restart, reload, status가 있다.
 - NIC(Network Interface Card)
 · LAN Card를 말하며 Ethernet을 연결하는 Interface를 말한다.
 · Linux에서는 ifconfig 명령어를 NIC와 관련해 IP address, Netmask 등을 설정하거나 확인할 때 사용한다.

 

2. Xinetd Remote Service(Xinetd 원격 서비스):telnet
 - Linux에서는 원격으로 접속해 명령을 내릴 수 있는 프로그램이 있으며 가장 잘 알려진 telnet이 이에 해당한다.
 - telnet은 inet 또는 xinet Package가 설치되어 있어야 사용이 가능하다.
 - inet Service:xinet
  · inet Service Daemon
  ◦ Network Super Daemon으로 inet Server가 Network 과련 작업을 대리하도록 하며 Network 접속이 정상적으로 이루어진 뒤에 실제 Service를 하는 Program 에게 연결을 넘겨준다.
  · inet Service를 하는 Daemon에는 inetd와 xinetd라고 하는 두 가지의 Daemon이 존재하며 Redhat 7 이후부터 확장 Version인 Xinetd가 대신 사용되고 있다.
 - Xinetd 설정 File

  · Vi Editor를 이용해 편집해 설정할 수 있으며 xinetd의 접속에 관련된 설정을 할 수 있다.
  · 항목에 따른 설명

항목

설명

defaults

 기본 값으로 사용할 설정

instances

 허용할 접속 수

log_type

 Log Type

log_on_success

 접속 성공 시 Log에 기록할 정보

log_on_failure

 접속 실패 시 Log에 기록할 정보

no_access

 접근을 허용하지 않을 주소

only_from

 접근을 허용할 주소

cps

 접속 횟수의 속도 제한(50 10 → 1초에 50회 접속 시도 시 10초 동안 접속 거부)

includedir

 /etc/xinetd.d Directory에 있는 다른 File을 포함하도록 설정

 - krb5-telnet의 설정 File

  · telnet의 부가 설정 File로 krb5-workstation Package가 설치되어 있어야 하고 설치 후 Daemon을 재실행 해줘야한다.
  · 항목에 따른 설명

항목

설명

disable

 해당 Service의 사용여부를 결정한다.

flags

 Socket 작동 관련 flag

socket_type

 STREAM : Stream Socket 사용(TCP) / DGRAM : Datagram Socket 사용(UDP)

​wait

 no : 대기시간 필요 없음 / yes : 대기시간 필요

user

 해당 Daemon을 시작할 User

server

 해당 Service를 처리할 실제 Server Program의 위치

log_on_failure

 실패 시 접근했던 User 이름도 Log에 기록하도록 추가

 - Normal Telnet의 접속
  · Telnet 관련 Package 설치
  · /etc/xinetd.d/telnet 편집
  · disable = no로 변경
  · Daemon(/etc/rc.d/init.d/xinetd) 재시작(restart)
  · Windows에서 Telnet 접속

  ◦ telnet [IP Address]
    ※ 관리자로 접속하기 위해서는 일반 사용자로 접속 후 관리자 권한 획득 명령어(su -)로 접속해야한다.

 

3. Remote Service(원격 서비스):SSH(Secure Shell)
 - OpenSSH
  · telnet과 비슷한 원격 관리 Service 중 하나로 telnet과 달리 Data 전송 시 암호화하는 기능이 추가되어 있다.
  · rlogin, rsh, telnet과 같은 Remote Service는 Network를 통해 Packet을 전송할 때 평문으로 전송해 Sniffing과 같은 기술을 통해 Packet을 가로챌 수 있어 보안성이 낮다.
  · SSH(Secure Shell)은 Packet을 전송할 때 암호화를 시켜 전송하기 때문에 Packet을 가로채도 가로챈 사람이 암호화된 Packet을 해독하는 해독키가 없기 때문에 내용을 파악하기 어려워 보안성이 높다.
  · SSH를 이용하기 위해선 Server 역할을 하는 컴퓨터에 Openssh 관련 Package가 설치되어있어야 한다.
  · Windows용 SSH Clients Program
  ◦  PuTTY
  ◦  Linuxnew
  ◦  SSH
  ◦  SecureCRT
  ◦  Xshell
  · SSH Server 설정

  ◦ Line 13 : Port 설정
  ◦ Line 15 : SSH Service 시 이용할 Version 선택(보안상 Protocol 2를 이용)
  ◦ Line 17 : System에 여러 IP가 존재할 경우 Service할 특정 IP를 지정 가능
  ◦ Line 20 : Protocol Version 1 사용 시 사용할 hostfile 위치
  ◦ Line 22 : Protocol Version 2 사용 시 사용하는 암호 방식에 따른 hostfile 위치
  ◦ Line 27 : 자동으로 생성된 키의 유효 시간을 지정할 수 있다.
  ◦ Line 28 : 서버의 암호키 생성 시 이용하는 vit 수를 지정할 수 있다. 최소값 512
  ◦ Line 31 : obsoletes 단어가 의미하듯 현재는 사용하지 않는 Mode라는 것을 알려줌
  ◦ Line 32 : syslogd를 이용하여 로그를 기록할 방식 선택
   ▹ AUTH : 사용자 인증 관련 Message
   ▹ AUTHPRIV : 인증 절차에 관련한 Message
  ◦ Line 34 : Log 기록 수준을 의마하는 항목
   ▹ emerg : System이 다운되는 수준
   ▹ crit : Utility나 Subsystem을 종료해야 하는 수준
   ▹ warning : 단순 경고 Message 수준
   ▹ info : 정보를 보여줘야 하는 수준
  ◦ Line 36 : 인증 항목(ID 식별 인증 항목)
  ◦ Line 38 : 사용자가 Login 시의 시간을 지정하는 항목으로 지정시간 내에 접속하지 않으면 접속이 해제되며 기본 값은 2분
  ◦ Line 39 : 관리자로의 Login을 허용할 것인가에 대한 항목으로 기본 값으론 허용되어 있지만 허용하지 않는 것을 권장
  ◦ Line 40 : 사용자의 Home Directory인 /home/user의 권한 값 등을 확인하도록 설정되어 있는 지시자
  ◦ Line 41 : SSH Client Program을 이용해 Login을 시도할 경우 인증 실패의 최댓값을 설정하는 항목
  ◦ Line 43 : RSA 인증 Option(Protocol Version 1에만 적용되는 Option)
  ◦ Line 44 : 공개키 인증 허용 여부
  ◦ Line 45 : 공개키 인증 허용 시 공개키가 저장되어 있는 파일
  ◦ Line 50 : /etc/ssh/ssh_known_hosts File에 있는 Host에 대해 인증 허용
  ◦ Line 59 : Password 없이 접속 허용 여부
  ◦ Line 60 : 접속 시 Password 인증 설정
  ◦ Line 113 : 가상 root Directory 설정
  ◦ Line 116 : 지정한 File에 banner 문구를 입력하면 접속 시 화면에 출력(File : .message)
  ◦ Line 119 : SSHD Daemon을 통하여 다른 Program(sftp-server)을 실행할 수 있도록 설정하는 항목
 - OpenSSH Service 접속
  · ssh

  ◦ Client 쪽에서 지정한 게정명으로 접근 요청을 하게 된다.

  · scp

  ◦ SSH Service가 구성되어 있는 System을 대상으로 원격 복사할 수 있는 Program
  ◦ openssh-clients Package에 포함되어 있다.
  · sftp

  ◦ Secure FTP의 약자로 일반적인 FTP는 암호화되지 않아 보안성이 취약하므로 SSH를 이용해 FTP의 보안성을 높인 Program이다.
  ◦ sftp 명령어는 Windows의 명령프롬프트(cmd)의 ftp 명령어와 같다.

 

4. Remote Service(원격 서비스) : VNC
 - VNC
  · Virtual Network Computing의 약자로 Console에서가 아닌 Xwindow상에서 원격으로 접속해 관리하는 Program이다.
  · Windows의 Terminal Service, 원격 데스크탑과 유사하지만 Platform(OS)을 가리지 않는다는 장점이 있다.
  · 사용하기 위해서는 vnc 관련 Package를 설치해야 한다.
 - VNC Server 구동
  · VNC Daemon
  ◦ /etc/rc.d/init.d/vncserver restart
  ◦ VNC를 사용하기 위해서는 Daemon을 구동해야 한다.
  · vncserver
  ◦ Daemon 구동 후 vncserver 명령어를 이용해 Server를 구동 시킨다.
  ◦ 최초 실행 시 /root/.vnc Diretory의 다음 File들 생성
   ▹ hostname:1.log : Service 실행 시 발생하는 Log 기록
   ▹ hostname:1.pid : Service 실행 시 사용하는 Process ID
   ▹ passwd : vncserver 실행 시 지정한 암호 Data
   ▹ xstartup : VNC Server 설정 File
  · VNC Service 접속
  ◦ vncviewer [Hostname]:[Session Number]
  ◦ VNC Package가 설치된 OS에서 사용 가능하며 다른 원격 Program(ex : PuTTY)에서는 사용이 불가능하다.
  · VNC Service 중지
  ◦ 열려있는 Session 종료
   ▹ kill [Session's Process ID]
   ▹ vncserver -kill :1
  ◦ 현재 동작 중인 VNC Service 종료
   ▹ killall -9 Xvnc

 

 

 

'Linux > CentOS Linux 6.5' 카테고리의 다른 글

Chapter 11. NFS(Network File System)  (0) 2015.08.07
Chapter 10. FTP Service - Vsftpd  (0) 2015.08.07
Chapter 8. Mount  (0) 2015.08.07
Chapter 7. Partition  (0) 2015.08.07
Chapter 6. Package  (0) 2015.08.07