Oracle® Solaris 11.2의 네트워크 보안

인쇄 보기 종료

업데이트 날짜: 2014년 8월
 
 

터널 모드에서 IPsec을 사용하여 두 LAN 사이의 연결을 보호하는 방법

터널 모드에서 내부 IP 패킷은 해당 컨텐츠를 보호하는 IPsec 정책을 결정합니다.

이 절차는 IPsec을 사용하여 두 서버 간의 네트워크 트래픽을 보호하는 방법 절차를 확장합니다. 설정은 VPN을 보호하기 위한 IPsec 작업에 대한 네트워크 토폴로지 설명에 설명되어 있습니다.

특정 명령을 실행하는 이유에 대한 자세한 설명은 IPsec을 사용하여 두 서버 간의 네트워크 트래픽을 보호하는 방법에서 해당하는 단계를 참조하십시오.


주 - 두 시스템에서 이 절차의 단계를 수행하십시오.

두 시스템 연결과 함께 이러한 두 시스템에 연결되는 두 인트라넷을 연결하게 됩니다. 이 절차에서 시스템은 게이트웨이로 작동합니다.


주 - Trusted Extensions 시스템에서 레이블이 있는 터널 모드로 IPsec를 사용하려면 Trusted Extensions 구성 및 관리 의 신뢰할 수 없는 네트워크에서 터널을 구성하는 방법에서 이 절차의 확장을 참조하십시오.

시작하기 전에

각 시스템은 전역 영역이나 배타적 IP 영역입니다. 자세한 내용은 IPsec 및 Oracle Solaris 영역을 참조하십시오.

    특정 권한이 있는 사용자는 root가 아니어도 이러한 명령을 실행할 수 있습니다.

  • 구성 명령을 실행하려면 Network IPsec Management 권한 프로파일에 지정된 관리자여야 합니다.

  • IPsec 관련 시스템 파일을 편집하고 키를 만들려면 pfedit 명령을 사용합니다.

  • hosts 파일을 편집하려면 root 역할이거나 해당 파일을 편집할 수 있는 명시적 권한이 있어야 합니다.

자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

