Oracle® Solaris 11.2의 보안 셸 액세스 관리

인쇄 보기 종료

업데이트 날짜: 2014년 9월
 
 

보안 셸을 사용하여 ZFS를 원격으로 관리하는 방법

기본적으로 root 역할은 보안 셸에 원격으로 로그인할 수 없습니다. 이전까지 루트는 원격 시스템의 저장소에 ZFS 풀 데이터를 보내는 것과 같은 중요한 작업에 보안 셸을 사용했습니다. 이 절차에서 root 역할은 원격 ZFS 관리자로 작업할 수 있는 사용자를 만듭니다.

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

  1. 두 시스템 모두에서 사용자를 만듭니다.

    예를 들어, zfsroot 사용자를 만들고 암호를 제공합니다.

    source # useradd -c "Remote ZFS Administrator" -u 1201 -d /home/zfsroot zfsroot
    source # passwd zfsroot
    Enter password:
    Retype password:
    #
    dest # useradd -c "Remote ZFS Administrator" -u 1201 -d /home/zfsroot zfsroot
    dest # passwd zfsroot
    ...

    zfsroot 사용자는 두 시스템에서 모두 동일하게 정의되어야 합니다.

  2. 보안 셸 인증에 대한 사용자 키 쌍을 만듭니다.

    키 쌍은 소스 시스템에 만들어집니다. 그런 후 공개 키가 대상 시스템에서 zfsroot 사용자에 복사됩니다.

    1. 키 쌍을 생성하고 이를 id_migrate 파일에 배치합니다.
      # ssh-keygen -t rsa -P "" -f ~/id_migrate
      Generating public/private rsa key pair.
      Your identification has been saved in /root/id_migrate.
      Your public key has been saved in /root/id_migrate.pub.
      The key fingerprint is:
      3c:7f:40:ef:ec:63:95:b9:23:a2:72:d5:ea:d1:61:f0 root@source
    2. 키 쌍의 공용 부분을 대상 시스템에 보냅니다.
      # scp ~/id_migrate.pub zfsroot@dest:
      The authenticity of host 'dest (10.134.76.126)' can't be established.
      RSA key fingerprint is 44:37:ab:4e:b7:2f:2f:b8:5f:98:9d:e9:ed:6d:46:80.
      Are you sure you want to continue connecting (yes/no)? yes
      Warning: Permanently added 'dest,10.134.76.126' (RSA) to the list of known hosts.
      Password:
      id_migrate.pub 100% |*****************************| 399 00:00
  3. 두 시스템 모두에서 ZFS 파일 관리 권한 프로파일을 zfsroot에 지정합니다.
    source # usermod -P +'ZFS File System Management' -S files zfsroot
    dest # usermod -P +'ZFS File System Management' -S files zfsroot
  4. 대상 시스템에 권한 프로파일이 지정되었는지 확인합니다.
    dest # profiles zfsroot
    zfsroot:
    ZFS File System Management
    Basic Solaris User
    All
  5. 대상 시스템에서 ,키 쌍의 공용 부분을 전용 /home/zfsroot/.ssh 디렉토리로 이동합니다.
    root@dest # su - zfsroot
    Oracle Corporation      SunOS 5.11      11.1    May 2012
    zfsroot@dest $ mkdir -m 700 .ssh
    zfsroot@dest $ cat id_migrate.pub >> .ssh/authorized_keys
  6. 구성이 작동하는지 확인합니다.
    root@source# ssh -l zfsroot -i ~/id_migrate dest \
    pfexec /usr/sbin/zfs snapshot zones@test
    root@source# ssh -l zfsroot -i ~/id_migrate dest \
    pfexec /usr/sbin/zfs destroy zones@test
  7. (옵션) 스냅샷을 만들고 데이터를 복제할 수 있는지 확인합니다.
    root@source# zfs snapshot -r rpool/zones@migrate-all
    root@source#  zfs send -rc rpool/zones@migrate-all | \
    ssh -l zfsroot -i ~/id_migrate dest pfexec /usr/sbin/zfs recv -F zones
  8. (옵션) ZFS 관리를 위해 zfsroot 계정을 사용할 수 있는 기능을 제거합니다.
    root@dest# usermod -P -'ZFS File System Management' zfsroot
    root@dest#  su - zfsroot
    zfsroot@dest#  cp .ssh/authorized_keys .ssh/authorized_keys.bak
    zfsroot@dest#  grep -v root@source .ssh/authorized_keys.bak> .ssh/authorized_keys