홍순성님이 쓰신 글과 같이 점차 MSCS에 대한 관심과 구축이 늘어가고 있다.
윈도우 2003서버부터 안정화(?) 되어가는 지금 HA구성을 위한 방안으로 L4, 베리타스, 레가토 같은 서비스외에 윈도우 내장 기술의 사용이 늘어가는 것이다.

* Windows 2003 Enterprise Edition 과 SAN 디스크가 필요하다는 점이 단점이랄까?!?
* 홍순성님의 글 가운데 라이센스를 언급한 부분이 있었는데... SQL로 구성할 경우 다음과 같다.
   Active - Passive : [License]Server 2EA / SQL 1EA (하나의 인스턴스를 사용)
   Active - Active    : [License]Server 2EA / SQL 2EA (두개의 인스턴스를 사용)
   여기서 오해를 불러일으킬 소지가 있는데요.
   Active - Active라고 해서 같은 서비스를 두머신에서 하는 것이 아니라는거...
   Active - Passive와 Passive - Active를 합쳐 놓은 것이라고 생각하셔야 합니다.
   장애 시 Take-Over 했을 경우 하나의 머신에서 두개의 서비스를 운영할 수 있을 만큼의 성능이 되어야 합니다.



NLB 및 MSCS, CLB 기술자료를 정리

[NTFAQ]기술 강좌/Windows Server 2003 | 2007/05/24 22:17
필자는 MS 제품군에 속하는 NLB 및 MSCS 부분에 잘 알지를 못한다. 이유인즉슨 지금까지 이런 서비스는 하드웨어 장비인 L4 와 베리타스와 같은 별도의 소프트웨어인 클러스터링 제품군으로 서비스를 해왔기 때문이라 별도로 이런 서비스를 제공하지 않았던 것으로 기억 합니다.

그러나 점차 윈도우 2000 =>윈도우 2003 => 윈도우 2008 서버로 이어지면서 점점 더 안정적인 제품으로 거듭 나고 있는 것으로 생각 되며 필요 시 응용하고 싶은 생각에 하나씩 자료 준비를 제공해 보겠습니다.

NLB (네트워크 로드 균형 조정 클러스터)
: 여러 대의 서버로 운영중에 한 대의 오류가 발생해서 정지할 경우, 정지한 서버가 처리하고 있던 사용자 요구 사항은 수렴과정을 통해서 네트워크 로드 균형 조정 클러스터를 구성하는 다른 서버를 통해 처리 한다.
  • 첫번째, 분산 처리
  • 두번째, 장애 조치 능력

MSCS (서버 클러스터 서비스)
: 서버 클러스터는 오류 발생시에 장애 조치 과정을 통해 고가용성을 제공하는 서비스이다. 서버 클러스터를 구성하고 있는 특정 노드에서 동작하고 있던 응용 프로그램이 오류에 의해 현재 노드에서 더 이상 동작이 불가능 할 때 다른 노드에서 다시 재 시작 하는 것을 장애조치라 한다.
  • 첫번째, 노드 오류
  • 두번째, 리소스 오류
 
CLB (객체 로드 균형 조정 클러스터)
ASP를 많이 사용하게 되면 사용자의 요구가 있을 때마다 ASP 안에 있는 스크립트를 컴파일하고 실행하기 때문에 IIS에 많은 부하가 발생한다. 특히 복잡한 연산을 해야 하는 경우에는 더욱 IIS 성능을 저하 시킨다. 따라서 이런 스크립트를 따로 COM+ 객체로 만들어 N-티어의 비즈니스 계층에서 운영하면 IIS의 부하를 줄일 수 있다.
이런 COM+ 객체를 MS 어프리케이션 센터 2000을 이용하여 객체로드균형 조정 클러스터를 구축하면 로드분산과 가용성을 높일 수 있다.
결국 일반적으로 세션을 분산 하는 것이 아니라 로드를 분산 한다고 보면 됩니다.

