すべてのプロダクト
Search
ドキュメントセンター

File Storage NAS:Linux で AD ユーザーとして SMB ファイルシステムをマウント

最終更新日:Aug 26, 2026

このトピックでは、AD ドメインユーザーとして Linux クライアントに SMB ファイルシステムをマウントする方法について説明します。また、マウント後のファイルシステムへのアクセス方法と、ファイルおよびディレクトリのアクセス制御リスト (ACL) の管理方法についても説明します。

前提条件

背景

SMB ファイルシステムのマウントターゲットを AD ドメインに追加する前は、匿名ユーザーとしてのみファイルシステムをマウントして使用できます。マウントターゲットをドメインに追加した後、匿名ユーザーからのアクセスを引き続き許可するかどうかを選択できます。

  • 匿名アクセスを引き続き許可する場合、クライアントは Kerberos 認証を使用してドメインアイデンティティでファイルシステムにアクセスするか、NTLM 認証を使用して Everyone グループのメンバーとしてアクセスできます。

  • 匿名アクセスを許可しない場合、Kerberos 認証プロトコルを使用する Linux クライアントのみが AD ドメインユーザーとしてファイルシステムをマウントできます。

以下の手順では、Ubuntu と CentOS を例として、AD ドメインユーザーとして SMB ファイルシステムをマウントしてアクセスする方法を説明します。

