소개
이 문서에서는 Cisco ESA(Email Security Appliance)에서 클러스터를 설정하는 방법에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- 어플라이언스를 클러스터에 가입시키는 방법(중앙 집중식 관리).
- 모든 ESA의 AsyncOS 버전은 동일해야 합니다(개정판까지).
참고: 버전 8.5 이상에서는 중앙 집중식 관리 키가 더 이상 필요하지 않으며 AsyncOS에 통합된 기능이므로 추가할 때 더 이상 표시되지 않습니다.
- 포트 22(구성이 더 쉬움)를 사용하도록 클러스터를 만드는 경우 포트 22 트래픽의 어플라이언스 간에 방화벽 또는 라우팅 문제가 없는지 확인합니다.
- 포트 2222(클러스터 통신 서비스)를 사용하도록 클러스터를 만드는 경우 검사 또는 중단 없이 이 포트의 트래픽을 사용할 수 있도록 방화벽 규칙을 만들어야 합니다.
- 클러스터 컨피그레이션 옵션은 ESA에서 CLI를 통해 수행해야 하며 GUI에서 생성하거나 조인할 수 없습니다.
- 통신에 호스트 이름을 사용하도록 선택하는 경우 어플라이언스에 설정된 DNS 서버가 네트워크의 다른 모든 어플라이언스를 확인할 수 있는지, 그리고 호스트 이름을 확인하는 IP 주소가 선택된 통신 포트에서 수신하도록 구성된 인터페이스에 할당되었는지 확인합니다.
- 어플라이언스 인터페이스에서 필수 포트 및 서비스가 활성화되어 있는지 확인합니다(SSH 또는 CCS).
사용되는 구성 요소
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
문제
문제는 대규모 ESA 그룹 간의 컨피그레이션을 중앙 집중화하고 동기화된 상태로 유지해야 할 때마다 각 어플라이언스를 지속적으로 수정해야 하는 상황을 피하는 것입니다.
ESA의 클러스터
ESA 중앙 집중식 관리 기능을 사용하면 여러 어플라이언스를 동시에 관리 및 구성하여 네트워크 내에서 신뢰성, 유연성 및 확장성을 향상시킬 수 있습니다. 이렇게 하면 로컬 정책을 준수하면서 동시에 전역적으로 관리할 수 있습니다.
클러스터는 공통 컨피그레이션 정보가 있는 시스템 집합으로 구성됩니다. 각 클러스터 내에서 어플라이언스를 머신 그룹으로 더 세분화할 수 있으며, 여기서 단일 머신은 한 번에 하나의 그룹에만 속할 수 있습니다.
클러스터는 기본/보조 관계가 없는 피어 투 피어 아키텍처로 구현됩니다. 모든 시스템에 로그인하여 전체 클러스터 또는 그룹을 제어하고 관리할 수 있습니다. 이를 통해 관리자는 자체 논리 그룹에 기반을 둔 클러스터 전체, 그룹 전체 또는 시스템별로 시스템의 여러 요소를 구성할 수 있습니다
클러스터 생성
모든 요구 사항이 충족되면 클러스터를 생성하려면 첫 번째 어플라이언스의 CLI(Command Line)에서 시작해야 합니다.
팁: 클러스터를 구성하기 전에 어플라이언스의 현재 컨피그레이션을 백업합니다. GUI에서 System Administration(시스템 관리) > Configuration File(컨피그레이션 파일). 마스킹된 비밀번호 상자의 선택을 취소하고 컨피그레이션을 PC에 로컬로 저장합니다.
SSH를 통한 클러스터 생성
C370.lab> clusterconfig
Do you want to join or create a cluster?
1. No, configure as standalone.
2. Create a new cluster.
3. Join an existing cluster over SSH.
4. Join an existing cluster over CCS.
[1]> 2
Enter the name of the new cluster.
[]> NameOfCluster
Should all machines in the cluster communicate with each other by hostname or
by IP address?
1. Communicate by IP address.
2. Communicate by hostname.
[2]> 1
What IP address should other machines use to communicate with Machine C370.lab?
1. 10.1.1.11 port 22 (SSH on interface Management)
2. Enter an IP address manually
[]> 1
Other machines will communicate with Machine C370.lab using IP address
10.1.1.11 port 22. You can change this by using the COMMUNICATION subcommand
of the clusterconfig command.
New cluster committed: DATE
Creating a cluster takes effect immediately, there is no need to commit.
Cluster NameOfCluster
Choose the operation you want to perform:
- ADDGROUP - Add a cluster group.
- SETGROUP - Set the group that machines are a member of.
- RENAMEGROUP - Rename a cluster group.
- DELETEGROUP - Remove a cluster group.
- REMOVEMACHINE - Remove a machine from the cluster.
- SETNAME - Set the cluster name.
- LIST - List the machines in the cluster.
- CONNSTATUS - Show the status of connections between machines in the cluster.
- COMMUNICATION - Configure how machines communicate within the cluster.
- DISCONNECT - Temporarily detach machines from the cluster.
- RECONNECT - Restore connections with machines that were previously detached.
- PREPJOIN - Prepare the addition of a new machine over CCS.
CCS를 통한 클러스터 생성
C370.lab> clusterconfig
Do you want to join or create a cluster?
1. No, configure as standalone.
2. Create a new cluster.
3. Join an existing cluster over SSH.
4. Join an existing cluster over CCS.
[1]> 2
Enter the name of the new cluster.
[]> Test
Should all machines in the cluster communicate with each other by hostname or by IP address?
1. Communicate by IP address.
2. Communicate by hostname.
[2]> 1
What IP address should other machines use to communicate with Machine C370.lab?
1. 10.1.1.1 port 22 (SSH on interface Management)
2. Enter an IP address manually
[]> 2
Enter the IP address for Machine C370.lab.
[]> 10.1.1.1
Enter the port (on 10.66.71.120) for Machine C370.lab.
[22]> 2222
이 단계가 완료되면 클러스터가 있고 모든 컨피그레이션이 시스템에서 클러스터 레벨로 이동합니다. 이 컨피그레이션은 가입 시 다른 모든 시스템이 상속받는 컨피그레이션입니다.
SSH 또는 CCS를 통해 현재 클러스터에 가입
이 섹션에서는 이전에 또는 방금 생성한 현재 클러스터에 새 어플라이언스를 추가하는 방법에 대해 설명합니다. 두 방법 중 하나로 현재 클러스터를 조인하는 방법은 비슷합니다. 유일한 차이점은 CCS에서 이를 마무리하여 클러스터가 최신 어플라이언스를 수락하도록 허용하는 추가 단계를 필요로 한다는 것입니다.
SSH를 통해 가입
참고: 다음 단계에서 굵게 표시된 섹션은 SSH를 사용하여 정확히 수행해야 하며 CCS가 활성화된 경우 예라고 말하면 안 됩니다.
C370.lab> clusterconfig
Do you want to join or create a cluster?
1. No, configure as standalone.
2. Create a new cluster.
3. Join an existing cluster over SSH.
4. Join an existing cluster over CCS.
[1]> 3
While joining a cluster, you will need to validate the SSH host key of the remote machine to which you are joining.
To get the public host key fingerprint of the remote host, connect to the cluster and run: logconfig -> hostkeyconfig
-> fingerprint.
WARNING: All non-network settings will be lost. System will inherit the values set at the group or cluster mode for
the non-network settings. Ensure that the cluster settings are compatible with your network settings (e.g. dnsconfig
settings)
Exception: Centralized Policy, Virus, and Outbreak Quarantine settings are not inherited from the cluster.
These settings on this machine will remain intact.
Do you want to enable the Cluster Communication Service on C370.lab? [N]>
Enter the IP address of a machine in the cluster.
[]> 10.66.71.120
Enter the remote port to connect to. This must be the normal admin ssh port, not the CCS port.
[22]>
Enter the name of an administrator present on the remote machine
[admin]>
Enter password:
Please verify the SSH host key for 10.66.71.120:
Public host key fingerprint: d2:6e:36:9b:1d:87:c6:1f:46:ea:59:40:61:cc:3e:ef
Is this a valid key for this host? [Y]>
확인 후 어플라이언스는 클러스터에 성공적으로 조인합니다.
CCS를 통해 가입
이 방법은 비슷하지만 유일한 차이점은 새 어플라이언스를 현재 클러스터에 허용하기 전에 클러스터에서 활성 상태인 어플라이언스에 로그인해야 한다는 점입니다.
클러스터의 활성 어플라이언스에서:
(Cluster test)> clusterconfig
Cluster test
Choose the operation you want to perform:
- ADDGROUP - Add a cluster group.
- SETGROUP - Set the group that machines are a member of.
- RENAMEGROUP - Rename a cluster group.
- DELETEGROUP - Remove a cluster group.
- REMOVEMACHINE - Remove a machine from the cluster.
- SETNAME - Set the cluster name.
- LIST - List the machines in the cluster.
- CONNSTATUS - Show the status of connections between machines in the cluster.
- COMMUNICATION - Configure how machines communicate within the cluster.
- DISCONNECT - Temporarily detach machines from the cluster.
- RECONNECT - Restore connections with machines that were previously detached.
- PREPJOIN - Prepare the addition of a new machine over CCS.
[]> prepjoin
Prepare Cluster Join Over CCS
No host entries waiting to be added to the cluster.
Choose the operation you want to perform:
- NEW - Add a new host that will join the cluster.
[]> new
Enter the hostname of the system you want to add.
[]> ESA.lab
Enter the serial number of the host ESA.lab.
[]> XXXXXXXXXXXXXX-XXXXXA
Enter the user key of the host ESA2.lab. This can be obtained by typing
"clusterconfig prepjoin print" in the CLI on ESA.lab.
Press enter on a blank line to finish.
이전 코드 예에서 SSH 핑거프린트(클러스터에 가입하려고 시도하는 어플라이언스에 로그인할 때 명령clusterconfig prepjoin print을 사용하여 얻은 핑거프린트)를 입력하고 빈 줄을 입력하면 준비 가입이 완료됩니다.
참고: 옵션을 PREPJOIN 실행할 경우, 보조 ESA에서 실행하기 전에 기본 ESA clusterconfig 에 변경 사항을 커밋하고 해당 어플라이언스를 새로 구성된 클러스터에 가입시켜야 합니다. clusterconfig > prepjoin > new 이는 작업 전반에 걸친 출력에서 알 수 있습니다. 사전 공유 키를 사용하여 이 어플라이언스를 클러스터에 가입시키려면 클러스터 시스템에 로그인하고 명령을 실행하고 다음 세부 정보를 입력한 다음 변경 사항 commit 을 입력합니다.
그런 다음 참가를 시도하는 어플라이언스에서 이전 단계와 일치하도록 ESA2.lab을 호출할 수 있습니다.
참고: SSH-DSS 키는 다음 예에 나와 있습니다.
ESA2.lab> clusterconfig Do you want to join or create a cluster? 1. No, configure as standalone. 2. Create a new cluster. 3. Join an existing cluster over SSH. 4. Join an existing cluster over CCS. [1]> 4 While joining a cluster, you will need to validate the SSH host key of the remote machine to which you are joining.
To get the public host key fingerprint of the remote host, connect to the cluster and run: logconfig -> hostkeyconfig -> fingerprint. WARNING: All non-network settings will be lost. System will inherit the values set at the group or cluster mode for
the non-network settings. Ensure that the cluster settings are compatible with your network settings (e.g. dnsconfig settings) Exception: Centralized Policy, Virus, and Outbreak Quarantine settings are not inherited from the cluster.
These settings on this machine will remain intact. In order to join a cluster over CCS, you must first log in to the cluster and tell it that this system is being added.
On a machine in the cluster, run "clusterconfig -> prepjoin -> new" with the following information and commit. Host: ESA2.lab Serial Number: XXXXXXXXXXXX-XXXXXA User Key: ssh-dss AAAAB3NzaC1kc3.......BrccM= Choose the interface on which to enable the Cluster Communication Service: 1. ClusterInterface (10.1.1.2/24: ESA2.lab) [1]> 1 Enter the port on which to enable the Cluster Communication Service: [2222] Enter the IP address of a machine in the cluster. []> 10.1.1.1 Enter the remote port to connect to. This must be the CCS port on the machine "10.1.1.1",
not the normal admin ssh port. [2222]>
이를 확인하면 SSH-DSS 키가 표시됩니다. 일치하는 경우 조건에 동의하면 클러스터가 성공적으로 조인됩니다.
클러스터 컨피그레이션에서 마이그레이션되는 항목
클러스터 컨피그레이션 마이그레이션:
- 구성된 정책 설정
- 콘텐츠 필터
- 텍스트 리소스
- 콘텐츠 사전
- LDAP 설정
- 안티스팸 및 안티바이러스
- 전역 설정
- 리스너 설정
- SMTP 경로 설정
- DNS 설정
클러스터 컨피그레이션에서 마이그레이션되지 않는 것
클러스터 컨피그레이션이 마이그레이션되지 않음:
- 어플라이언스 로컬 호스트 이름
- 구성된 IP 인터페이스.
- 구성된 라우팅 테이블
- 로컬 스팸 격리 컨피그레이션입니다.
- 로컬 정책, 바이러스 및 Outbreak 격리 컨피그레이션
- 명령줄의
websecurityadvancedconfig 명령 아래에 있는 설정(버전 8.5 이상)
참고: 존재하지 않는 격리를 참조하는 콘텐츠 필터가 있는 경우, 참조된 정책 격리가 시스템에 구성될 때까지 해당 필터가 무효화됩니다.
ESA 클러스터에서 그룹 구성 방법
특정 시나리오에서는 클러스터의 일부 ESA가 나머지보다 특정 방식으로 작동해야 할 수 있습니다. 이를 위해 새 클러스터를 생성할 필요가 없으며 그룹 생성을 계속할 수 있습니다.
참고: 그룹 레벨에서 이루어지는 컨피그레이션은 클러스터 레벨 컨피그레이션보다 우선합니다.
그룹을 생성하려면 ESA CLI에서 생성합니다. 컨피그레이션을 시작하려면 clusterconfig --> ADDGROUP 다음 명령을 사용합니다.
(시스템 esalab.cisco.com)> clusterconfig
이 명령은 "cluster" 모드로 제한됩니다. "클러스터" 모드로 전환하시겠습니까? [Y]>
클러스터 Cisco
수행할 작업을 선택합니다.
- ADDGROUP - 클러스터 그룹을 추가합니다.
- SETGROUP - 시스템이 구성원인 그룹을 설정합니다.
- RENAMEGROUP - 클러스터 그룹의 이름을 바꿉니다.
- DELETEGROUP - 클러스터 그룹 제거
- REMOVEMACHINE - 클러스터에서 시스템을 제거합니다.
- SETNAME - 클러스터 이름을 설정합니다.
- LIST - 클러스터의 시스템을 나열합니다.
- CONNSTATUS - 클러스터에 있는 시스템 간의 연결 상태를 표시합니다.
- COMMUNICATION(통신) - 클러스터 내에서 시스템이 통신하는 방법을 구성합니다.
- DISCONNECT - 클러스터에서 시스템을 일시적으로 분리합니다.
- RECONNECT - 이전에 분리한 시스템과의 연결을 복원합니다.
- PREPJOIN - CCS에 새 시스템을 추가할 준비를 합니다.
[]> ADDGROUP
생성할 새 클러스터 그룹의 이름을 입력합니다.
[]> New_Group
클러스터 그룹 New_Group이 생성되었습니다.
현재 클러스터의 ESA를 생성된 새 그룹에 추가하려면 SETGROUP 명령을 사용합니다.
(시스템 esalab.cisco.com)> clusterconfig
이 명령은 "cluster" 모드로 제한됩니다. "클러스터" 모드로 전환하시겠습니까? [Y]>
클러스터 Cisco
수행할 작업을 선택합니다.
- ADDGROUP - 클러스터 그룹을 추가합니다.
- SETGROUP - 시스템이 구성원인 그룹을 설정합니다.
- RENAMEGROUP - 클러스터 그룹의 이름을 바꿉니다.
- DELETEGROUP - 클러스터 그룹 제거
- REMOVEMACHINE - 클러스터에서 시스템을 제거합니다.
- SETNAME - 클러스터 이름을 설정합니다.
- LIST - 클러스터의 시스템을 나열합니다.
- CONNSTATUS - 클러스터에 있는 시스템 간의 연결 상태를 표시합니다.
- COMMUNICATION(통신) - 클러스터 내에서 시스템이 통신하는 방법을 구성합니다.
- DISCONNECT - 클러스터에서 시스템을 일시적으로 분리합니다.
- RECONNECT - 이전에 분리한 시스템과의 연결을 복원합니다.
- PREPJOIN - CCS에 새 시스템을 추가할 준비를 합니다.
[]> SETGROUP
다른 그룹으로 이동할 컴퓨터를 선택합니다. 여러 대의 시스템을 쉼표로 구분하십시오.
1. esalab.cisco.com (그룹 ESA_Group)
[1]> 1
esalab.cisco.com이 멤버로 가입해야 하는 그룹을 선택합니다.
1. ESA_그룹
2. 새 그룹
[1]> 2
esalab.cisco.com을 group New_Group으로 설정합니다.
ESA 클러스터에서 현재 그룹의 이름을 바꾸려면 RENAMEGROUP 다음 명령을 사용합니다.
(시스템 esalab.cisco.com)> clusterconfig
이 명령은 "cluster" 모드로 제한됩니다. "클러스터" 모드로 전환하시겠습니까? [Y]>
클러스터 Cisco
수행할 작업을 선택합니다.
- ADDGROUP - 클러스터 그룹을 추가합니다.
- SETGROUP - 시스템이 구성원인 그룹을 설정합니다.
- RENAMEGROUP - 클러스터 그룹의 이름을 바꿉니다.
- DELETEGROUP - 클러스터 그룹 제거
- REMOVEMACHINE - 클러스터에서 시스템을 제거합니다.
- SETNAME - 클러스터 이름을 설정합니다.
- LIST - 클러스터의 시스템을 나열합니다.
- CONNSTATUS - 클러스터에 있는 시스템 간의 연결 상태를 표시합니다.
- COMMUNICATION(통신) - 클러스터 내에서 시스템이 통신하는 방법을 구성합니다.
- DISCONNECT - 클러스터에서 시스템을 일시적으로 분리합니다.
- RECONNECT - 이전에 분리한 시스템과의 연결을 복원합니다.
- PREPJOIN - CCS에 새 시스템을 추가할 준비를 합니다.
[]> RENAMEGROUP
이름을 바꿀 그룹을 선택합니다.
1. ESA_그룹
2. 새 그룹
[1]> 2
그룹의 새 이름을 입력합니다.
[New_Group]> Cluster_Group
그룹 New_Group이 Cluster_Group으로 이름이 변경되었습니다.
ESA 클러스터에서 현재 그룹을 삭제하려면 다음 명령을 사용합니다 DELETEGROUP
(시스템 esalab.cisco.com)> clusterconfig
이 명령은 "cluster" 모드로 제한됩니다. "클러스터" 모드로 전환하시겠습니까? [Y]>
클러스터 Cisco
수행할 작업을 선택합니다.
- ADDGROUP - 클러스터 그룹을 추가합니다.
- SETGROUP - 시스템이 구성원인 그룹을 설정합니다.
- RENAMEGROUP - 클러스터 그룹의 이름을 바꿉니다.
- DELETEGROUP - 클러스터 그룹 제거
- REMOVEMACHINE - 클러스터에서 시스템을 제거합니다.
- SETNAME - 클러스터 이름을 설정합니다.
- LIST - 클러스터의 시스템을 나열합니다.
- CONNSTATUS - 클러스터에 있는 시스템 간의 연결 상태를 표시합니다.
- COMMUNICATION(통신) - 클러스터 내에서 시스템이 통신하는 방법을 구성합니다.
- DISCONNECT - 클러스터에서 시스템을 일시적으로 분리합니다.
- RECONNECT - 이전에 분리한 시스템과의 연결을 복원합니다.
- PREPJOIN - CCS에 새 시스템을 추가할 준비를 합니다.
[]> 그룹 삭제
제거할 그룹을 선택합니다.
1. Cluster_Group
2. ESA_그룹
[1]> 1
Cluster_Group에서 머신을 이동해야 하는 그룹을 선택합니다.
1. ESA_그룹
[1]> 1
그룹 Cluster_Group이 제거되었습니다.
참고: Cluster에서 시스템을 추가/제거하면 변경 사항이 어플라이언스에 즉시 적용되며, 이 어플라이언스에는 가 commit 없습니다. 반면 ESA 그룹의 경우 이와 관련된 모든 작업은 commit 이후에 ESA에 적용됩니다.
관련 정보