[Security]意外と難しいファイル転送
要件は「ファイル転送したい」だけなんだけど、
- 暗号化は必須
- ユーザの特定も必須
- 必要最低限の操作権限だけ与えて、操作を行うこと。
という難関の制限がついた場合、安く仕上げるにはどーすりゃいいんだ?
ちょっとまとめて見る。
FTP
これは暗号化できないからNG
WebDAV + HTTPS + Basic認証
いけるんだけど、Windowsクライアントのバグなのか仕様なのかわからんけど、ファイルコピーしてるのに、移動になってるときがあって、ファイルがを無くしちゃうケースがあったりするからやりたくないとの要望。
SFTP
WinSCPにSCPとの比較が書いてあった。これならよさげか?
http://www.tab2.jp/~winscp/protocols.html
でもサーバ側はポート番号22なんだよね。PAMの設定とか使ってSSHによるログインを不可にするしかないのかな?
あと、chrootしてjail構造にもしないとなぁ。でも調べると、パッチ適用が必要って言うし・・・あ。 scponlyとrsshなんてあるんだ。
scponly
http://www.kunitake.org/xoops/modules/xfsection/article.php?page=1&articleid=51
http://www.sublimation.org/scponly/
これなら出来るかも。しかもrsyncの同期も可能っていうならなおうれしいし。
rssh
http://sourceforge.net/projects/rssh
http://www.sdri.co.jp/rssh/index.html.ja
現在のところ、(殆んどの) *BSD システムと MAC OS X では動作しない。 rssh がコマンドライン引数を展開するのに利用している wordexp() 関数が無いためである。 この関数(POSIX.2 で定義されている)を持つようになるか、動かない部分の代替を書くのに十分なぐらいに私が退屈になるまでは、rssh は BSD なマシンでは動作しない。
これはチェックしないと。。。