네트워크 기초 45

5-12 VPN 서버의 역할

인터넷을 이용해서 가상 전용선을 만들어 거점 LAN간 접속을 하거나, 모바일 유저의 접속을 가능하게 하는 기술을 VPN(Virtual Private Network)라고 한다. VPN에는 거점 LAN을 접속하는 거점간 VPN과 모바일 유저가 접속하는 리모트 액세스 VPN이 있다. 거점간 VPN은 복수의 거점 LAN을 접속하기 위해 사용하는 VPN이다. 물리적으로 떨어져 있는 장소에 거점을 가진 기업이나 조직에서 일반적으로 사용한다. 거점간 VPN에서 사용하는 프로토콜은 IPsec이다. IPsec은 거점간 인증을 통해서 통신을 암호화하여 인터넷 상에서의 보안을 강화한다. 거점간 VPN에 접속하는 경우는 라우터나 방화벽 등 네트워크 기기가 가지고 있는 VPN 기능을 VPN 서버로 사용한다. 또한 최근에는 많은..

5-11 데이터베이스 서버의 역할

웹 어플리케이션 서버로부터 리퀘스트를 받아 데이터를 검색하거나 갱신(등록, 수정, 삭제)하는 서버를 데이터베이스 서버라고 한다. 또한 데이터베이스의 기능을 제공하는 소프트웨어를 데이터베이스 매니지먼트 시스템(DBMS)라고 한다. # 현재 주류는 관계형 데이터베이스 관계형 데이터베이스는 열과 행으로 구성된 2차원 표로 데이터를 관리하는 타입의 데이터베이스이다. 2차원 표라고 하면 조금 어려운 느낌으로 들릴 수 있지만, 쉽게 말해서 Excel의 시트와 같은 느낌이다. 이 표에 데이터를 입력하며 정리, 관리한다. 이러한 관계형 데이터베이스의 기능을 제공하는 소프트웨어를 RDBMS라고 한다. 대표적인 RDBMS에는 오라클 사의 Oracle DB, 오픈소스 MySQL, 마이크로소프트사의 SQL Server가 있다..

5-10 웹 어플리케이션 서버의 역할

웹 시스템은 보통 웹 서버, 웹 어플리케이션 서버, 데이터베이스 서버의 3단 구조로 되어있다. 그 중 웹 브라우저로부터 리퀘스트를 처리하는 웹 서버와 데이터를 저장하는 데이터베이스 서버 사이에서 다리 역할을 하는 기능을 제공하는 서버가 바로 웹 어플리케이션 서버(이하 AP 서버)이다. AP 서버는 프로그램의 실행 환경을 제공하거나, DB 접속기능을 제공하는 등 웹 시스템에 중요한 역할을 담당한다. # 두 종류의 웹 어플리케이션 서버 웹 어플리케이션을 개발, 실행하는데 있어서 가장 많이 사용되는 프레임워크에는 Java EE와 .NET Framework가 있다. AP서버는 사용하는 프레임워크에 따라 Java 어플리케이션 서버와 .NET 어플리케이션 서버로 나뉜다. Java 어플리케이션 서비스를 제공하는 서버..

5-09 FTP 서버의 역할

FTP서버는 FTP(File Transfer Protocol)를 이용하여 파일을 효율성 있게 전송하기 위한 서버이다. FTP는 인터넷 초창기부터 오랜기간 동안 사용되어 오고 있는 프로토콜 중에 하나이다. FTP서비스를 제공하는 서버 소프트웨어에는 Linux 플랫폼에서 동작하는 vsftpd, ProFTPD가 있으며, Windows 플랫폼에서 동작하는 IIS FTP 서버가 있다. 또한 대표적인 FTP 클라이언트 소프트웨어는 웹 브라우저이다. 웹 브라우저는 HTTP/HTTPS 클라이언트이면서 동시에 FTP 클라이언트이기도 하다. 주소창에 "ftp://"로 시작하는 주소를 입력하면 FTP 서버와 통신이 가능하다. 이외에도 FFFTP, NextFTP 등 FTP에 더 특화된 전용 소프트웨어도 있다. # FTP는 암..

5-08 SSL 서버 기술

# SSL 서버에는 증명서가 필요 SSL은 디지털 증명서로 통신상대를 신뢰해도 되는지 판단한다. 따라서 SSL서버에는 반드시 디지털 증명서를 설치해야 한다. 증명서 설치 순서는 아래와 같다. 1. 관리자는 서버 소프트웨어로 비밀키와 공개키를 작성하여, 공개키를 CSR(Certificate Signing Request, 증명서서명요구)로 인증국(CA국)이라고 불리우는 제삼자기관에 제출한다. 비밀키는 관리자가 보관한다. 2. 인증국은 CSR에 디지털 서명, 즉 증명서로 써도 된다는 인증을 받아 디지털 증명서를 발행하여 관리자에게 반환한다. 3. 관리자는 인증국으로부터 받은 디지털 증명서를 서버에 설치한다. # SSL에서의 암호화 순서 디지털 인증서를 설치하면 SSL 서버로서 동작이 가능하게 되며, 클라이언트..