方法1:ドメイン参加済みクライアントでのマウント

  1. Linux クライアントにログインします。

  2. Linux クライアントを AD ドメインに参加させます。

    • Ubuntu

      1. AD 設定パッケージをインストールします。

        sudo apt-get update
        sudo apt-get -y install realmd libnss-sss libpam-sss sssd sssd-tools adcli samba-common-bin oddjob oddjob-mkhomedir packagekit krb5-user
      2. AD ドメイン内の Linux クライアントのホスト名を設定します。

        sudo hostnamectl set-hostname myubuntu.example-company.com

        コマンドでは、example-company.com をご使用の AD ドメイン名に置き換えます。

        設定完了後、hostnamectl コマンドを実行してクライアントのホスト名を確認します。

        user1@myubuntu:/home$ sudo hostnamectl set-hostname myubuntu.example-company.com
        user1@myubuntu:/home$ hostnamectl
           Static hostname: myubuntu.example-company.com
                 Icon name: computer-vm
                   Chassis: vm
                Machine ID: 20210623112404781463487467590001
                   Boot ID: 0702ff766c504355a16f9b27e467a6f6
            Virtualization: kvm
          Operating System: Ubuntu 20.04.2 LTS
                    Kernel: Linux 5.4.0-77-generic
              Architecture: x86-64
        user1@myubuntu:/home$
      3. DNS を設定します。

        1. 次のコマンドを実行して、DNS の自動更新を停止します。

          sudo systemctl disable systemd-resolved
          sudo systemctl stop systemd-resolved
        2. /etc/resolv.conf に AD サーバーの IP を追加します。

          # Generated by NetworkManager
          search example-company.com
          nameserver 172.19.0.61
        3. ping コマンドを実行して AD サーバー名に ping を送信し、接続を確認します。

          user1@myubuntu:/home$ ping example-company.com
          PING example-company.com (172.19.0.61) 56(84) bytes of data.
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.274 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.289 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.270 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.273 ms
          ^C
          --- example-company.com ping statistics ---
          4 packets transmitted, 4 received, 0% packet loss, time 3073ms
          rtt min/avg/max/mdev = 0.270/0.276/0.289/0.007 ms
      4. AD ドメインを検出します。

        realm discover <AD ドメイン>
        user1@myubuntu:/home$ realm discover example-company.com
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: no
          server-software: active-directory
          client-software: sssd
          required-package: sssd-tools
          required-package: sssd
          required-package: libnss-sss
          required-package: libpam-sss
          required-package: adcli
          required-package: samba-common-bin
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
      5. Linux クライアントを AD ドメインに参加させます。

        sudo kinit Administrator@EXAMPLE-COMPANY.COM
        sudo realm join -U Administrator example-company.com

        realm list コマンドを実行します。出力が以下のようであれば、Linux クライアントは AD ドメインに参加しています。

        user1@myubuntu:/home$ realm list
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: kerberos-member
          server-software: active-directory
          client-software: sssd
          required-package: sssd-tools
          required-package: sssd
          required-package: libnss-sss
          required-package: libpam-sss
          required-package: adcli
          required-package: samba-common-bin
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
      6. AD ドメインユーザーのログオン時にホームディレクトリが自動作成されるように設定します。

        1. ホームディレクトリを設定します。

          sudo bash -c "cat > /usr/share/pam-configs/mkhomedir" <<EOF
          Name: activate mkhomedir
          Default: yes
          Priority: 900
          Session-Type: Additional
          Session:
                  required                        pam_mkhomedir.so umask=0022 skel=/etc/skel
          EOF
        2. 次のコマンドを実行して、設定を適用します。

          pam-auth-update
        3. 有効化後、上下の矢印キーでカーソルを移動し、スペースキーを押して選択マーク * を追加します。activate mkhomedir オプションに * が付いていることを確認してから、Tab キーを押してカーソルを [Ok] に移動し、設定を完了します。

          Pluggable Authentication Modules (PAM) determine how authentication, authorization, and password changing are handled on the
          system, as well as allowing configuration of additional actions to take when starting user sessions.
          Some PAM module packages provide profiles that can be used to automatically adjust the behavior of all PAM-using applications
          on the system.  Please indicate which of these behaviors you wish to enable.
          PAM profiles to enable:
              [*] Pwquality password strength checking
              [*] activate mkhomedir
              [*] Unix authentication
              [*] SSS authentication
              [*] Register user sessions in the systemd control group hierarchy
              [*] Inheritable Capabilities Management
                              <Ok>                        <Cancel>
      7. Linux sssd サービスを設定します。

        1. /etc/sssd/sssd.conf 設定ファイルに、krb5_ccname_template=FILE:%d/krb5cc_%U の行を追加します。

          [sssd]
          domains = example-company.com
          config_file_version = 2
          services = nss, pam
          [domain/example-company.com]
          default_shell = /bin/bash
          krb5_store_password_if_offline = True
          cache_credentials = True
          krb5_realm = EXAMPLE-COMPANY.COM
          realmd_tags = manages-system joined-with-adcli
          id_provider = ad
          fallback_homedir = /home/%u@%d
          ad_domain = example-company.com
          use_fully_qualified_names = True
          ldap_id_mapping = True
          access_provider = ad
          krb5_ccname_template=FILE:%d/krb5cc_%U
        2. 次のコマンドを実行して、sssd サービスを再起動し、そのステータスを確認します。

          sudo systemctl restart sssd
          sudo systemctl status sssd

          以下のような出力は、sssd サービスが正常に設定されたことを示します。

          root@iZrj90myfgaf70i4jqsmr9Z:~# systemctl status sssd
          ● sssd.service - System Security Services Daemon
             Loaded: loaded (/lib/systemd/system/sssd.service; enabled; vendor preset: enabled)
             Active: active (running) since Fri 2021-03-12 14:00:21 CST; 3s ago
           Main PID: 21279 (sssd)
              Tasks: 4 (limit: 9315)
             Memory: 42.2M
             CGroup: /system.slice/sssd.service
                     ├─21279 /usr/sbin/sssd -i --logger=files
                     ├─21300 /usr/libexec/sssd/sssd_be --domain example-company.com --uid 0 --gid 0 --logger=files
                     ├─21301 /usr/libexec/sssd/sssd_nss --uid 0 --gid 0 --logger=files
                     └─21302 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --logger=files
    • CentOS

      1. AD 設定パッケージをインストールします。

        sudo yum update
        sudo yum install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients policycoreutils-python-utils -y
      2. AD ドメイン内の Linux クライアントのホスト名を設定します。

        sudo hostnamectl set-hostname mycentos.example-company.com

        コマンドでは、example-company.com をご使用の AD ドメイン名に置き換えます。

        設定完了後、hostnamectl コマンドを実行してクライアントのホスト名を確認します。

        [user1@mycentos root]$ sudo hostnamectl set-hostname mycentos.example-company.com
        [user1@mycentos root]$ hostnamectl
           Static hostname: mycentos.example-company.com
                 Icon name: computer-vm
                   Chassis: vm
                Machine ID: 20210623110808105647395700239158
                   Boot ID: e8fded82c87f4fe783e3c75263c854d9
            Virtualization: kvm
          Operating System: CentOS Linux 8
               CPE OS Name: cpe:/o:centos:centos:8
                    Kernel: Linux 4.18.0-305.12.1.el8_4.x86_64
              Architecture: x86-64
      3. DNS を設定します。

        AD サーバーの IP アドレスを /etc/resolv.conf に書き込み、デフォルトの DNS サーバーを削除します。ping コマンドを実行し、AD サーバー名に ping を送信して接続を確認します。

        [user1@mycentos root]$ ping example-company.com
        PING example-company.com (172.19.0.61) 56(84) bytes of data.
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.221 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.334 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.314 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.323 ms
        ^C
        --- example-company.com ping statistics ---
        4 packets transmitted, 4 received, 0% packet loss, time 3044ms
        rtt min/avg/max/mdev = 0.221/0.298/0.334/0.045 ms
      4. Kerberos を設定します。

        /etc/krb5.conf 設定ファイルに次の行を追加します。

            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        # To opt out of the system crypto-policies configuration of krb5, remove the
        # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
        includedir /etc/krb5.conf.d/
        [logging]
            default = FILE:/var/log/krb5libs.log
            kdc = FILE:/var/log/krb5kdc.log
            admin_server = FILE:/var/log/kadmind.log
        [libdefaults]
            dns_lookup_realm = false
            ticket_lifetime = 24h
            renew_lifetime = 7d
            forwardable = true
            rdns = false
            pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
            spake_preauth_groups = edwards25519
        #    default_realm = EXAMPLE.COM
            default_ccache_name = KEYRING:persistent:%{uid}
            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        [realms]
        # EXAMPLE.COM = {
        #     kdc = kerberos.example.com
        #     admin_server = kerberos.example.com
        # }
        [domain_realm]
        # .example.com = EXAMPLE.COM
        # example.com = EXAMPLE.COM
      5. AD ドメインを検出します。

        realm discover example-company.com
        [user1@mycentos root]$ realm discover example-company.com
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: no
          server-software: active-directory
          client-software: sssd
          required-package: oddjob
          required-package: oddjob-mkhomedir
          required-package: sssd
          required-package: adcli
          required-package: samba-common-tools
      6. Linux クライアントを AD ドメインに参加させます。

        sudo realm join -U Administrator example-company.com

        realm list コマンドを実行します。出力が以下のようであれば、Linux クライアントは AD ドメインに参加しています。

        [user1@mycentos root]$ realm list
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: kerberos-member
          server-software: active-directory
          client-software: sssd
          required-package: oddjob
          required-package: oddjob-mkhomedir
          required-package: sssd
          required-package: adcli
          required-package: samba-common-tools
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
  3. id コマンドを実行して、AD ドメインユーザーのステータスを確認します。

    id testuser@example-company.com

    以下のような出力は、AD ドメインユーザーが正しく識別されていることを示します。

    [user1@mycentos root]$ id usera1@example-company.com
    uid=371801107(usera1@example-company.com) gid=371800513(domain users@example-company.com) groups=371800513(domain users@example-company.com)
  4. AD ドメインユーザーにログオン権限を付与します。

    • 特定のユーザーにログオン権限を付与します。

      sudo realm permit usera1@example-company.com
      sudo realm permit userb1@example-company.com userb2@example-company.com 
    • 特定のグループにログオン権限を付与します。

      sudo realm permit -g 'Security Users'
      sudo realm permit -g 'Domain Users' 'Domain Admins'
    • すべてのユーザーにログオン権限を付与します。

      sudo realm permit --all
    • すべてのユーザーのログオン権限を拒否します。

      sudo realm deny --all
  5. AD ドメインユーザーに sudo 権限を追加します。

    次のコマンドを実行して sudo 設定ファイルを開き、必要に応じて sudo 権限を追加します。

    sudo vim /etc/sudoers.d/domain_admins
    • 特定のユーザーに sudo 権限を追加します。

      usera1@example-company.com     ALL=(ALL)   ALL
      userb2@example-company.com     ALL=(ALL)   ALL
    • 特定のグループに sudo 権限を追加します。

      %admingroupc1@example-company.com     ALL=(ALL)   ALL
    • 名前に複数の単語を含むグループに sudo 権限を追加します。

      %domain\ admins@example-company.com       ALL=(ALL)       ALL
  6. SSH ログインを設定します。

    1. /etc/ssh/sshd_config 設定ファイルを開き、ログイン設定を次のように変更します。

      PasswordAuthentication yes
    2. オペレーティングシステムに対応するコマンドを実行して、SSHD サービスを再起動します。

      • CentOS

        service sshd restart
      • Ubuntu

        service ssh restart
  7. AD ドメインユーザーとして Linux クライアントにログインします。

    ssh localhost -l usera1@example-company.com

    以下のような出力は、AD ドメインユーザーとして Linux クライアントに正常にログインしたことを示します。

    [user1@mycentos root]$ ssh localhost -l usera1@example-company.com
    The authenticity of host 'localhost (127.0.0.1)' can't be established.
    ECDSA key fingerprint is SHA256:t/sEr63muG4UvBiAODXW9cHuMDBUlWUXO3cQ4xxmN78.
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
    usera1@example-company.com@localhost's password:
    Welcome to Alibaba Cloud Elastic Compute Service !
    Activate the web console with: systemctl enable --now cockpit.socket
  8. SMB ファイルシステムをマウントします。

    1. 必要なマウントツールをインストールします。

      • Ubuntu

        sudo apt-get install keyutils cifs-utils
      • CentOS

        sudo yum install keyutils cifs-utils
    2. ユーザーとチケット情報を確認します。

      id コマンドを実行して、ログイン後の uid と gid 情報を確認します。

      [usera1@example-company.com@mycentos ~]$ klist
      Ticket cache: KCM:371801107:64031
      Default principal: usera1@EXAMPLE-COMPANY.COM
      Valid starting       Expires              Service principal
      08/31/2021 07:56:42  08/31/2021 17:56:42  krbtgt/EXAMPLE-COMPANY.COM@EXAMPLE-COMPANY.COM
              renew until 09/07/2021 07:56:42
      [usera1@example-company.com@mycentos ~]$ id
      uid=371801107(usera1@example-company.com) gid=371800513(domain users@example-company.com) groups=371800513(domain users@example-company.com),371801110(groupa@example-company.com)
    3. 次のコマンドを実行して、ファイルシステムをマウントします。

      sudo mount -t cifs //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare /mnt -o vers=2.1,sec=krb5,cruid=371801107,uid=371801107,gid=371800513  --verbose

      205dee4****-uub48.us-west-1.nas.aliyuncs.com をご自身のファイルシステムのマウントターゲットアドレスに置き換えてください。

      説明

      NAS コンソールで 転送中の暗号化を有効化 を選択した場合、vers=3.0 オプションを使用してファイルシステムをマウントする必要があります。

  9. 自動マウントを設定します。

    Linux クライアントの再起動後にファイルシステムを自動的にマウントするには、自動マウントを設定します。

    1. /etc/auto.master 設定ファイルに、次の行を追加します。

      /share    /etc/auto.cifs    --timeout=30 --ghost
    2. 次の例のように、/etc/auto.cifs 設定ファイルを変更します。

      * -fstype=cifs,vers=2.1,sec=krb5,cruid=${UID},uid=${UID},gid=${GID},file_mode=0700,dir_mode=0700 ://205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/&

      次のリストは、主要なパラメータについて説明しています。値をご自身の実際の情報に置き換えてください。

      • cruid および uid:ローカルの usera1 ユーザーの ID。

      • gid:ローカルの usera1 ユーザーのグループ。

      • 205dee4****-uub48.us-west-1.nas.aliyuncs.com:マウントターゲットアドレス。

        NAS コンソールで、ファイルシステムリスト ページに移動します。目的のファイルシステムを見つけ、image..png アイコンをクリックします。表示されたリストで、マウントポイントのアドレス 列を見つけ、Mount target address.png アイコンにカーソルを合わせてマウントターゲットアドレスを取得します。

    3. autofs サービスを再起動します。

      systemctl restart autofs.service
    4. 自動マウント設定を確認します。

      ここでは、//205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/usera1 ディレクトリが作成済みで、ユーザー usera1 にフルアクセス権限が付与されているものとします。

      AD ドメインユーザーとしてログインした後、ls /share/usera1 コマンドを実行し、SMB ファイルシステムの usera1 ディレクトリ配下の内容を表示できれば、設定は成功です。