추가로 구성 요소 로드 균형 조정 클러스터는 Microsoft Application Center 2000의 기능이며 Windows Server 2003, Standard Edition, Windows Server 2003, Enterprise Edition 또는 Windows Server 2003, Datacenter Edition의 기능이 아닙니다.


참고로  MSCS 작업 시 라이센스 부분에 대해서 언급된 것을 몇 개 보았습니다.
2개의 인스턴스르 올리고 Active - Active 방식으로 사용은 현재 MS 에서는 안되는 것으로 알고 있고요. 다른 하나는 Active - Passive 방식으로 사용할 때는 라이센스 비용은 하나만 제공 하시면 됩니다.
일반적으로 MS의 모든 제품은 하나의 디스크에 두개의 인스턴스가 접근할 수 가 없습니다.

제품군별

NLB(네트워크 로드 균형 조정 클러스터)

MSCS(서버 클러스터 서비스)

주요 서비스

웹서비스

터미널 서비스

윈도 미디어 서비스

VPN 서비스

Microsoft ISA(Internet Security and Acceleration) Server

IAG 2007

SQL 서버

익스체인지 서버

파일 프린터 서버

Message Queuing

제품군

윈도우 2003 웹 에디션

윈도우 2003 스탠다드 에디션

윈도우 2000 어드밴스 서버

윈도우 2000 데이터센터 서버

윈도우 2003 엔터프라이즈 에디션

윈도우 2003 데이터센터 에디션

최대 로드

최대 32대

최대 8노드

기타

L4 방식,라운드 로빈 DNS(RRDNS)

확장성

장애조치

클러스터링 서비스

고가용성

장애조치


SQL 클러스터링 서비스 구성도. 그림 참조 '고가용성 오해들'

MS 기술자료로 제공된 NLB 서비스 구성도
MS 기술자료로 제공된 NLB 서비스 구성도


참고 자료  

MS 기술자료 참조 : 'Windows 클러스터링'

클러스터링 기술

NLB(네트워크 로드 균형 조정) 클러스터

CLB(구성 요소 로드 균형 조정 클러스터)

서버 클러스터

사용할 수 있는 곳

Microsoft® Windows Server2003, Web Edition, Microsoft® Windows Server2003, Standard Edition, Microsoft® Windows Server™ 2003, Enterprise Edition 및 Microsoft® Windows Server2003, Datacenter Edition

Microsoft Application Center 2000

Windows Server 2003, Enterprise Edition 및 Windows Server 2003, Datacenter Edition

최대 노드 수

32

12

8

응용 프로그램

로드 균형 조정 TCP(전송 제어 프로토콜) 및 UDP(사용자 데이터그램 프로토콜) 트래픽

웹 팜에 대한 단일 지점의 관리 및 구성

응용 프로그램의 장애 조치 및 장애 복구

전문화된 하드웨어가 필요합니까?

아니오

참고


아니오

Windows Server 2003, Enterprise Edition 또는 Windows Server 2003, Datacenter Edition용으로 설계된 서버 클러스터 하드웨어인지 확인하려면 지원 리소스(새 창으로 열기)의 호환성 정보를 참조하십시오.

전형적 배포

웹 서버, Microsoft ISA(Internet Security and Acceleration) Server, 가상 사설망, Windows Media™ Server, Mobile Information Server, 터미널 서비스

웹 팜

MS SQL Server, MS Exchange Server, 파일 및 인쇄 서버, Message Queuing

상태 저장 또는 상태 비저장

상태 비저장

상태 비저장

상태 저장


자료: NTFAQ (홍순성님)

While the adoption of web applications for conducting online business has enabled companies to connect seamlessly with their customers, it has also exposed a number of security concerns stemming from improper coding. Vulnerabilities in web applications allow hackers to gain direct and public access to sensitive information (e.g. personal data, login credentials).

