プリントスタック TOKYO

データベースとセキュリティの世界から離れて早数年。過去の記憶を探しています。

Oracle 11g Release 2 のインストール(1)

数年ぶりにOracle Databseをインストールしてみました。

1) 必要なパッケージをインストール
環境によっては、異なります。

SHELL> yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel libXp</code><br />

2) カーネルパラメータの設定

SHELL> vi /etc/sysctl.conf
~省略~
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
SHELL> sysctl -p

3) ユーザーとディレクトリの作成

SHELL> groupadd -g 200 oinstall
SHELL> groupadd -g 201 dba
SHELL> useradd -u 440 -g oinstall -G dba -d /home/oracle oracle
SHELL> passwd oracle
Changing password for user oracle.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
SHELL> chmod 755 /home/oracle
SHELL> mkdir /home/oracle/app
SHELL> chown -R oracle:oinstall /home/oracle/app
SHELL> chmod -R 775 /home/oracle/app
SHELL> mkdir /home/oracle/oradata
SHELL> chown -R oracle:oinstall /home/oracle/oradata
SHELL> chmod -R 775 /home/oracle/oradata

※以降、システムクォート、ulimit の設定などは省略

4) ユーザーの環境変数を設定※oracleユーザーで実行

SHELL> vi ~/.bash_profile
umask 022
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=ora11g
export PATH=$PATH:$ORACLE_HOME/bin
SHELL> source .bash_profile

5) ホスト名の設定 ※rootユーザーで実行

vi /etc/hosts
IPアドレス      oracle11g01.com    oracle01

6) インストール開始 ※oracleユーザーで実行

SHELL> ./runInstaller

GUIインストールの手順は次回にします。

Oracle 11g Release 2 のインストール(2)

前回「Oracle 11g Release 2 のインストール(1)」の続き

それでは、続きのインストール手順を投稿します。
GUIが起動してしまえば、後は、デフォルトのまま進めても動作する程度の設定は出来上がってしまいます。

1) ロード画面が起動します。
f:id:yukiwillbe:20131030095230p:plain

2) 管理用のメールアドレスを入力します。※検証環境であれば適当で構いません。
f:id:yukiwillbe:20131030095236p:plain

メールアドレスが入力されていないと確認ダイアログが出力します。
f:id:yukiwillbe:20131030095241p:plain

3) インストール・オプションを選択します。初期インストールだと「データベースの作成および構成」を選択します。
f:id:yukiwillbe:20131030095246p:plain

4) システム・クラスでは、最小構成かサーバー構成かを選択します。本番環境を想定した場合、「デスクトップ・クラス」の選択は、ほとんどのケースでないと思います。
f:id:yukiwillbe:20131030095257p:plain

5) 今回は、DBをインストールしたいだけなので「単一インスタンス・データベースのインストール」を選択します。
f:id:yukiwillbe:20131030095303p:plain

6) 今回は、インストール。タイプの選択で一つずつ確認していきたいので「拡張インストール」を選択します。
f:id:yukiwillbe:20131030095307p:plain

7) 製品の言語は、「日本語」を選択します。
f:id:yukiwillbe:20131030095311p:plain

8) データベース・エディションでは、「Enterprise Edition」を選択して進みます。
f:id:yukiwillbe:20131030095318p:plain

コンポーネントの選択で検証したいコンポーネントを選択します。
f:id:yukiwillbe:20131030095323p:plain

9) インストール場所の指定は、任意で構いません。はじめての場合は、デフォルトの方がマニュアルなどの参考書と比較する際に判り易いと思います。
f:id:yukiwillbe:20131030095329p:plain

10) イベントリの作成も上記と同じです。※もしも、再インストールする場合は、このイベントりを削除した方が解りやすくインストールできます。
f:id:yukiwillbe:20131030095333p:plain

11) 構成タイプの選択では、「汎用目的/トランザクション処理」で進めます。
f:id:yukiwillbe:20131030095341p:plain

12) データベース識別子は、グローバル・データベース名とSIDと2つ入力します。※複数のインスタンスを起動する場合は、重要な識別子になります。
f:id:yukiwillbe:20131030095348p:plain

13) 構成オプションの指定
メモリーは、デフォルトのまま進めます。※当然ですが、ここの値を間違えると酷くレスポンスが悪くなります。
f:id:yukiwillbe:20131030095359p:plain

キャラクタ・セットでは、「JA16SJIS」を選択します。※クライアントの文字コードによっては、チルダ問題などあります。
f:id:yukiwillbe:20131030095404p:plain

セキュリティは、今回、必要ないので除外します。
f:id:yukiwillbe:20131030095410p:plain

サンプル・スキーマは、後で作成するのが面倒な場合は、選択します。
f:id:yukiwillbe:20131030095415p:plain

14) 管理オプションも画面の状態で進めます。
f:id:yukiwillbe:20131030095422p:plain

15) データベースの記憶領域のオプション指定もデフォルトのままで問題ありません。※本番では、ASMとかディスクI/Oを考慮して設計する必要があります。
f:id:yukiwillbe:20131030095428p:plain

16) 今回、バックアップは必要ないので無効にします。
f:id:yukiwillbe:20131030095435p:plain

17) スキーマ―・パスワードの指定では、検証なので判り易い文字列を入力します。また、すべてのアカウントで同じパスワードを使うようにします。
f:id:yukiwillbe:20131030095445p:plain
パスワード文字列がシンプルの場合は警告ダイアログが出力されます。
f:id:yukiwillbe:20131030095451p:plain

18) 権限付きオペレーティング・システム・グループは、デフォルトのまま進めます。
f:id:yukiwillbe:20131030095456p:plain