方法2:非ドメイン参加クライアントでのマウント

  1. Linux クライアントにログインします。

  2. AD サーバーに接続します。

    • Ubuntu

      1. AD 設定パッケージをインストールします。

        sudo apt-get -y install keyutils cifs-utils krb5-user
      2. DNS を設定します。

        1. 次のコマンドを実行して、DNS の自動更新を停止します。

          sudo systemctl disable systemd-resolved
          sudo systemctl stop systemd-resolved
        2. /etc/resolv.conf に AD サーバーの IP を追加します。

          # Generated by NetworkManager
          search example-company.com
          nameserver 172.19.0.61
        3. ping コマンドを実行して AD サーバー名に ping を送信し、接続を確認します。

          user1@myubuntu:/home$ ping example-company.com
          PING example-company.com (172.19.0.61) 56(84) bytes of data.
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.274 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.289 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.270 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.273 ms
          ^C
          --- example-company.com ping statistics ---
          4 packets transmitted, 4 received, 0% packet loss, time 3073ms
          rtt min/avg/max/mdev = 0.270/0.276/0.289/0.007 ms
    • CentOS

      1. AD 設定パッケージをインストールします。

        sudo yum install keyutils cifs-utils krb5-workstation
      2. DNS を設定します。

        AD サーバーの IP アドレスを /etc/resolv.conf に書き込み、デフォルトの DNS サーバーを削除します。ping コマンドを実行し、AD サーバー名に ping を送信して接続を確認します。

        [user1@mycentos root]$ ping example-company.com
        PING example-company.com (172.19.0.61) 56(84) bytes of data.
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.221 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.334 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.314 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.323 ms
        ^C
        --- example-company.com ping statistics ---
        4 packets transmitted, 4 received, 0% packet loss, time 3044ms
        rtt min/avg/max/mdev = 0.221/0.298/0.334/0.045 ms
      3. Kerberos を設定します。

        /etc/krb5.conf 設定ファイルに次の行を追加します。

            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        # To opt out of the system crypto-policies configuration of krb5, remove the
        # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
        includedir /etc/krb5.conf.d/
        [logging]
            default = FILE:/var/log/krb5libs.log
            kdc = FILE:/var/log/krb5kdc.log
            admin_server = FILE:/var/log/kadmind.log
        [libdefaults]
            dns_lookup_realm = false
            ticket_lifetime = 24h
            renew_lifetime = 7d
            forwardable = true
            rdns = false
            pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
            spake_preauth_groups = edwards25519
        #    default_realm = EXAMPLE.COM
            default_ccache_name = KEYRING:persistent:%{uid}
            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        [realms]
        # EXAMPLE.COM = {
        #     kdc = kerberos.example.com
        #     admin_server = kerberos.example.com
        # }
        [domain_realm]
        # .example.com = EXAMPLE.COM
        # example.com = EXAMPLE.COM
  3. ローカルユーザーアカウントを使用して、Kerberos チケット情報を取得してキャッシュします。

    1. 新しいローカルユーザーを作成し、そのユーザーの UID と GID を記録します。

      useradd usera1
      su - usera1
      id
      [root@iZrj9gqbtl7kefeqxxx ~]# useradd usera1
      [root@iZrj9gqbtl7kefeqxxx ~]# su - usera1
      [usera1@iZrj9gqbtl7kefeqxxx ~]$ id
      uid=1004(usera1) gid=1004(usera1) groups=1004(usera1)
    2. 新しいローカルユーザーとして、AD ユーザーの Kerberos チケットを取得します。

      kinit administrator@EXAMPLE-COMPANY.COM
      klist
      user1@iZrj9gqbtl7xxx          :~$ kinit administrator@EXAMPLE-COMPANY.COM
      Password for administrator@EXAMPLE-COMPANY.COM:
      user1@iZrj9gqbtl7xxx          :~$ klist
      Ticket cache: FILE:/tmp/krb5cc_1000
      Default principal: administrator@EXAMPLE-COMPANY.COM
      Valid starting       Expires              Service principal
      09/08/2021 05:47:53  09/08/2021 15:47:53  krbtgt/EXAMPLE-COMPANY.COM@EXAMPLE-COMPANY.COM
              renew until 09/09/2021 05:47:49
      user1@iZrj9gqbtl7xxx          :~$
  4. SMB ファイルシステムをマウントします。

    1. 必要なマウントツールをインストールします。

      • Ubuntu

        sudo apt-get install keyutils cifs-utils
      • CentOS

        sudo yum install keyutils cifs-utils
    2. 次のコマンドを実行して、ファイルシステムをマウントします。

      sudo mount -t cifs //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare /mnt -o vers=2.1,sec=krb5,cruid=1004,uid=1004,gid=1004  --verbose

      205dee4****-uub48.us-west-1.nas.aliyuncs.com をご自身のファイルシステムのマウントターゲットアドレスに置き換えてください。

      説明

      NAS コンソールで 転送中の暗号化を有効化 を選択した場合、vers=3.0 オプションを使用してファイルシステムをマウントする必要があります。

  5. 自動マウントを設定します。

    Linux クライアントの再起動後にファイルシステムを自動的にマウントするには、自動マウントを設定します。

    1. /etc/auto.master 設定ファイルに、次の行を追加します。

      /share    /etc/auto.cifs    --timeout=30 --ghost
    2. 次の例のように、/etc/auto.cifs 設定ファイルを変更します。

      * -fstype=cifs,vers=2.1,sec=krb5,cruid=${UID},uid=${UID},gid=${GID},file_mode=0700,dir_mode=0700 ://205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/&

      次のリストは、主要なパラメータについて説明しています。値をご自身の実際の情報に置き換えてください。

      • cruid および uid:ローカルの usera1 ユーザーの ID。

      • gid:ローカルの usera1 ユーザーのグループ。

      • 205dee4****-uub48.us-west-1.nas.aliyuncs.com:マウントターゲットアドレス。

        NAS コンソールで、ファイルシステムリスト ページに移動します。目的のファイルシステムを見つけ、image..png アイコンをクリックします。表示されたリストで、マウントポイントのアドレス 列を見つけ、Mount target address.png アイコンにカーソルを合わせてマウントターゲットアドレスを取得します。

    3. autofs サービスを再起動します。

      systemctl restart autofs.service
    4. 自動マウント設定を確認します。

      ここでは、//205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/usera1 ディレクトリが作成済みで、ユーザー usera1 にフルアクセス権限が付与されているものとします。

      AD ドメインユーザーとしてログインした後、ls /share/usera1 コマンドを実行し、SMB ファイルシステムの usera1 ディレクトリ配下の内容を表示できれば、設定は成功です。

