hcpdサーバ 特権分離有効時に大きなUID値を持つユーザが存在すると、認証時にユーザが見つからないとエラーが発生したり、アクセス権が別のアカウント(特権含む)と誤認識されてしまう現象が見つかりました。
再現条件に該当する場合は、後述の暫定処置を行うか速やかにアップデートを行ってください。
対象製品
Archaea tools ver.1.4.5以前の製品
HCP tools ver.1.3.5以前の製品
現象
hcpdサーバで特権分離を有効にしている場合に、システムアカウントにUID値が符号なし16bit整数の最大値(65535)を超えるユーザが存在すると、認証を行ったときにユーザが見つからないとエラーになったり、アクセス権が別のアカウントと誤認識されてしまう事象が発生してしまう。
再現条件
- hcpdコマンド
- 特権分離を有効にしていること
- システムにUID値が65535を超えるユーザが存在していること
- 当該ユーザがログインを行えること
- 同ログインが成功すること
但し、AllowUsers/DenyGroups又は/etc/hcp/usersの設定により当該ユーザのログインが拒否される、hcpdデーモンが非特権ユーザの権限で待機している、場合は除く
暫定処置策
- AllowUsers/DenyUsersを使用して該当するユーザ(UIDが65536以上)のアクセスを一時的に許可しないように変更する。
- 該当するユーザ(UIDが65536以上)を/etc/hcp/usersで一時的にアクセス拒否に変更する。
- /etc/hcp/usersを定義(define)モードに変更して、一時的に特定のユーザ(UIDが65535以下)だけログインを許可する。
- PrivilegeSeparationMinimumUIDで一時的に特権アクセスを制限する
- hcpdデーモンを非特権で使用する。
※拒否設定すべき人数が少なく、記述することが許容できる場合。
例:
[/etc/hcp/users]
!user_affected::::: # '!'を先頭に記述するとログイン拒否
※全体の利用人数が多くないなど、記述することが許容できる場合。
例:
[/etc/hcp/hcpd.conf]
LocalUserFile /etc/hcp/users define
[/etc/hcp/users]
user_still_available1:::::
user_still_available2:::::
# 影響を受けるユーザ 'user_affected' を記述しない
※AllowUsers/AllowGroupsを使用している場合は、排他的に働くためAllowUsers/AllowGroupsを解除する必要があります。
ホームディレクトリが所有者のみ読書可能としている場合に効率的に制限を掛けることができます。
例:
[/etc/hcp/hcpd.conf]
PrivilegeSeparationMinimumUID 1
PrivilegeSeparationMinimumGID 1
※特定のユーザのみが利用しているような場合。
アップデートについて
サーバ及びクライアント共に、rpmコマンドに-Uオプション(Ubuntuの場合はdpkgコマンドの-iオプション)を付けてアップデートを行います。
コマンド例:
rpm -Uvh bytix-archaea-tools-server-1.4.6-2.el9.x86_64.rpm
アップデート手順の詳細については、下記のオンラインドキュメントのアップグレードの項目を参考にしてください。
サーバセットアップ Red Hat Enterprise Linux (RHEL) アップグレード
サーバセットアップ Ubuntu アップグレード
クライアントセットアップ Red Hat Enterprise Linux (RHEL) アップグレード
クライアントセットアップ Ubuntu アップグレード
また、設定周りに関する変更はなく、アップデートにあたり設定などの確認などは不要です。
注意事項
特段の事情がない限り、サーバ・クライアントともにアップデートをお願いします。
サーバのみアップデートを行った場合は、hsyncコマンドでクライアントがファイルを受信する場合に、1件該当する修正内容が適用されません。
当該修正についてはリリースノートでご確認ください。