Orenosp Installation and Readme file Version : 1.2.9 Orenosv.com http://www.orenosv.com/ 旧バージョンからのアップグレード (installer version) ---------------------------------------------------- - Orenospサービスを停止します。 - インストーラーを実行します。 - 必要なパラメータ変更があれば既存のsproxy.confを編集します。 - Manually update several files under ORENOSP_HOME/_intmenu if you are using SSLVPN. - If you are using unmodified files that were just copied from ORENOSP_HOME/padmin/_intmenu, you can do: [Windows] > cd > xcopy /s /e /i padmin\_intmenu _intmenu\ [Linux/MacOS X] > cd > cp -pR padmin/_intmenu _intmenu - If you are using modified files (i.e. you had modified html files under ORENOSP_HOME/_intmenu), you must selectively update files. Especially the following files should be updated: - padmin/_intmenu/vpn/tnapplet.jar - padmin/_intmenu/vpn/tnapplet-jdk15.jar [Windows] > cd > copy padmin\_intmenu\vpn\tnapplet*.jar _intmenu\vpn [Linux/MacOS X] > cd > cp -pi padmin/_intmenu/tnapplet*.jar _intmenu/vpn - Start Orenosp アップグレード注意点と前バージョンとの非互換性 ---------------------------------------------- New in 1.2.4 - TLS Server Name Indication to implement name-based HTTPS virtual servers. See Users Guide for details. As of 1.2.4, it is implemented as a separate openssl 0.9.8-based binary) New and Improved in 1.0.2 - Network monitor is improved. It is also supported on Linux. 変更の詳細一覧については、padmin/doc/changes.txtを参照ください。 Install ======= - Execute Orenosp Installer (orenospXXX.exe) and follow instructions. Decide which directory to install. This directory here after will be refered to as . - If "orenosp" service does not exist, the installer will ask if you want it to be created. Select yes. - If you missed the chance to create the orenosp service, start a command prompt (cmd.exe) and execute the following to create orenosp NT service: > cd > orenosp -kc orenosp [this should create a service named "orenosp"] If necessary, change service settings of Orenosp service. You can change them using Windows service applet. o startup : in new install, it is set to automatic. To chage the orenosp service setting so that it won't start when Windows starts: Open "Control Panel" from the Start button Click on "Services". On WinXP and Windows Server 2003, this is located in the "Administrative Tools" folder. Find the "Orenosp" entry and double-click it to edit. For "Startup type" change the value to "Manual" and Click "OK" o recovery : make sure the service is restarted automatically. Because orenosp dies fast in case of an internal error, it is important that the OS restarts orenosp automatically. Configuration Procedures ======================== - Sample Configuration Files - Basic Configuration and SSL certificate Setup - Quick Start for SSL Tunneling (Remote Desktop, VNC, etc) - Quick Start for Outlook Web Access Sample Configuration Files -------------------------- There are several configuration samples provided. 1) sproxy_easy.txt (in padmin/doc) A basic HTTPS->HTTP reverse proxy configuration, with no user authentication or access control at the reverse proxy level. 2) sproxy_fmauth.txt (in padmin/doc) In addition to 1), it adds a) Form-based authentication and authorization at the reverse proxy level, b) SSL Tunneling with the form-based authentication and authorization, c) Proxy monitor and Network monitor 3) OWA-specific configurations (four variations in padmin/doc) For use with Outlook Web Access 2003 or 2000. Please see "Outlook Web Access (OWA)" section in Orenosp Users Guide (guide_en.txt). 4) Load-Balancer configuration (padmin/doc/sproxy_lb_1.txt) If you want to use Orenosp as a pure software load-balancer for HTTP/HTTPS and other simple TCP applications (LDAP, etc), use this file. You can choose one of these and copy it as ORENOSP_HOME/sproxy.conf. In a new install, sproxy_easy.txt is already installed as sproxy.conf. e.g., > copy padmin\doc\sproxy_fmauth.txt sproxy.conf With any of these, please be sure to first complete the following section "Basic Configuration and SSL certificate Setup" to correctly set up a valid SSL certificate and key. Basic Configuration and SSL certificate Setup --------------------------------------------- まず最初にSSL証明書を正しくセットアップするために、デフォルトの 設定ファイル(sproxy.conf)を使うことができます。 - 電子証明書を用意する。 3つの方法があります。 1) Orenosp付属のテスト用証明書を使用する LAN内でSSLのテストをするときのみ使用してください。 この場合、Orenosp付属の証明書をそのまま使いますので追加作業は 必要ありません。 2) 自己署名した証明書を使用する(プライベートCA) 正確には「自己署名した証明書を使う」ではなく「独自作成したCAに よって署名されたサーバ証明書を使う」です。 個人サーバーの場合はこれで足りると思います。 世間で説明されているSSLよりは少しセキュリティの強度が低くなりますが、 運用の仕方次第である程度改善できます。 付属のgencertを使えば簡単にCAとサーバ証明書を作成しサーバに インストールできます。 大まかな手順は以下のとおりです。 - プライベートCAを構築する (CAの秘密鍵と自己署名したCA証明書を作成)。 - 続いてサーバ用証明書+秘密鍵を作成する。 この時に指定した秘密鍵のパスフレーズが後で必要になります。 - サーバの証明書と秘密鍵をPEM形式(テキスト)に変換します。 証明書はPEMでなくDER形式でもかまいません。 - 変換した証明書をserver.crtと名づけ以下の場所に配置します。 /ssl.crt/server.crt - 変換した秘密鍵をserver.keyと名づけ以下の場所に配置します。 /ssl.key/server.key - サーバの秘密鍵のパスフレーズをsproxy.confに書き込みます。(下記参照) - [オプショナル] プライベートCAのCA証明書をユーザのブラウザに インストールする。 証明書を作成・管理できるプログラムはいくつかあります。 a) [単純な環境ではお勧め] Orenosp付属のgencertを使う gencertの場合上記手順を殆ど自動的にやってくれます。 >gencert -gen <> <<サーバのDNS名や証明書の有効期限などの証明書に関する情報を入力>> <<サーバの秘密鍵にパスワードをつける>> <<既存の証明書と秘密鍵を、生成したもので上書きするか聞いてくるのでyと 入力>> gencertの詳細に関してはgencert.txtを参照。 なおユーザのブラウザにインストールすべきCA証明書は /myca/cacert.pem です。 b) Kousec Server Certificate Manager - Basic Edition プライベートCA機能をもち、自己発行証明書・商用CA証明書の両方を統一管理 できるツールです。 http://www.kousec.com/prod_cm_ja.html c) openssl.exeというコマンドラインツールでも作成できます。 opensslを使った方法に関してはcertmem_en.txtを参照してください。 d) EasyCertというWindowsアプリケーション (http://www.vector.co.jp/soft/win95/util/se144009.html, http://mars.elcom.nitech.ac.jp/Research/MM/security/) 現時点では有効期間の制限あり版しか入手できないので説明は割愛します。 参考にEasyCertを用いた手順についてはcertmemo_jp.txtに残してあります。 3) 商業CAによる証明書を使用する 商業利用する場合はぜひこれをお勧めします。 証明書申請の手続きはApache+modsslと同様です。 具体的手順はdoc/certvendor_en.txt(英語)に記述しています。 コンパイル済みOpensslユーティリティをOrenospウェブサイトに用意 していますのでご利用ください。 証明書ベンダーは証明書を以下のどちらかの形式で送ってきます。 - PEM (Eメールテキストに貼り付けられたテキスト形式) - DER (Eメールに添付されたバイナリ形式、cert.cer など) Orenospは両方の形式をサポートしています。 PEMもしくはDER形式のサーバ証明書を/ssl.crt/server.crtとして コピーします。サーバ秘密鍵を/ssl.key/server.keyとして コピーします。 PKCS#12 Support: You can also use a PKCS#12 file that contains 1) CA's cert, 2) server's certificate, and 3) corresponding private key for 2). Use the following parameter: # server.cert in either PEM or DER, server.key in PEM format: # proxy_ssl_mycertstore = file ssl.crt/server.crt ssl.key/server.key # # PKCS#12 file proxy_ssl_mycertstore = file-p12 ssl.key/server.p12 [方法2を使う場合のセキュリティ上の考慮] SSH(電子証明書を使わない実装)と同様に、man-in-the-middle攻撃に対して 脆弱です。詳しくは selfca.txt 参照。 [自宅サーバ用証明書を作成する際の注意] もともとサーバ証明書はECサイトなどでサーバの身元を保証するという 役割もあり、証明書に正確な証明書保持者情報(所属組織、識別名、名前等)を 記入するようです。 しかしサーバのIPアドレスさえわかれば誰でもこの証明書保持者情報と 発行CAの情報をサーバの証明書から得られます。したがってプロバイダの 動的IPを使って一般公開しない自宅サーバの証明書を作成する際(方法2)、 できるだけ個人情報を記入せずに作る、というのも一手だと思います。 - 必要であれば設定ファイル sproxy.conf を編集します。 もっとも一般的な以下の設定の場合、パスフレーズを除き設定ファイルを 編集する必要はありません。 o ポート443(HTTPSの標準ポート)でSSL接続を受け付ける o HTTPSのリクエストをすべてhttp://localhost/ にフォワードする。 o その他設定はデフォルト 最後に秘密鍵生成時のパスフレーズを sproxy.conf の以下のパラメータに 設定します。 proxy_ssl_keypass = <パスフレーズ> Orenosp付属のテスト用秘密鍵を使う場合、パスフレーズはorenospとなります。 パスフレーズを設定ファイルに書き込まずにサービス起動時に毎回キーボード から入力することもできます。(次セクション参照)。 ORENOSP_HOME/padmin/doc/sproxy_full.txtにすべてのパラメータとその説明が コメントアウトされた形で記述されています。 ほかのサンプル設定ファイルもあります: ORENOSP_HOME/padmin/doc/sproxy_owa.txt : for Outlook Web Access (Orenosp Users Guideの"Outlook Web Access"を参照) サンプル設定ファイルを選びそれをORENOSP_HOME/sproxy.confとしてコピーし そのファイルからはじめます。 - Orenosp サービスを開始します 以下のいずれかのコマンドでorenosp NTサービスを開始します。 >net start orenosp もしくは >orenosp -cu このサービスがSSL Reverse Proxyとして動作します。 起動に失敗した場合は/event.logをチェックします。 パスフレーズをsproxy.confに書き込まず起動時にキーボードから入力したい場合は、 orenospサービス開始時にパラメータとしてパスフレーズを渡します。 "NET START"コマンドではパラメータを指定できません。 下記コマンドもしくはサービスアプレットなどを使う必要があります。 orenosp -cu 例 > orenosp -cu orenosp pass-phrase - ブラウザからOrenospにアクセスする サービスが起動に成功したならばブラウザでhttps://localhost/を開いて みてください。 -- サーバの証明書が自分のプライベートCAで発行したものの場合 -- ブラウザは、「この証明書は信頼できない」という主旨の警告ウィンドウを 出します。そこではOKを押して先に進んでも暗号化は行われています。 各ユーザのブラウザにこのプライベートCAの証明書を「信頼するCA」として 登録するとこの警告は出なくなります。 CAの証明書を".cer"という拡張子に変更して、ホームページからアクセスできる ところに配置しユーザにその証明書をインストールするように薦めてください。 gencertの場合 copy \myca\cacert.pem \ca.cer EasyCert (see certmemo_jp.txt) copy C:\Program Files\Easy Cert\\ca.cer \ca.cer Openssl (see certmemo_en.txt) copy demoCA\cacert.pem \ca.cer - イベントログ /event.log に開始・終了・エラーメッセージが出力されます。 - アクセスログ /access.logにCommon Log Formatでアクセス履歴が記録されます。 書式はproxy_log_access_fmtパラメータで変更できます。 - バックエンドWebサーバの設定変更 うまく動作することが確認できたら、もともとのWebサーバの設定を変更 することも可能です。 o セキュリティ向上のため、非SSL接続はOrenospからしか受け付けない ように設定する。 o CGIプログラムで、SERVER_NAME,SERVER_PORTなどの変数値を使ってURLを 作るスクリプトを修正する、など。 - Orenosp サービス設定の変更 必要であれば管理ツールのサービスアプレットを使用して変更します。 o 「回復」: サービスがエラーで終了した場合の対処をしていできます。 ここで「サービスを再起動」を選びます。 Orenospは内部エラーが発生すると即時にエラー終了するようになっています。 これは内部の不整合が起きたまま実行を続けるとハングといったさらに やっかいな障害になるのを防ぐためです。 o 「スタートアップ」の種類を「自動」にする。 - Orenospサービスの終了 "NET STOP"コマンドや"orenosp -cd"コマンドでサービスを終了できます。 Notes about Interoperability with IIS ------------------------------------- See "Interoperability Tips with IIS" in Orenosp Users Guide. Quick configuration for HTTP compression ---------------------------------------- sproxy.conf内で以下の行を見つけて行頭の"#"を削除し有効にしてください。 #proxy_filter_define = comp-txtonly mod_filt_zlib mtype="text/" #proxy_filter_assign = * comp-txtonly Quick Start for SSL Tunneling (Remote Desktop, VNC, etc) ======================================================== Once you have the basic setup up and running, start with "Practical Sample Configuration" (tunnel/sampleconfig_en.txt). Quick Start for Outlook Web Access (OWA) ======================================== See "Outlook Web Access" in Orenosp Users Guide. Quick Start for Simple Packet Relay =================================== If you want to expose services other than HTTP/HTTPS like POPS or IMAPS that don't require extra security measures, you can add a simple packet relay. --- add these lines to sproxy.conf --- # relay IMAPS traffic on 9993 to mailhost:993 tunnel_enable = 1 tunnel_listen_name = lis-imaps 0.0.0.0@9993 raw tunnel_dest_name = mailhost-imaps mailhost:993 raw tunnel_pass_by = lis lis-imaps mailhost-imaps --- end --- For more information about tunneling and packet relaying, see SSL Tunneling Guide (padmin/doc/tunnel/ssltunnel_en.txt). Other Documentation =================== How to secure your server ------------------------- SSLだけ使用してもサーバを守ることはできません。 単なるSSLのみだとクライアントサーバ間のパケットを覗き見を防ぐだけです。 それに加えてパスワード等を用いたクライアント認証が必要です。 パスワード認証・IP認証(Orenospでは未サポート)・SSLクライアント証明書認証 といったものと組み合わせて使用してください。 なお、パスワード方式はSSLを使わない時と同じくパスワードアタック される可能性があります。IPアドレスはSSLを使っても偽装することが可能です。 SSLクライアント証明書認証の設定方法についてはユーザーズガイドを 参照してください。 ドキュメント ----------- /padmin/doc 配下にあります。 guide_jp.txt : Orenospユーザーズガイド changes.txt : 変更履歴 certmemo_jp.txt : EasyCertを用いたCA構築手順等。 certmemo_en.txt : Openssl用いたCA構築手順等(英語)。 gencert.txt : manual for gencert sproxy_full.txt : 全パラメータの説明があります。複雑な設定を行う場合、 このファイルを/sproxy.confとしてコピーし使用してください。 sproxy_easy.txt : 初期インストール時にsproxy.confとして使用される ファイルです。 tunnel/ssltunnel_en.txt : SSL Tunneling Guide tunnel/sampleconfig_en.txt : Practisal Sample Configuration コマンドラインオプション ------------------------ orenosp.exeへのコマンドラインオプション -v Orenospや含まれる他のライブラリのバージョンを表示 -kc [svcname [-f adm-cfname]] svc utility mode - create service -kd [svcname] svc utility mode - delete service -cu [svcname [options]] svc utility mode - start service -cd [svcname] svc utility mode - stop service -cr [svcname [options]] svc utility mode - restart service Uninstall --------- - サービスを停止します。 - Orenospサービスを削除します。 > cd > .\orenosp -kd - ORENOSP_HOMEディレクトリからプログラム等を削除します。 Duplicate Uninstall Entries --------------------------- Due to an installer bug in versions from 0.5.0-preX to 0.7.2-preX, you may have one ore more duplicate "Orenosp Secure Reverse Proxy" entries in "Add or Remove Programs" Control panel applet. This does not cause any harm but you may want to take the following action to delete those duplicates. - Open the Windows registry key : HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall - Remove the following registry keys if one exists Orenosp05x Orenosp07x Installing a Second Instance of Orenosp --------------------------------------- If you need another instance of orenosp, you can have a second instance by installing to another directory. Or you can manually copy over all files in the first instance to the second. Note that on a upgrade install, not all files are installed, preserving some existing files that users may have modified. So if you want a fresh install of second instance, install to a new directory. Installing mutltiple times in this way will not cause any inconsistencies in GUI installs. The only important thing the GUI uninstaller does is remove its entry from Windows "Add or Remove Programs" control panel. バグ・制限事項 ============== EOF