sudo globalprotect CLIコマンドがUbuntuでクライアント証明書をインポートしない

sudo globalprotect CLIコマンドがUbuntuでクライアント証明書をインポートしない

5151
Created On 12/21/23 18:48 PM - Last Modified 02/02/24 05:43 AM


Question


ログインしているユーザーがUbuntu / LinuxのGPアプリにクライアント証明書をインポートしたいのですが、 コマンドsudo globalprotect を実行すると、証明書がインポートされず、スタックし、結果が得られません。
 
$ sudo globalprotect import-certificate --location ~/cert_Client-Cert.p12
[sudo] password for user1:
Please input passcode:


 


Environment


GlobalProtectアプリ
Ubuntu / Linux


Answer


GlobalProtectには、ユーザーコンテキストで実行される PanGPA という名前のプロセスがあります。 たとえば、user1としてログインした場合、PanGPAはuser1コンテキストで実行されます。

~$ id
uid=1000(user1) gid=1000(user1) groups=1000(user1),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),116(lxd)

$ ps -ef | grep PanGPA
user1     375660  375651  0 18:02 ?        00:00:00 /opt/paloaltonetworks/globalprotect/PanGPA start

 

~/の下のPanGPA.log。GlobalProtect/ディレクトリには、実行中のPanGPAのプロセスID(pid)と、実行しているユーザーのuidが表示されます
 

P375660-T1160189760 12/21/2023 18:02:24:791 Info ( 236): ################### main - PanGPA started. pid = 375660. #################
#
P375660-T1160189760 12/21/2023 18:02:24:791 Debug( 163): Current login user is user1.
...
P375660-T1160189760 12/21/2023 18:02:24:913 Debug(2348): SetupDBusEnv: UID                      = 1000


PanGPAは、同じユーザーコンテキストで実行されているglobalprotect CLIコマンドを受け入れ、uidを検証します。
globalprotect コマンドが別のユーザー コンテキストで、または sudo (uid 0) として実行されると、コマンドは失敗またはスタックし、PanGPA.log にエラーが表示されます
 

- Command run as sudo
$ sudo globalprotect import-certificate --location ~/cert_Client-Cert.p12 
[sudo] password for user1: 
Please input passcode:

- PanGPA.log
P375660-T1048561408 12/21/2023 18:33:33:785 Debug(1011): GpiCommandProc - received message: <request><type>import-certificate</type><uid>0</uid><client-cert-path>/home/user1/cert_Client-Cert-2.p12</client-cert-path><client-cert-passcode>********</client-cert-passcode></request>
P375660-T1048561408 12/21/2023 18:33:33:786 Debug( 217): handleUIData - uid did not match gpi's uid. return.
 


結論: 動作は予期されるものであり、設計に従って、PanGPAが実行されているのと同じユーザーコンテキストで globalprotect CLIコマンドを実行してください
 



Additional Information


GlobalProtect管理者ガイド:Linux用GlobalProtectアプリをダウンロードしてインストールする

Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000XhM4CAK&lang=ja&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language