SSH のポート一時オープン設定

概要

SSH で家のサーバに繋ぎたいけど、普段からあけっぱなしにはしたくないので、一時的に利用するホストに対してのみフィルタを解除するような仕組みを作った。
最初はメールでやろうと思ったのですが、メール本文を解析するロジックを作るのが大変そうなので、それより環境変数でもらえるウェブのCGIにしてしまいました。

方針

環境変数 REMOTE_ADDR を使って相手の IP アドレスをもらう。
HTTP 基本認証を使って認証を行う
SSL を使用する
CGIではforkを使ってコマンドをバックグラウンドで実行する
設定コマンドはなるべく簡素に<バグを少なくするため
構築コストはなるべく少なく<適当と言うことでw

設定内容

ポートフィルタリングの設定・解除を自動で行うコマンドの作成。C言語 opensshport.c(869)
sudoの設定をして、このコマンドを Apache が root 権限で実行できるように。
コマンドを実行するCGI。Perl opensshport.cgi(988)
Apacheの設定(SSL等)


  • opensshport.c 前回のバージョンにはバグがありました。
    すべてのポートが空いてしまうという(苦笑 - SRV (2004/06/16 10:28.23)

メモ書き

LastModified:2004/06/16 10:29.31

トップ 差分 一覧 ソース 検索 RSS ログイン