Web applications allow visitors to submit and retrieve data to/from a database over the Internet. Databases are the heart of most web applications. They hold data needed for web applications to deliver specific content to visitors and provide information to customers, suppliers etc.

SQL Injection is perhaps the most common web-application hacking technique which attempts to pass SQL commands through a web application for execution by the back-end database. The vulnerability is presented when user input is incorrectly sanitized and thereby executed.

Checking for SQL Injection vulnerabilities involves auditing your web applications and the best way to do it is by using automated SQL Injection Scanners. We’ve compiled a list of free SQL Injection Scanners we believe will be of a value to both web application developers and professional security auditors.

SQLIer - SQLIer takes a vulnerable URL and attempts to determine all the necessary information to exploit the SQL Injection vulnerability by itself, requiring no user interaction at all. Get SQLIer.

1. SQLIer - 취약점이 있는 URL을 검사하고 사용자의 개입없이 SQL Injection 취약점을 익스플로잇하기 위해 필요한 정보를 점검합니다. 다운로드

SQLbftools - SQLbftools is a collection of tools to retrieve MySQL information available using a blind SQL Injection attack. Get SQLbftools.

2. SQLbftools - 블라인드 SQL Injection 공격을 사용하여 MySQL의 정보를 가져오는 시도를 하는 도구의 모음입니다. 다운로드

SQL Injection Brute-forcer - SQLibf is a tool for automatizing the work of detecting and exploiting SQL Injection vulnerabilities. SQLibf can work in Visible and Blind SQL Injection. It works by doing simple logic SQL operations to determine the exposure level of the vulnerable application. Get SQLLibf.

3. SQL Injection Brute-forcer - SQL Injection 공격 취약점을 찾고 이를 이용하여 공격하는 자동화 도구입니다. 사용자가 작업하는 내용을 볼 수 있으며, 블라인드 SQL 인젝션을 이용합니다. 다운로드

SQLBrute - SQLBrute is a tool for brute forcing data out of databases using blind SQL injection vulnerabilities. It supports time based and error based exploit types on Microsoft SQL Server, and error based exploit on Oracle. It is written in Python, uses multi-threading, and doesn’t require non-standard libraries. Get SQLBrute.

5. SQL Brute - 블라인드 SQL 인젝션 취약점을 사용하여 데이터베이스에서 데이터를 추출해내는 무작위 도구입니다. MS SQL 서버의 시간, 오류 기반으로 익스플로잇을 수행합니다. 오라클의 경우 오류를 기반으로 합니다. 이 프로그램은 Python으로 작성되었으며 멀티 스레드로 동작하며 표준 라이브러리를 사용합니다. 다운로드

BobCat - BobCat is a tool to aid an auditor in taking full advantage of SQL injection vulnerabilities. It is based on AppSecInc research. It can list the linked severs, database schema, and allow the retrieval of data from any table that the current application user has access to. Get BobCat.

5. BobCat - SQL Injection 취약점의 잇점을 이용하는 감사 도구입니다. 사용자가 사용하는 애플리케이션이 액세스하는 테이블에서 데이터를 가져올 수 있습니다. 다운로드

SQLMap - SQLMap is an automatic blind SQL injection tool, developed in python, capable to perform an active database management system fingerprint, enumerate entire remote databases and much more. The aim of SQLMap is to implement a fully functional database management system tool which takes advantages of web application programming security flaws which lead to SQL injection vulnerabilities. Get SQLMap.

6. SQLMap - 블라인드 SQL Injection을 자동으로 수행하는 도구로 phthon으로 개발되었다. 다운로드

Absinthe -
Absinthe is a GUI-based tool that automates the process of downloading the schema and contents of a database that is vulnerable to Blind SQL Injection. Get Absinthe.

7. Absinthe - GUI 기반의 도구로 블라인드 SQL Injection 취약점에 이용하여 데이터베이스의 스키마와 목록을 자동화 과정으로 다운로드합니다. 다운로드

