スクリプトに機能を追加して、kerberos 認証を使用して自動的に実行し、実行時に安全なプロトコルを使用できるようにしています。私は自分の機能をシェル スクリプトで動作させていますが、これは perl を初めて使用するため、perl スクリプト内で動作するように perl に移植する際に問題があります。これが私の作業シェルコードで、perlで同じ機能を取得しようとしています:
#!/bin/sh
ticketFileName=`basename $0-$$` #set filename variable to name of script plus the PID
krb5CacheLocation=/tmp/$ticketFileName #set ticket cache location to /tmp + script name
/usr/share/centrifydc/kerberos/bin/kinit -c $krb5CacheLocation -kt /root/.ssh/someaccount.keytab someaccount #get TGT and specifiy ticket cache location on kinit
export KRB5CCNAME=$krb5CacheLocation #set the KRB5CCNAME variable to tell ssh where to look
私がperlで試みたこと:
#!/usr/bin/perl
my $ticketFileName = `basename $0-$$`;
my $krb5CacheLocation = '/tmp/'.$ticketFileName;
`export KRB5CCNAME=$krb5CacheLocation`;
`/usr/share/centrifydc/kerberos/bin/kinit -c $krb5CacheLocation -kt /root/.ssh/someaccount.keytab someaccount`;
OSコマンドで参照している渡された変数が気に入らないようです。アイデアや提案はありますか?