Oracle® Solaris 11.2 での Secure Shell アクセスの管理

印刷ビューの終了

更新: 2014 年 9 月
 
 

Secure Shell を使用して ZFS をリモートで管理する方法

デフォルトでは、root 役割は Secure Shell を使用してリモートログインできません。従来、root は、重要なタスク (ZFS プールデータのリモートシステム上のストレージへの送信など) に Secure Shell を使用してきました。この手順では、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. Secure Shell 認証のためのユーザーの鍵のペアを作成します。

    この鍵のペアは、ソースシステム上で作成されます。次に、公開鍵が、宛先システム上の 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. 両方のシステム上で、zfsroot に ZFS File Management 権利プロファイルを割り当てます。
    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. (オプション) zfsroot アカウントを ZFS の管理に使用する機能を削除します。
    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