SQL Injection Pen-testing Tool - The SQL Injection Tool is a GUI-based utility designed to examine database through vulnerabilities in web-applications. Get SQL Injection Pen-testing tool.

8. SQL Injection Pen-testing Tool - 웹 애플리케이션에서의 취약점을 찾아 데이터베이스를 점검하도록 설계된 GUI 기반의 도구. 다운로드

SQID -
SQL Injection digger (SQLID) is a command line program that looks for SQL injections and common errors in websites. It can perform the follwing operations: look for SQL injection in a web pages and test submit forms for possible SQL injection vulnerabilities. Get SQID.

9. SQID - SQL Injection Digger. 웹 사이트의 통상적인 오류와 SQL Injection을 찾는 명령행 기반의 도구. 웹 페이지에서 SQL Injection 이 가능한 부분을 찾아내어 취약점을 입력하는 폼을 테스트한다. 다운로드

Blind SQL Injection Perl Tool - bsqlbf is a Perl script that lets auditors retrieve information from web sites that are vulnerable to SQL Injection. Get Blind SQL Injection Perl Tool.

10. Blind SQL Injection Perl Tool - bsqlbf는 SQL Injection에 취햑한 웹 사이트에서 정보를 가져오도록 작성된 펄 스크립트. 다운로드

SQL Power Injection Injector - SQL Power Injection helps the penetration tester to inject SQL commands on a web page. It’s main strength is its capacity to automate tedious blind SQL injection with several threads. Get SQL Power Injection.

11. SQL Power Injection Injector - 이 프로그램은 웹페이지에서 SQL 명령어를 삽입하는 테스트를 수행합니다. 멀티 스레드 방식으로 블라인드 SQL Injection 공격을 자동화하여 실행합니다. 다운로드 

FJ-Injector Framwork - FG-Injector is a free open source framework designed to help find SQL injection vulnerabilities in web applications. It includes a proxy feature for intercepting and modifying HTTP requests, and an interface for automating SQL injection exploitation. Get FJ-Injector Framework.

12. FJ-Injector Framework - 웹 애플리케이션에 SQL Injection 취약점이 있는지 검사하기 위해 디자인된 오픈 소스 무료 프로그램입니다. HTTP 요청을 가로쳐서 변경하기 위한 프록시 기능도 제공합니다. SQL Injection 익스플로잇을 자동화하여 수행합니다. 다운로드

SQLNinja - SQLNinja is a tool to exploit SQL Injection vulnerabilities on a web application that uses Microsoft SQL Server as its back-end database. Get SQLNinja.

13. SQLNinja - MS SQL 서버를 백 엔드 데이터베이스로 사용하는 웹 애플리케이션의 SQL Injection 취약점을 익스플로잇하는 도구입니다. 다운로드

Automagic SQL Injector
- The Automagic SQL Injector is an automated SQL injection tool designed to help save time on penetration testing. It is only designed to work with vanilla Microsoft SQL injection holes where errors are returned. Get Automagic SQL Injector.

14. Automatic SQL Injector -  SQLNinja와 유사한 도구로, 오류 코드가 반환되는 SQL Injection 취약점을 자동으로 찾아 줍니다. 다운로드

NGSS SQL Injector - NGSS SQL Injector exploit vulnerabilities in SQL injection on disparate database servers to gain access to stored data. It currently supports the following databases: Access, DB2, Informix, MSSQL, MySQL, Oracle, Sysbase. Get NGSS SQL Injector.

15. NGSS SQL Injector - 데이터베이스에 저장된 데이터를 액세스하기 위한 SQL Injection취약점을 이용하여 익스플로잇합니다. Access, DB2, Informix, MSSQL, MySQL, Oracle, Sysbase 등 다양한 데이터베이스를 지원합니다. 다운로드

출처: Security Hacks
번역: NTFaq : "주원아빠" 님

+ Recent posts