プロが教えるわが家の防犯対策術!

expectを用いてPWの自動入力方法は知っているのですが
今度使用するサーバーにexpectコマンドがインストールされていません。
su -u user -c command
をシェル内で使用したいのですが、もちろんuserは他ユーザなのでPW入力を求められます。
何か逃げてとなるexpectコマンド以外で良い方法ありませんか?

A 回答 (5件)

私のシステム開発及びサーバ構築する経験上、サーバ管理者に設定方法より目的を提示されたほうがより良い答えが見つかるかもしれません。



No.3さんがセキュリティ及びサーバを本当に理解されて記載されているのか不明です。

技術的なセキュリティ対策はサーバ管理者にお任せすればいいと思います。
    • good
    • 1

sshは、ソースのコンパイル又はバイナリをインストールです。

expectのインストール及びNo1さんの方法を含め検討した方がいいかもしれませんね。
    • good
    • 0
この回答へのお礼

有難うございます。
SSH等のインストールに関してはサーバー管理者と相談してみます。

お礼日時:2006/06/13 10:28

expect の場合はどこかにパスワードの平文が書かれていることが前提となるでしょうから、suid よりもさらに危険です。

suid であれば、そのプログラムにセキュリティホールがない限り、そのプログラムおよびサブ・プログラム以外のプログラムが user 権限で実行されることはありません。

SSH や SSL についても、キー・ファイルを su を実行するユーザが持っていることが前提ですので、セキュリティ的には expect と何ら変わりはありません。そもそも、SSH や SSL はリモート接続するために使用するものですので、ローカル接続ではあまり意味を成しません。

ちなみに、Linux には sudo というコマンドがありますので、このソースコードを改変して AIX に移植するとそれなりのセキュリティを維持できるかもしれません。(コンパイラなどの開発環境と高度なプログラミング技術が必要になるでしょうけど)

> ssh大変興味深いですね、ただ私の使用しているOSが
> AIXなのでsshがありません。Linuxのみですか?

オープンソースなので、開発環境があれば自分の環境でコンパイルして利用できると思います。(AIX に対応しているかどうかまでは分かりません)
    • good
    • 0
この回答へのお礼

有難うございます。確かにExpectを使用する際にShell内にパスを書くのでセキュリティ上問題がありますね、ファイルのパーミッションを操作するくらいしか保護できませんし・・
suid、検討してみます。

お礼日時:2006/06/13 10:27

似たような事例を少し複雑になりましたがsshでおこないました。


しかし、時間の経過と共に設定内容を忘れていくので・・・
expectを利用(install)したシンプルな設定方法がお勧めです。

参考URL:http://www.atmarkit.co.jp/flinux/rensai/linuxtip …

この回答への補足

回答有難うございます。
ssh大変興味深いですね、ただ私の使用しているOSがAIXなのでsshがありません。Linuxのみですか?
この件とは別にsshに関しては調べてみようと思います。

補足日時:2006/06/12 15:04
    • good
    • 2

結論から言えばコマンドで逃げ手となる手段はないと思います。

セキュリティを犠牲にしてもよいのであれば、suid を使えば良いかともいます。

chmod u+s command
chown (exec-user) command

これで実行すれば、そのコマンドは exec-user 権限で実行されるでしょう。
    • good
    • 0
この回答へのお礼

お礼が凄く遅くなって申し訳ございません、回答有難うございます。
セキュリティは犠牲にできませんのでコマンド自体のパーミッションは変更できないんです。そこでexpectをっと考えていました。

お礼日時:2006/06/12 15:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A