PostfixとExchangeでインターネット接続

  Exchangeを使ってインターネットメールの環境を構築する場合、Exchangeサーバ自体はインターネットに晒したくない。 Exchangeと既存のSMTP環境の連携手順はあまりネットでみつからなかったので、メモとして記載。 以下、手順を試した際の仮想要件。 ・会社のドメイン名はmiracosta.co.jp ・インターネット側の既存SMTPとして、CentOSベースのPostfixを利用 ・内部ネットワーク上にActive DirectoryとExchangeの環境構築済み ・メールアカウントとメールボックスの管理はActive DirectoryとExchangeで行なう ・Active Directoryのドメイン名はds.miracosta.co.jp ・Postfixはインターネットから受信したメールをExchangeにリレー ・Exchangeはインターネット向けメールをPostfixにリレー ■Postfix側の設定 main.cfの主な設定は以下。スパムの制御やSMTPアクセス制御は省いたので注意。 myhostname = gateway.ds.miracosta.co.jp mydomain = miracosta.co.jp ←リレーしたいメールのドメインを指定 myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost ←$mydomainは含めない mynetworks_style = subnet mynetworks = , 127.0.0.0/8 relay_domains = miracosta.co.jp ←リレーしたいメールのドメインを指定 relay_recipient_maps = hash:/etc/postfix/relay_recipients transport_maps = hash:/etc/postfix/transport ←デフォルトのmain.cfにはないので追記 /etc/postfix/transportの末尾にリレーしたいメールのドメイン名とリレー先を指定。 # TRANSPORT(5) TRANSPORT(5) # #.

ドメインコントローラの時刻同期

  PDCエミュレータの役割を持つドメインコントローラをセットアップすると、イベントログに以下のようなイベントID 12が記録される。 タイム プロバイダ NtpClient: このコンピュータは、ドメイン階層を使ってタイムソース を決定するように構成されていますが、フォレストのルートにあるドメイン用の PDC エミュレータであるため、ドメイン階層のその上にはタイム ソースとして使用する コンピュータがありません。ルート ドメインの信頼できるタイム サービスを構成するか、 または手動で PDC を構成して外部のタイム ソースと同期させることをお勧めします。 そうでない場合、このコンピュータはドメイン階層内の権限のあるタイム ソースとして 機能します。外部のタイム ソースが構成できない場合、またこのコンピュータで使用で きない場合は、NtpClient を無効にすることをお勧めします。 タイムサーバはデフォルトの「time.windows.com」を指定しているが、上記イベントが発生することから考えると、time.windows.comは「Client Mode」の要求しか受け付けないようだ。 ※もちろんタイムサーバはtime.windows.comじゃなくてもいい。むしろ、商用環境ではtime.windows.comじゃない方がいい。レスポンスがないことが多々ある・・。 設定方法はいろいろあるようだが、今回はドメインコントローラ上でレジストリの値を修正して対処した。 1、ドメインコントローラ上でregedit 2、HKEY_LOCAL_MACHINEの\SYSTEM\CurrentControlSet\Services\W32Time\ParametersのTypeの値を、NT5DSからALLSyncに修正 3、HKEY_LOCAL_MACHINEのSYSTEM\CurrentControlSet\Services\W32Time\ParametersのNtpServerの値を、time.windows.com,0x1からtime.windows.com,0x8に修正 ※末尾のフラグは0x1だと方式が「Symmetric Active/Passive Mode」、0x8だと「Client/Server Mode」となるらしい。ちなみに、0x2では時刻同期されなかった。http://network.station.ez-net.jp/report/servers/ntp/ntp-windows.asp 4、ドメインコントローラ上のプロンプトでnet stop w32time 5、ドメインコントローラ上のプロンプトでnet start w32time 6、ドメインコントローラ上のプロンプトでw32tm /resync 同期結果。 C:\>w32tm /resync 再同期のコマンドを送信: local computer… コマンドは正しく完了しました。  

iTunesはリカバリモードのiPodを見つけました

  これまでiTunesのデータは外付けHDDに保存していたのだが、ネットワークドライブに切り替えたところ、データの同期ができなくなった。 iPodをPCに接続すると以下のメッセージが出て、 iTunes はリカバリモードの iPod を見つけました。iTunes でご利用になる前に、この iPod を修復する必要があります 「修復」ボタンをクリックしても事象変わらず。Googleに聞いてみて、ネットワークドライブに割り当てたドライブ文字と、iPodに割り当てられるドライブ文字がかぶっていることに気づく。 http://docs.info.apple.com/article.html?artnum=304503-ja iPod の復元後も、上記のメッセージが再び表示される場合は、iPod のドライブ文字を指定し直すことが必要な場合もあります。 全てのプログラム→管理ツール→コンピュータの管理を開き、記憶域→ディスクの管理にアクセス。ディスク1のリムーバルに表示されている領域のドライブ文字を、他のドライブとかぶらないものに変更したところiPodドライブが復旧。iTunesを起動しない状態でiPodをPCに接続したところ、初期セットアップできた。  

CISAの受験に関する情報が少ない件

  CISA(公認情報システム監査人)の試験勉強に関する情報は、確かに少ないと思う。わたしは去年受験したのだが、振り返ってみると、以下のような準備を1ヶ月ぐらいして試験に臨んだと記憶している。感想含む。 ・ISACAのサンプル問題集は、追加100問分も含めて購入し、2回は全問解いたはず。 ・レビューマニュアルは購入したかったのだが、(財政事情により)購入しなかった。 ・ISACAのサイトからダウンロードできる情報は、リファレンスとしてよく利用した。 ・セキュリティ関連の業務経験により、監査の進め方や、セキュリティ技術に関する問題は解きやすかったように思う。 ・ITガバナンスに関する問題は、ISACAのサイトの情報を参考にもう少し勉強しておくべきだったかもしれない。 あと、他の情報ソースにも書かれているけど、問題数が多くて疲れた記憶がある。前日はきちんと睡眠をとった方がいいだろう。  

