パスワード入力をバイパスすることが予想される問題に直面したActiveDirectory結合用のBashスクリプト

パスワード入力をバイパスすることが予想される問題に直面したActiveDirectory結合用のBashスクリプト

この内容を先に説明します。悪い習慣ただし、とにかく、仮想マシンテンプレートのvRAに存在するスクリプトにsvcアカウントの資格情報を保存するように求められます。私にとってはオプションではありませんが、ユースケースのためユーザー入力はできません。現在の見積もりを使用してsvcアカウントのパスワードを送信しようとしています。プロンプトが表示され、スクリプトはエラーなしで完了しますが、ドメインに参加しません。資格情報セットを変数として送信するかどうかはわかりません。

#!/bin/sh

yum -y install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients python3-policycoreutils expect

OU="OU=Computers,OU=Object Staging, DC=test,DC=acme,DC=com"

echo "OU selected is: $OU "

export OU

expect -c '

set OU "Computers,OU=Object Staging, DC=test,DC=acme,DC=com"

set PASS bugsBunny

spawn sudo realm join --user=svc-domainJoin --computer-ou="\$OU" test.acme.com ;

expect "Password for svc-domainJoin:"; send {"$PASS"\r\"; interact } ;
'
realm list

また、期待せずにこのスクリプトを実行すると(およびユーザー入力)、ゾーンリストの出力は表示されません。

ベストアンサー1

あなたは必要ありませんexpect。次のコマンドはSTDINから直接パスワードを受け入れます。

OU="Computers,OU=Object Staging, DC=test,DC=acme,DC=com"
PASS=bugsBunny
printf "%s\n" "$PASS" |sudo realm join --user=svc-domainJoin --computer-ou="\$OU" test.acme.com

以前は、このバックスラッシュが必要ではなかった可能性があります。OU

printf "%s\n" "$PASS" |sudo realm join --user=svc-domainJoin --computer-ou="$OU" test.acme.com

おすすめ記事