Red Hat Training
A Red Hat training course is available for Red Hat Ceph Storage
2.9. Red Hat Ceph Storage 방화벽 설정
RHCS(Red Hat Ceph Storage)는 firewalld 서비스를 사용합니다.
Monitor 데몬은 Ceph 스토리지 클러스터 내 통신에 포트 6789 를 사용합니다.
각 Ceph OSD 노드에서 OSD 데몬은 6800-7300 범위의 여러 포트를 사용합니다.
- 하나는 클라이언트와 통신하고 공용 네트워크를 통해 모니터링합니다.
- 사용 가능한 경우 클러스터 네트워크를 통해 다른 OSD로 데이터를 전송하는 방법
- 사용 가능한 경우 클러스터 네트워크에서 하트비트 패킷을 교환하는 방법
Ceph Manager(ceph-mgr) 데몬은 6800-7300 범위의 포트를 사용합니다. 동일한 노드에서 Ceph Monitor를 사용하여 ceph-mgr 데몬을 공동 배치하는 것이 좋습니다.
Ceph Metadata Server 노드(ceph-mds)는 6800-7300 범위의 포트를 사용합니다.
Ceph Object Gateway 노드는 기본적으로 포트 8080 을 사용하도록 Ansible에서 구성합니다. 그러나 기본 포트(예: 포트 80 )를 변경할 수 있습니다.
SSL/TLS 서비스를 사용하려면 포트 443 을 엽니다.
사전 요구 사항
- 네트워크 하드웨어가 연결되어 있습니다.
절차
root 사용자로 다음 명령을 실행합니다.
모든 RHCS 노드에서
firewalld서비스를 시작합니다. 부팅 시 실행되도록 활성화하고 실행 중인지 확인합니다.# systemctl enable firewalld # systemctl start firewalld # systemctl status firewalld
모든 모니터 노드에서 공용 네트워크에서 포트
6789를 엽니다.[root@monitor ~]# firewall-cmd --zone=public --add-port=6789/tcp [root@monitor ~]# firewall-cmd --zone=public --add-port=6789/tcp --permanent
소스 주소를 기반으로 액세스를 제한하려면 다음을 수행합니다.
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="6789" accept"
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="6789" accept" --permanent
- replace
-
Monitor 노드의 네트워크 주소가 있는 ip
_address입니다. -
CIDR 표기법으로 넷마스크가 있는 넷마스크
_prefix.
-
Monitor 노드의 네트워크 주소가 있는 ip
예제
[root@monitor ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.11/24" port protocol="tcp" \ port="6789" accept"
[root@monitor ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.11/24" port protocol="tcp" \ port="6789" accept" --permanent
모든 OSD 노드에서 공용 네트워크에서 포트
6800-7300을 엽니다.[root@osd ~]# firewall-cmd --zone=public --add-port=6800-7300/tcp [root@osd ~]# firewall-cmd --zone=public --add-port=6800-7300/tcp --permanent
별도의 클러스터 네트워크가 있는 경우 해당 영역에서 명령을 반복합니다.
모든 Ceph Manager(
ceph-mgr) 노드(일반적으로 Monitor와 동일한 노드)에서 공용 네트워크에서 포트6800-7300을 엽니다.[root@monitor ~]# firewall-cmd --zone=public --add-port=6800-7300/tcp [root@monitor ~]# firewall-cmd --zone=public --add-port=6800-7300/tcp --permanent
별도의 클러스터 네트워크가 있는 경우 해당 영역에서 명령을 반복합니다.
모든 Ceph 메타데이터 서버(
ceph-mds) 노드에서 공용 네트워크에서 포트6800을 엽니다.[root@monitor ~]# firewall-cmd --zone=public --add-port=6800/tcp [root@monitor ~]# firewall-cmd --zone=public --add-port=6800/tcp --permanent
별도의 클러스터 네트워크가 있는 경우 해당 영역에서 명령을 반복합니다.
모든 Ceph Object Gateway 노드에서 공용 네트워크에서 관련 포트 또는 포트를 엽니다.
기본 Ansible 구성된
8080포트를 엽니다.[root@gateway ~]# firewall-cmd --zone=public --add-port=8080/tcp [root@gateway ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
소스 주소를 기반으로 액세스를 제한하려면 다음을 수행합니다.
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="8080" accept"
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="8080" accept" --permanent
- replace
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
_address. -
CIDR 표기법으로 넷마스크가 있는 넷마스크
_prefix.
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
예제
[root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="8080" accept"
[root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="8080" accept" --permanent
선택 사항: Ansible을 사용하여 Ceph Object Gateway를 설치하고 Ansible에서
8080에서 사용하도록 Ceph Object Gateway를 구성하는 기본 포트를 변경된 경우 포트80으로 이 포트를 엽니다.[root@gateway ~]# firewall-cmd --zone=public --add-port=80/tcp [root@gateway ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
소스 주소를 기반으로 액세스를 제한하려면 다음 명령을 실행합니다.
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="80" accept"
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="80" accept" --permanent
- replace
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
_address. -
CIDR 표기법으로 넷마스크가 있는 넷마스크
_prefix.
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
예제
[root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="80" accept"
[root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="80" accept" --permanent
선택 사항: SSL/TLS를 사용하려면 포트
443을 엽니다.[root@gateway ~]# firewall-cmd --zone=public --add-port=443/tcp [root@gateway ~]# firewall-cmd --zone=public --add-port=443/tcp --permanent
소스 주소를 기반으로 액세스를 제한하려면 다음 명령을 실행합니다.
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="443" accept"
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="IP_address/netmask_prefix" port protocol="tcp" \ port="443" accept" --permanent
- replace
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
_address. -
CIDR 표기법으로 넷마스크가 있는 넷마스크
_prefix.
-
오브젝트 게이트웨이 노드의 네트워크 주소가 있는 ip
예제
[root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="443" accept" [root@gateway ~]# firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" \ source address="192.168.0.31/24" port protocol="tcp" \ port="443" accept" --permanent
추가 리소스
- 공용 및 클러스터 네트워크에 대한 자세한 내용은 Red Hat Ceph Storage의 네트워크 구성 확인을 참조하십시오.
-
firewalld에 대한 자세한 내용은 Red Hat Enterprise Linux 7의 보안 가이드의 방화벽 사용 장을 참조하십시오.