19) これまでの設定で不整合がないか確認するプログレスバーが進みます。
f:id:yukiwillbe:20131030095502p:plain
 条件を満たさない場合は下の画面のように"失敗"と表示されます。
 f:id:yukiwillbe:20131030095512p:plain

20) 条件を満たして進めるとインストールが開始されます。
f:id:yukiwillbe:20131030095526p:plain

f:id:yukiwillbe:20131030095533p:plain

f:id:yukiwillbe:20131030095538p:plain

データベース作成が完了すると確認ダイアログが表示されます。ここでは、パスワード管理ボタンをクリックしてサンプルスキーマのパスワードを入力します。
f:id:yukiwillbe:20131030095544p:plain

f:id:yukiwillbe:20131030095549p:plain

21) インストールが完了したらブラウザで画面に表示されているURLにアクセスしてみてください。
f:id:yukiwillbe:20131030095552p:plain

Xming の使い方

Windowsには、X Server なんてものはないので昔までは、Cygwin を使うのが一般的だったと思います。
ただ、推奨コンポーネントをインストールするとサイズが大きいので、あまりインストールしたくありませんでした。
この Sygwin から X Server を切り出したものが Xming というアプリケーションらしいです。

Xming X Server for Windows

僕の場合は、VMware Player に Linux をインストールして Oracle Database でGUIインストールを行う時のキャプチャを取得するのに利用します。

Linux側(Xクライアント)で環境変数を設定

SHELL> export DISPLAY=XサーバーのIPアドレス:ディスプレイ番号

Microsoft Windows側
「XLaunch」を起動して下記の手順

1) Windows 7 の場合、スタートメニューから「プログラムとファイルの検索」に「XLaunch」と入力して起動するか、すべてのプログラムから起動


2)「Display settings」で「次へ」をクリック
f:id:yukiwillbe:20131029181207p:plain


3)「Session type」で「Start a program」を選択
f:id:yukiwillbe:20131029181221p:plain

4)「Start program」で「Using PuTTY(plink.exe)」を選択。「Connect to computer」に<Linux側(Xクライアント)のIPアドレス>、「Login as user」にそのユーザー、「Password(leave blank if using PuTTY pagent)」にパスワードを入力して「次へ」をクリック
※「Start program」は、接続時に起動するXクライアントのプログラムです。
f:id:yukiwillbe:20131029181254p:plain


5)「Application parameters」で「次へ」をクリック
f:id:yukiwillbe:20131029181308p:plain


6)「Finish complete」では、設定を保存する場合、「Save configuration」ボタンで設定を保存して、保存した設定から起動することができます。
特に保存しない場合は、「完了」をクリックして終了します。
f:id:yukiwillbe:20131029181324p:plain


7)1)と同じように「PuTTY」を起動してLinux側(Xクライアント)に接続するとX画面が起動します。
PuTTYのセッション設定で「SSH」>「X11」から「X11 フォワーディングを有効にする」を有効にしてください。
f:id:yukiwillbe:20131029181343p:plain

CRYPTREC暗号リスト(電子政府推奨暗号リスト)

CRYPTRECのシンポジウムを観てきました。数年ぶりに推奨暗号リストが更新されたそうです。

技術分類名称
公開鍵暗号署名DSA
ECDSA
RSA-PSS
RSASSA-PKCS1-v1_5
守秘RSA-OAEP
鍵共有DH
ECDH
共通鍵暗号64ビットブロック暗号3-key Triple DES
128ビットブロック暗号AES
Camellia
ストリーム暗号KCipher-2
ハッシュ関数SHA-256
SHA-384
SHA-512
暗号利用モード秘匿モードCBC
CFB
CTR
OFB
認証付き秘匿モードCCM
GCM
メッセージ認証コードCMAC
HMAC
エンティティ認証ISO/IEC 9798-2
ISO/IEC 9798-3

Database Encryption の変化

2年ぶりの投稿です。
あまり、市場のなかったデータベース暗号ですが久しぶりにGoogleで検索してみると2年前では見たことのないコンテンツを発見しました。

Database Encryption(PDF)

SQL Cipher(追記:SQLLite向け)

Vormetric Database Encryption

Oracle* 11g Transparent Data Encryption with Intel® AES-NI(PDF)

海外では、ニーズがあるので増えてもインテルのチップセットで暗号化することについては、発展した事実を感じます。

PCI DSS アップデート

2010年10月28日に PCI DSS の 2.0 が公開されました。

PCI Standard Documents

PCI DSS 2.0 の Agreement Required をクリックして許諾所を読み最下部にある Accept をクリックします。
PCI DSS (PCI Data Security Standard) の PCI DSS 2.0 を Downloads でダウンロードできます。

PCI DSS 1.2 と 2.0 の差分は、Summary of Changes from PCI DSS Version 1.2.1 to 2.0 の Downloads から取得できます。

暗号鍵管理のライフサイクル

情報処理推進機構で「安全な暗号鍵のライフサイクルマネージメントに関する調査」に関する報告書」が発表されています。同サイトにも掲載されていますが、NIST の SP 800 シリーズ 57番(800-57)にガイダンスもあります。

NIST Publication Special Publications (800 Series)

基本的な暗号鍵自体の安全性も大事ですが、暗号鍵の管理もあわせてセキュアにしなければ意味がありませんので、システム開発をされる方は、是非、参考にお読みいただければと思います。
鍵管理のためのソフトウエアも数多く存在するようですが、そのソフトウエアによる脆弱性が存在しないことも含めて採用を検討するようにしてください。