지역 파일 공유를 위한 전송 중 암호화 설정
stunnel을 사용하여 전송 계층 보안( TLS ) 1.2 을 통해 지역 파일 공유에 대한 암호화된 마운트 연결을 설정합니다.
stunnel을 사용하여 TLS 1.2 + 연결을 설정하면, 컴퓨팅 호스트와 지역 파일 공유 간에 암호화된 마운트 연결을 구축할 수 있습니다. 보안 그룹 기반 액세스 제어 모드로 파일 공유를 사용하고 가상 네트워크 인터페이스(VNI)로 대상을 마운트할 때 안전한 엔드투엔드 암호화를 사용할 수 있습니다. 이러한 마운트 대상이 연결되고 공유가 마운트되면 VNI는 보안 그룹 정책을 확인하여 권한이 부여된 인스턴스만 공유와 통신할 수 있는지 확인합니다.
Stunnel은 오픈 소스 기반의 다목적, 다중 플랫폼 애플리케이션으로, 범용 TLS / SSL 터널링 서비스를 제공합니다. 이 라이브러리는 기본이 되는 TLS 프로토콜을 구현하기 위해 OpenSSL 라이브러리를 활용합니다. Stunnel은 X.509 디지털 인증서를 활용한 공개 키 암호화를 사용하여 연결을 보호하며, 클라이언트는 선택적으로 인증서를 통해 인증받을 수 있습니다.
Mount Helper 유틸리티를 통해 설정된 경우, stunnel 연결에 사용되는 암호화 방식은 128비트 Galois/Counter Mode(GCM) 방식의 고급 암호화 표준(AES)입니다( AES-128-GCM ) ( TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 ). 허용되는 암호 모음에 대한 자세한 내용은 ‘ IBM Cloud Framework for Financial Services- 전송 중 데이터 암호화’ 항목을 참조하십시오.
터널 클라이언트 애플리케이션의 설치 및 유지 관리는 사용자의 책임입니다. 자세한 정보는 다음 리소스를 참조하십시오.
Stunnel을 사용한 전송 중 암호화의 전제 조건
이 기능을 사용하기 전에 다음 요건을 충족해야 합니다:
-
파일 공유는
rfs프로필을 기반으로 해야 하며 보안 그룹 액세스 모드로 구성해야 합니다. -
마운트 대상은 가상 네트워크 인터페이스를 사용하여 만들어야 합니다. 컴퓨팅 호스트와 마운트 대상은 동일한 보안 그룹의 구성원이어야 합니다. 자세한 내용은 파일 공유 및 마운트 대상 만들기를 참조하세요.
-
전송 중인 데이터 암호화를 사용하도록 설정해야 합니다. 콘솔에서 마운트 대상을 만들 때 전송 중 암호화를 켜고 끌 수 있습니다. API
transit_encryption속성은stunnel값을 허용하여 기능을 활성화합니다. -
서버에 터널이 설치되어 있어야 합니다. IBM Cloud® 파일 서비스는 stunnel 애플리케이션의 다운로드, 구성 및 실행과 같이 컴퓨팅 호스트에서 수행해야 하는 작업을 자동화하기 위한 ‘Mount Helper’ 유틸리티를 제공합니다.
터널로 파일 공유 마운트하기
-
다음 명령 구문을 사용하여 공유를 마운트합니다. 마운트 경로를 파일 공유에 맞는 정보로 바꿉니다.
mount -t ibmshare -o stunnel 10.0.0.1:/MOUNT_PATH /mnt/MOUNT_PATH다음 예를 참조하십시오.
++ mount -v -o stunnel -t ibmshare 10.240.64.24:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210 Debug - Locked ok:/var/lock/ibm_mount_helper.lck Debug - File unlocked:/var/lock/ibm_mount_helper.lck Debug - Locked ok:/var/lock/ibm_mount_helper.lck Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4) Debug - Existing nfs/nfs4 mounts found:0 Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4) Debug - Existing nfs/nfs4 mounts found:0 Debug - Local port 10001 will be used for setting up next stunnel Debug - Starting stunnel for mounting /EAD9B8582BC84FDAB57B7A315BCA1210 Debug - Stunnel conf file created /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf Debug - Attempting to start stunnel using /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf Debug - Attempting mount of /EAD9B8582BC84FDAB57B7A315BCA1210 on the local host Debug - RunCmd: Mount using stunnel (mount -t nfs4 -o sec=sys,nfsvers=4.1,rw,port=10001 127.0.0.1:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210 -v) Debug - Stunnel mount was successful Debug - File unlocked:/var/lock/ibm_mount_helper.lck -
시스템 로그를 확인하여 터널이 실행 중이고 연결이 성공적으로 설정되었는지 확인하여 연결을 확인합니다. 다음 명령을 실행하여 첨부된 파일 시스템을 볼 수도 있습니다:
df -h
NFS용 no_root_squash 구현(선택사항)
기본적으로 NFS는 루트 권한으로 작성된 파일을 nobody 사용자로 다운그레이드합니다. 이 보안 기능을 사용하면 요청하지 않는 한 공유되지 않습니다.
no_root_squash 를 구성하면 루트 클라이언트가 원격 NFS 파일 공유에서 루트 권한을 유지할 수 있습니다.
NFSv4.1의 경우 nfsv4 도메인을 slnfsv4.com으로 설정하고 rpcidmapd 또는 OS에서 사용하는 유사한 서비스를 시작하십시오.
-
호스트에서
/etc/idmapd.conf에서 도메인 설정을 지정하십시오.$ vi /etc/idmapd.conf [General] #Verbosity = 0 #The following should be set to the local NFSv4 domain name #The default is the host's DNS domain name. Domain = slnfsv4.com [Mapping] Nobody-User = nobody Nobody-Group = nobody -
nfsidmap -c을(를) 실행하십시오.