電子書籍の厳選無料作品が豊富!

こんにちは。


Windowsのコマンドプロンプトから、Linuxに対して
rshにてコマンドを実行させようとしています。

セキュリティの観点からrshでは問題ありと思い
rbashを使用してみようと下記設定をおこないましたが
期待している動作になりません。

Linux側設定

1)シンボリックリンクを設定
# ln -s /bin/bash /bin/rbash

2) /home/ohenryに.rhostsを記述
(Windowsマシンのコンピューター名 hoge_win )
hoge_win Administrator

3) /home/ohenry/.bash_profileの属性変更
#chown root /home/ohenry/.bash_profile
#chgrp root /home/ohenry/.bash_profile
#chmod 755 /home/ohenry/.bash_profile

4) /etc/passwd編集 ユーザのログインシェル設定
ohenry(中略)/bin/rbash

5) /home/ohenry/.bash_profile編集
PATH=$HOME/bin
export PATH

6) /home/ohenry/bin下にコマンドコピー
# cp /bin/date /home/ohenry/bin/date

(これでdateしか実行できないはず)


Windows側

rsh hoge_linux -l ohenry ls /

dateしか実行できないはずなのですが
ls結果が表示されてしまいます。

rsh hoge_linux -l ohenry
(password?)*****
とログインしてしまったあとはrbashの期待通りに
動作します。

ログインしないコマンドラインからの実行で
rbashの制限を有効にすることはできますでしょうか?

だらだら書いてしまい申し訳ありませんが
どなたかお助けください。

A 回答 (3件)

ログインしてないので、.bash_profile を読まないのでしょう。

.bashrc に書けばいいと思います。
逆にログインしたときは、.bashrc は読みません。
    • good
    • 0
この回答へのお礼

真にありがとうございます。
おっしゃるとおりでした。

.bashrcに
PATH=/home/ohenry/bin
export PATH

と記述してあげれば、

C:\>rsh hoge_linux -l ohenry set

前略
PATH=/home/ohenry/bin
後略

と表示され、
C:\>rsh hoge_linux -l ohenry ls
rbash: line1:ls:command not found

C:\>rsh hoge_linux -l ohenry date
Thu Mar 30 22:19:26 JST 2006

とdateのみ実行できることを確認できました。
ありがとうございました。

お礼日時:2006/03/30 22:39

本当に設定が効いているのでしょうか?



rsh hoge_linux -l ohenry set
とかで、PATHがどう設定されているかなど、調べてみたらどうでしょう?

rshでpsコマンドを動かして本当にrbashが動いているのかを確認してみるのも有用です。
    • good
    • 0
この回答へのお礼

a-saitoh様

真にありがとうございます。
おっしゃるとおりでした。

rsh hoge_linux -l ohenry set
前略
PATH=/usr/bin:/bin
後略

と表示されます。
ログインしていないために.bash_profileを読んで
いないのではとのアドバイスをいただき
.bashrcにPATHを記述することで
解決しました。

お礼日時:2006/03/30 22:42

これって, 「date しか実行できない」ようになっているんですか?


$PATH で列挙されたディレクトリにあれば実行できるのは変わらないような気がするんですけど....
    • good
    • 0
この回答へのお礼

Tacosan様

ありがとうございます。
$PATHは/home/ohenry/binのみに
設定できているものと思っていましたが
なっていなかったことが原因でした。

お礼のみになって申し訳ありません。

お礼日時:2006/03/30 22:46

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