CentOSサーバーがあり、ユーザーとしてログインしました。ジェンキンスただし、ユーザー名は次のように表示されます。根変えるジェンキンス
[root@centos-7-1 ~]# sudo su - jenkins
Last login: Sat Jul 14 20:21:16 UTC 2018 on pts/0
[root@centos-7-1 ~]# hostname
centos-7-1
sudoersファイルをチェックしてこれを見つけましたが、これが問題に関連しているかどうかわかりません。
[root@centos-7-1 etc]# cat group | grep jenkins
jenkins:x:993:
[root@centos-7-1 ~]# grep jenkins /etc/passwd
jenkins:x:996:993:Jenkins Automation Server:/var/lib/jenkins:/bin/false
[root@centos-7-1 ~]#
whoami
ユーザー切り替え後に実行すると、次の結果が表示されます。
[root@centos-7-1 ~]# su - jenkins
Last login: Sat Jul 14 20:33:18 UTC 2018 on pts/0
[root@centos-7-1 ~]# whoami
root
答え1
ああ、それは簡単です。カスタマイズjenkins
は/etc/passwd
次のとおりです。
jenkins:x:996:993:Jenkins Automation Server:/var/lib/jenkins:/bin/false
と書かれた最後の項目を参照してください/bin/false
。 jenkinsユーザーに定義された有効なシェルがないため、セッションはすぐに終了して開始したルートシェルに戻ります。
答え2
/bin/false
ユーザーのログインシェルは、ユーザーが一般的な手段を介してシステムにログインするのを防ぐためです。この設定はセキュリティ対策なので変更したくありません。ターゲットユーザーに切り替えるときは、別のシェルを要求してください。
sudo su -s /bin/bash jenkins
つまり、本物ユーザーとしての対話型シェルセッションが必要ですjenkins
。ユーザーに実際のログインシェルがないため、次のようになります。実際、このユーザーを対話的に使用しないでください。正常動作中。