Log ParserでPV集計

  おなじみのLog Parser。わたしもアクセス解析に利用させてもらっている。 1分単位のPVを集計 logparser “Select QUANTIZE(time, 60) As Minutes, Count(*) As PV INTO ex070302.csv From ex070302.log Where (cs-uri-stem not like ‘%.gif’ and cs-uri-stem not like ‘%.js’ and cs-uri-stem not like ‘%.css’ and cs-uri-stem not like ‘%.jpg’ and cs-uri-stem not like ‘%.jpeg’) Group by Minutes” なかなかすぐれもの。自動化したいなあ。  

IISでRewrite設定

  (注意)IIS6.0の情報です。 IISで、URI部分も含めて別サイトにリダイレクトする要件あり。 以下のサイトをみつけた。 http://support.microsoft.com/kb/324000/ja ※英語でみたほうがいいかも。 仮想ディレクトリの設定で、リダイレクト先のURLとして以下を指定。 https://miracosta.co.jp$V$Q $Vで、元URLのFQDN以下の部分を保持し、リダイレクト先サイトに転送される。 $Qをつけることによって、QueryString部分も保持される。 ためしに https://hoge.co.jp/Login/View/Login.aspx?param=2a にアクセスすると、 https://miracosta.co.jp/Login/View/Login.aspx?param=2a にリダイレクトされることを確認。  

ORA-12528: TNS:リスナー: 該当するインスタンスはすべて、新規接続をブロックしています

  開発環境にて発生。Oracleをshutdown immediateし、再度mountするとOracleへの接続がブロックされてしまう。どうやら、以下のサイトにある問題のようだ。 http://otn.oracle.co.jp/cgi-bin/non/msgview_r.cgi?communityid=otn-901233&bbsid=1&no=5616&view=9 本番とStaging環境ではOracleを自動起動するように設定していなかったのだが、開発環境だけはOracleが自動起動する設定になっていた。サービスを再起動することで解決。自動起動もやめた。  

全面障害時のRMANによる復旧テスト

リカバリ検証ケース。ディスク障害で全表領域、全オンラインREDOログファイル、全制御ファイル、SPFILEが物理的に逝ってしまった場合のRMANによるリカバリ検証手順。 ①RMANを起動 C:\> rman target sys/hoge nocatalog ②インスタンスを強制起動 RMAN> startup force nomount ③SPFILEをバックアップセットからリストア RMAN> restore spfile from ‘H:\oracle\restore\C-585537839-20060616-06’; RMAN> shutdown RMAN> startup nomount ④制御ファイルをリストア RMAN> restore controlefile from ‘H:\oracle\restore\C-585537839-20060616-06’; RMAN> alter database mount ⑤バックアップセットからリカバリ、障害直前までのアーカイブログから不完全回復 RMAN> run { 2> until set sequence 3021 thread 1; 3> allocate channel ch1 type disk; 4> restore database; 5> recover.

ORA-12638: 資格証明の取出しに失敗しました。

  アプリテスト実施のためにサーバの日付を過去日付に設定したところ発生。 Oracleクライアントのsqlnetの設定はデフォルトのまま。 SQLNET.AUTHENTICATION_SERVICES= (NTS) 認証チケットが有効期限切れになっているということか・・。 googleで以下の情報を拾って対応。 「OracleSecurity03.pdf」をダウンロード SQLNET.AUTHENTICATION_SERVICES パラメータ 1 つ以上の認証サービスを使用可能にします。 認証がインストールされている場合は、このパラメータをnone または認証方式の1 つに設定することをお薦めします。 none - 認証方式は採用しません。 有効なユーザー名とパスワードを使用すると、データベースにアクセスできます。 all - すべての認証方式を採用します。 nts - Windows NT のシステム固有の認証を採用します。 *WindowsログオンのORA_DBAグループにWindowsログオンユーザが属している必要がある。  

PRODUCT_USER_PROFILEヘのアクセス中にエラーが発生しました

  Oracle 10g環境(Release 10.1.0.3.0)にて発生。 リモートでログインすると以下のエラーメッセージが表示される。ログイン自体は可能。 >PRODUCT_USER_PROFILEヘのアクセス中にエラーが発生しました。 >警告: 製品のユーザー・プロファイル情報がロードされていません。 >PUPBLD.SQLをSYSTEMとして実行する必要があるかもしれません。 googleによれば、 http://www20.big.or.jp/~o-shin/bbs/bender/dbms/pslg943.html とのこと。確かにpupbuld.sqlとcatdbsyn.sql をsysで実行した記憶あり。 やっぱりOWNERがsysになっている。 SQL> select object_name, owner, object_type from all_objects where object_name = ‘PRODUCT_USER_PROFILE’; OBJECT_NAME ———————————————————— OWNER ———————————————————— OBJECT_TYPE ————————————– PRODUCT_USER_PROFILE PUBLIC SYNONYM PRODUCT_USER_PROFILE SYS SYNONYM とりあえず以下のオブジェクトをsysで削除。 DROP SYNONYM PRODUCT_USER_PROFILE; DROP TABLE PRODUCT_USER_PROFILE; DROP TABLE SQLPLUS_PRODUCT_PROFILE; DROP TABLE PRODUCT_PROFILE; DROP VIEW PRODUCT_PRIVS; DROP PUBLIC.