원격으로 관리하는 경우 Example 7–1Oracle Solaris 11.2의 보안 셸 액세스 관리 의 보안 셸을 사용하여 ZFS를 원격으로 관리하는 방법에서 보안 원격 로그인 지침을 참조하십시오.

  1. IPsec를 구성하기 전에 패킷의 플로우를 제어합니다.
    1. IP 전달 및 IP 동적 경로 지정을 사용 안함으로 설정합니다.
      # routeadm -d ipv4-routing
      # ipadm set-prop -p forwarding=off ipv4
      # routeadm -u

      IP 전달을 사용 안함으로 설정하면 패킷이 이 시스템을 통해 한 네트워크에서 다른 네트워크로 전달되지 않습니다. routeadm 명령에 대한 설명은 routeadm(1M) 매뉴얼 페이지를 참조하십시오.

    2. IP 엄격한 멀티홈을 사용으로 설정합니다.
      # ipadm set-prop -p hostmodel=strong ipv4

      IP 엄격한 멀티홈을 사용으로 설정하면 시스템의 대상 주소 중 하나에 대한 패킷이 올바른 대상 주소에 도달해야 합니다.

      hostmodel 매개변수가 strong으로 설정되면 특정 인터페이스에 도달하는 패킷이 해당 인터페이스의 로컬 IP 주소 중 하나로 지정되어야 합니다. 기타 모든 패킷은 시스템의 다른 로컬 주소로 지정된 패킷이라도 삭제됩니다.

    3. 대부분의 네트워크 서비스가 사용 안함으로 설정되었는지 확인합니다.

      ssh 서비스가 실행 중인지 확인합니다.

      % svcs | grep network
      …
      online         Aug_09   svc:/network/ssh:default
  2. VPN에 대한 IPsec 정책을 /etc/inet/ipsecinit.conf 파일에 추가합니다.

    추가 예는 터널 모드를 사용하여 IPsec로 VPN을 보호하는 예를 참조하십시오.

    이 정책에서 로컬 LAN의 시스템과 게이트웨이의 내부 IP 주소 사이에는 IPsec 보호가 필요하지 않으므로 bypass 명령문이 추가됩니다.

    1. euro-vpn 시스템에서 다음 항목을 ipsecinit.conf 파일에 추가합니다.
      # LAN traffic to and from this host can bypass IPsec.
      {laddr 10.16.16.6 dir both} bypass {}
      
      # WAN traffic uses ESP with AES and SHA-2.
      {tunnel tun0 negotiate tunnel} 
       ipsec {encr_algs aes encr_auth_algs sha512 sa shared}
    2. calif-vpn 시스템에서 다음 항목을 ipsecinit.conf 파일에 추가합니다.
      # LAN traffic to and from this host can bypass IPsec.
      {laddr 10.1.3.3 dir both} bypass {}
      
      # WAN traffic uses ESP with AES and SHA-2.
      {tunnel tun0 negotiate tunnel} 
       ipsec {encr_algs aes encr_auth_algs sha512 sa shared}
  3. 각 시스템에서 IKE를 구성하여 두 시스템 사이에 IPsec SA 쌍을 추가합니다.

    IKEv2 구성의 구성 절차 중 하나에 따라 IKE를 구성합니다. IKE 구성 파일의 구문은 ikev2.config(4) 매뉴얼 페이지를 참조하십시오. IKEv1 프로토콜만 지원하는 시스템과 통신하는 경우 IKEv1 구성ike.config(4) 매뉴얼 페이지를 참조하십시오.


    주 - 키를 수동으로 생성하고 유지 관리해야 하는 경우 IPsec 키를 수동으로 만드는 방법을 참조하십시오.
  4. IPsec 정책 파일의 구문을 확인합니다.
    # ipsecconf -c /etc/inet/ipsecinit.conf

    오류를 수정하고 파일의 구문을 확인한 다음 계속합니다.

  5. IPsec 정책을 새로 고칩니다.
    # svcadm refresh ipsec/policy

    IPsec 정책은 기본적으로 사용으로 설정되므로 새로 고칩니다. IPsec 정책을 사용 안함으로 설정한 경우 사용으로 설정합니다.

    # svcadm enable ipsec/policy
  6. 터널 tun0을 만들고 구성합니다.

    다음 명령은 내부 및 외부 인터페이스를 구성하고, tun0 터널을 만들며, IP 주소를 터널에 지정합니다.

    1. calif-vpn 시스템에서 터널을 만들고 구성합니다.
      # ipadm create-ip net1
      # ipadm create-addr -T static -a local=10.1.3.3 net1/inside
      # dladm create-iptun -T ipv4 -a local=192.168.13.213,remote=192.168.116.16 tun0
      # ipadm create-ip tun0
      # ipadm create-addr -T static \
      -a local=10.1.3.3,remote=10.16.16.6 tun0/v4tunaddr

      첫번째 명령은 IP 인터페이스 net1을 만듭니다. 두번째 명령은 net1에 주소를 추가합니다. 세번째 명령은 IP 인터페이스 tun0을 만듭니다. 네번째 명령은 캡슐화된 IP 주소를 터널 링크에 추가합니다. 자세한 내용은 dladm(1M)ipadm(1M) 매뉴얼 페이지를 참조하십시오.

    2. euro-vpn 시스템에서 터널을 만들고 구성합니다.
      # ipadm create-ip net1
      # ipadm create-addr -T static -a local=10.16.16.6 net1/inside
      # dladm create-iptun -T ipv4 -a local=192.168.116.16,remote=192.168.13.213 tun0
      # ipadm create-ip tun0
      # ipadm create-addr -T static \
      -a local=10.16.16.6,remote=10.1.3.3 tun0/v4tunaddr

      주 - ipadm 명령에 대한 –T 옵션은 만들 주소의 유형을 지정합니다. dladm 명령에 대한 –T 옵션은 터널을 지정합니다.

      이러한 명령에 대한 자세한 내용은 dladm(1M)ipadm(1M) 매뉴얼 페이지와 Oracle Solaris 11.2 네트워크 구성 요소의 구성 및 관리 의 IPv4 인터페이스를 구성하는 방법을 참조하십시오. 사용자 정의 이름에 대한 자세한 내용은 Oracle Solaris 11.2 네트워크 구성 요소의 구성 및 관리 의 Oracle Solaris의 네트워크 장치 및 데이터 링크 이름 지정을 참조하십시오.

  7. 각 시스템에서 전달을 구성합니다.
    # ipadm set-ifprop -m ipv4 -p forwarding=on net1
    # ipadm set-ifprop -m ipv4 -p forwarding=on tun0
    # ipadm set-ifprop -m ipv4 -p forwarding=off net0

    IP 전달은 다른 곳에서 도달한 패킷을 전달할 수 있음을 의미합니다. 또한 IP 전달은 이 인터페이스에서 떠난 패킷이 다른 곳에서 왔을 수 있음을 의미합니다. 패킷을 성공적으로 전달하려면 수신 인터페이스와 전송 인터페이스에서 모두 IP 전달을 사용으로 설정해야 합니다.

    net1 인터페이스는 인트라넷 내부에 있으므로 net1에 대해 IP 전달이 사용으로 설정되어 있어야 합니다. tun0은 인터넷을 통해 두 시스템을 연결하므로 tun0에 대해 IP 전달이 사용으로 설정되어 있어야 합니다. net0 인터페이스의 경우 인터넷의 외부 공격자가 보호된 인트라넷에 패킷을 주입하지 못하도록 IP 전달이 해제되어 있습니다.

  8. 각 시스템에서 개인 인터페이스의 알림을 막습니다.
    # ipadm set-addrprop -p private=on net0

    net0에 IP 전달이 사용 안함으로 설정되어 있더라도 경로 지정 프로토콜 구현은 여전히 인터페이스를 알릴 수 있습니다. 예를 들어, in.routed 프로토콜은 net0이 인트라넷 내부의 피어에 패킷을 전달할 수 있음을 알릴 수 있습니다. 인터페이스의 개인 플래그를 설정하여 알림을 막을 수 있습니다.

  9. 네트워크 서비스를 다시 시작합니다.
    # svcadm restart svc:/network/initial:default
  10. net0 인터페이스를 통한 기본 경로를 수동으로 추가합니다.

    기본 경로는 인터넷에 직접 액세스되는 라우터에 있어야 합니다.

    1. calif-vpn 시스템에서 다음 경로를 추가합니다.
      # route -p add net default 192.168.13.5
    2. euro-vpn 시스템에서 다음 경로를 추가합니다.
      # route -p add net default  192.168.116.4

      net0 인터페이스는 인트라넷의 일부가 아니지만 net0은 인터넷을 거쳐 피어 시스템에 도달할 필요가 없습니다. 피어를 찾으려면 net0은 인터넷 경로 지정에 대한 정보가 필요합니다. VPN 시스템은 나머지 인터넷에 라우터가 아닌 호스트로 나타납니다. 따라서 기본 라우터를 사용하거나 라우터 검색 프로토콜을 실행하여 피어 시스템을 찾을 수 있습니다. 자세한 내용은 route(1M)in.routed(1M) 매뉴얼 페이지를 참조하십시오.