5-07 두가지 암호화 기술

이전 절에서 소개한 SSL에는 암호화를 위한 암호화키와 암호를 풀기 위한 복호키가 필요하다. 네트워크 상에서 암호화방식은 클라이언트와 서버의 암호화키, 복호키를 갖는 방식에 따라서, "공통키 암호화 방식"과 "공개키 암호화 방식"으로 나누어진다. 공통키 암호화 방식은 암호화키와 복호키가 같은 키를 사용하는 암호화 방식이다. 다시 말해서 클라이언트와 서버가 같은 키를 공유해서 클라이언트가 암호화키로 암호화를 하고, 서버가 암호화키와 같은 복호키로 복호화 한다. 공통키 암호화 방식은 구조가 상대적으로 단순하기 때문에 처리 부담이 크지 않지만, 클라이언트와 서버가 키를 공유해야 하기 때문에 키 배송방법에 있어서 고려해야 한다. 공개키 암호화 방식은 암호화키와 복호키를 다른 키로 사용하는 암호화 방식이다. 서버..

5-05 웹 서버에서 일어나는 처리

웹 서버는 웹 브라우저로부터 요청받은 것에 대한 처리를 실행한다. 이러한 처리는 요청의 URL에 따라 지정된 파일이 정적인 웹 컨텐츠를 작성하거나, 동적인 웹 컨텐츠를 작성하는 방식으로 나누어진다. # 정적인 웹 컨텐츠 처리 이는 누군가가 갱신하지 않는 한 같은 표시내용을 반환하는 웹 컨텐츠를 말한다. 웹 서버는 정적인 웹 컨텐츠에 대해 요청을 받으면 보존되어 있는 파일을 꺼내어 클라이언트에게 반환한다. 이는 서버가 가지고 있는 파일을 반환하는 일만 하기 때문에 고속으로 처리된다. 하지만 웹 컨텐츠에 있는 정보가 바뀔 때마다 대상 파일을 갱신해야 하기 때문에 그만큼 관리 비용이 발생한다. # 동적인 웹 컨텐츠 처리 이는 클라이언트로부터 받은 정보에 따라 표시내용이 달라지는 웹 컨텐츠를 말한다. 웹 서버는..

5-04 웹서버의 역할

인터넷의 여러 웹서비스를 제공할 때 사용하는 대표적인 프로토콜로 HTTP(HyperText Transfer Protocol)이 있다. HTTP는 구성이 단순함에 비해 다양한 분야에서 사용하기 쉽기 때문에 인터넷에서 없어서는 안될 필수적인 존재가 되었다. 웹서비스를 제공하는 서버 소프트웨어라면, 대표적으로 오픈소스인 Apache와 Windows Server의 표준인 IIS(Internet Information Services) 2가지를 꼽을 수 있다. 이 2가지는 웹 서비스를 제공한다는 공통점을 가지고 있지만, 서포트하고 있는 플랫폼이나 어플리케이션이 다르다. Apache의 경우 모든 플랫폼을 서포트하는 반면, IIS는 Windows Server만 서포트한다. Web 클라이언트가 되는 소프트웨어에는 Web..

5-03 클라우드 환경(AWS)의 서버 공개

1. 도메인명 신청 도메인 취득업자를 통해 도메인명을 신청한다. 2. 공개 서버 준비 Amazon EC2 상에 공개하는 인스턴스(서버)를 작성한다. 머신 이미지나 배당될 리소스(CPU, 메모리, 스토리지, 네트워크 용량 등)를 지정하고, 임의의 서버 스프트웨어를 설치한다. 3. 글로벌 IP 주소 부여 Elastic IP Address는 고정 IP 주소에 해당하는 서비스이다. 인스턴스에는 기본적으로 동적 IP 주소가 배당된다. 이 때 Elastic IP 주소를 이용하여 고정의 글로벌 IP 주소를 배당한다. 4. Route 53으로 관리하는 이미지를 등록 Route 53은 AWS가 제공하는 DNS 서비스이다. 1에서 신청한 도메인명을 등록하면 그 도메인명을 관리하는 DNS 서버가 표시된다. 5. Regist..

5-02 on-premises 환경의 서버 공개

1. 인터넷 회선 설치 인터넷에 서버를 공개하기 위해서는 당연히 인터넷 회선이 설치되어 있어야 한다. 여러 회사의 요금, 속도, 서포트 등을 비교하여 어떤 회사의 회선으로 설치를 진행할지 결정한다. 2. 글로벌 IP 주소 확보 1에서 선택한 회선의 ISP(Internet Service Provider)를 선택하여, 고정 글로벌 IP 주소를 확보한다. 동적 IP 주소로도 서버 공개가 가능하지만, 보통 고정 IP 주소를 통해 공개하는 경우가 많다. 3. 도메인명 신청 도메인 업자에게 도메인명을 신청하여 글로벌 IP 주소에 연결한다. 4. 공개 서버 준비 인터넷에 공개할 서버를 준비하여, DMZ라고 불리는 공개 서버 전용의 네트워크를 배치한다. 공개 서버에는 Private IP 주소를 설정한다. 5. Fire..