cifsacl による SMB ACL の管理

getcifsacl コマンドと setcifsacl コマンドを使用して、SMB ファイルシステムの ACL を管理できます。例:

getcifsacl usera1/
usera1@example-company.com@myubuntu:/mnt$ getcifsacl usera1/
REVISION:0x1
CONTROL:0x8404
OWNER:S-1-5-21-2849381876-3817135681-4198507328-1107
GROUP:S-1-5-21-2849381876-3817135681-4198507328-513
ACL:S-1-5-21-2849381876-3817135681-4198507328-1107:ALLOWED/I/FULL
ACL:S-1-3-0:ALLOWED/OI|CI|IO|I/FULL
ACL:S-1-5-18:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-32-544:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-512:ALLOWED/OI|CI|I/FULL
sudo setcifsacl -a "ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL" usera1/
usera1@example-company.com@myubuntu:/mnt$ sudo setcifsacl -a "ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL" usera1/
usera1@example-company.com@myubuntu:/mnt$ getcifsacl usera1/
REVISION:0x1
CONTROL:0x8004
OWNER:S-1-5-21-2849381876-3817135681-4198507328-1107
GROUP:S-1-5-21-2849381876-3817135681-4198507328-513
ACL:S-1-5-21-2849381876-3817135681-4198507328-1107:ALLOWED/I/FULL
ACL:S-1-3-0:ALLOWED/OI|CI|IO|I/FULL
ACL:S-1-5-18:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-32-544:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-512:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL
usera1@example-company.com@myubuntu:/mnt$