Canal'sブログ

http://yachtman.mydns.jp の補助として使用しています。

apacheでSSLリバースプロキシ&2要素認証

2015-07-29 | Linuxメモ
仕事で、2要素認証を提案することになり、勉強のため、apacheを使って検証することにした。

前提とした条件は
・DMZにUserID/PassでサービスしているWebサイトがある
 (検証環境ではnetcommons,pukiwiki)
・Webサイトは2要素認証に対応していない場合を想定

Webサイトにアクセスする前に2要素認証を行い、Webサイトのセキュリティを強化する。

実現手段として選んだのが、apacheのリバースproxyを使用して、Proxyする際に2要素認証を入れる方法。利用者からみれば、手間はかかるが、Webサイトで2要素認証に対応していので仕方がないでしょう...と説明できる(苦笑)

リバースProxyは
OracleLinux7 (RHEL7互換)で構築。

mod_authn_otp-1.1.7.tar.gz は
https://code.google.com/p/mod-authn-otp/wiki/Downloads
からダウンロード

configure;make;make installで導入。コンパイルに足りないものが出てきた場合はyumを使っていれよう。(メモし忘れたので...何いれたか覚えていない)

実際やってはまったこと。

・Digest認証はうまくいかない。
 原因追究できず。

・以下の接続構成では、netcommonsの画面が壊れる。
 pukiwikiも挙動がおかしい。
 PC ---(https)---ReverseProxy---(http)---Webserver

 結局、以下の接続構成にしたらうまくいった。
 PC ---(https)---ReverseProxy---(https)---Webserver
 
httpsに対応していないWebサーバはないだろうし...と言い訳。

■■■■■■■■■
apacheのコンフィグ
■■■■■■■■■

#SSL
SSLPassPhraseDialog exec:/etc/httpd/conf/pass-phrase.sh
#######################
#Proxy and OTP setting#
#######################

ProxyRequests Off
<proxy *>
AuthType Basic
AuthName "Protected Area"
AuthBasicProvider OTP
Require valid-user
OTPAuthUsersFile "/var/www/otp/user.token"
</proxy>

#######################
#Virtual Host Setting #
#######################

<VirtualHost xxx.xxx.xxx.xxx:80>
ServerName yachtman.plala.jp
RewriteEngine on
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</VirtualHost>

<VirtualHost xxx.xxx.xxx.xxx:443>
ServerName yachtman.plala.jp
SSLEngine on
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
SSLCertificateFile /etc/httpd/conf/server.crt
SSLCertificateKeyFile /etc/httpd/conf/server.key
ProxyPass / https://yachtman.plala.jp/
ProxyPassReverse / https://yachtman.plala.jp/
</VirtualHost>

■■■■■■■■■
ユーザ情報ファイル user.token
■■■■■■■■■
#TokenType Username PIN TokenKey
HOTP/T30 irie-t 1240 5c40f65ddf78488ad366

TokenKeyはこのサイトで作成。QRコードまで表示されるので便利。




Synology社NASで自宅ストレージ(DS115j)

2015-06-09 | Linuxメモ
自宅仮想サーバを構築しようとたくらんでいる。
自宅に仕事&趣味用検証用環境を作りたい。
価格の安いCPUでも4コアとか自宅仮想SVを作るための状況はできつつある。

まずはストレージを導入したい。仮想化のハイパーバイザは今のところ決めていないが、iSCSIやNFSが使えれば、ほぼ問題ないと考えた。

NASといえば、バッファロー社、IOデータ社製品をすぐに思い浮かべたが個人ユースできるもので、上記プロトコルをサポートしているものがない。

googleさんのお世話になって見つけたのがSynology社製品。

Synology社製品の良さは、InternetWatchさんの記事を参照してほしい。

LinuxベースのOSで、各種パッケージ(拡張機能)を簡単に導入できる点も気に入った。Asteriskも入るので、例えば、事務所等で内線電話ができる環境も作れるのではないか。また、IVRや電話会議のプラットホームとしても使えるかもしれない。HAもサポートしているので....と夢が広がっていく。

QuickConnectというクラウドサービスが使える点も良い。自宅のルータにNATを設定せずとも、QuickConnect経由で、管理Web画面や、ipad等モバイルデバイスにインストールしたアプリを使ってNASにアクセスできる。

セキュリティには気を付けたいところなので、以下の設定は必須だと考える。

≪ログイン制限≫
 QuickConnectが使えるということは、QuickConnectIDがバレたら、誰でも管理Web画面の認証画面に辿りつくことができる。最後の砦がユーザ認証だ。流行りの2段階認証にするのがベストだが、面倒な場合は、自動ブロック機能は使いたい。

 ・2段階認証
  手持ちのiphoneやスマートフォンにgoogle authenticatorを入れて、管理Web画面より以下を選ぶ。
  [コントロールパネル]->[ユーザ]->[詳細]

 ・自動ブロック
  [コントロールパネル]->[セキュリティ]->[自動ブロック]


RHEL V4のアップデートをCentOS4で

2012-12-17 | Linuxメモ
訳あって、サポート契約が切れたRHEL V4のアップデートをしなければならなくなった。
そのメモ


(1)必要なrpmのダウンロードと実行
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/centos-release-4-8.i386.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/python-elementtree-1.2.6-5.el4.centos.i386.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/python-sqlite-1.1.7-1.2.1.i386.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/python-urlgrabber-2.9.8-2.noarch.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/sqlite-3.3.6-2.i386.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm
wget http://vault.centos.org/4.8/os/i386/CentOS/RPMS/yum-metadata-parser-1.0-8.el4.centos.i386.rpm

(2)/etc/yum.repos.d/CentOS-Base.repoの編集
mirrorの部分をコメントアウト
そして以下をその下に追記
baseurl=http://vault.centos.org/4.9/os/$basearch/
baseurl=http://vault.centos.org/4.9/updates/$basearch/
baseurl=http://vault.centos.org/4.9/addons/$basearch/
baseurl=http://vault.centos.org/4.9/extras/$basearch/
baseurl=http://vault.centos.org/4.9/centosplus/$basearch/
baseurl=http://vault.centos.org/4.9/contrib/$basearch/

DropBoxを利用してバックアップ

2012-07-25 | Linuxメモ
自宅サーバにしていたレッツノートのハードディスクがクラッシュ。なんとかバックアップはとれて、新マシンのAcerノートパソコンに入れ替えた。

完全に壊れる前にバックアップができたからよかったが、これを教訓に定期的に自動バックアップすることにした。

バックアップストレージとして、最初はUSBメモリにする事を考えたが、我が家には256Mの古いUSBメモリしか在庫が無い。これでは容量が足りない。少し悩んで、クラウドの無料ストレージサービスにバックアップする事を思いついた。

ストレージサービスは日ごろ使っていて、LINUXにも対応しているDROPBOX。自宅サーバはCentOS5。

DROPBOXにある最新のLinux用アプリケーションをコンパイルしようとしたが、glibcが古くてできない。すこし悩んで、DAGリポジトリにあるRPM( dropbox-1.1.27-2)を使うことにした。

1.DAGリポジトリよりdropboxのRPMをダウンロード
2.rpm -Uvh dropbox-1.1.27-2 ...
3./etc/sysconfig/dropboxを編集
  DROPBOX_USERSに実行させるLinuxのユーザ名を記述
4./etc/init.d/dropbox start で起動すると、認証用URLがコンソールに
  出力されるので、WebブラウザでDROPBOXにログイン後、クリック。
5. 3.で設定したユーザのホームディレクトリ上にDropBoxというフォルダが作成され
  DROPBOXと同期されている事を確認。
6.chkconfig dropbox on で起動設定

たしかこんな感じで設定した。


ところで、久しぶりにこのブログを見にきたが、テーマが変わっていてびっくり。
誰かからクラッキングされたと思ったら、blogの編集画面に、しばらく更新しないとテーマを変えちゃうよとメッセージあり。

DRBD 8.4 で disklessになる

2011-09-13 | Linuxメモ
DRBD 8.4 & RHEL5で設定中。

service drbd restartをすると、ds が disklessのステータスに。
messagesを見ると、Barriers not supported on meta data device
drbd_md_sync_page_io failed となっている。
散々悩んだ結果、drbdのconfigに以下を追加し解決。
no-disk-barrier;
no-md-flushes;


HP DL120G6にRedhat V6をインストールしてみた

2011-09-02 | Linuxメモ
久しぶりにHP社のサーバにLinux(Redhat RHEL V6)をインストールしたら
ハマったのでメモ。

本体: HP DL120G6
RAIDコントローラ: SmartArrayP212/256 BBWC
DISK: 2TB x 4
Raid5設定サービスをプラス


□ハマった問題1: 2TBしかないの?

RHEL v6 のインストーラを立ち上げ、いざディスクパーティション
設定しようとすると、インストーラが認識しているのは2TB。
起動時にRAIDの設定状況を確認すると、オーダー通りRAID5に
なっている。
HPのチャットサポートにつないで、尋ねると、ドライバディスケット
を作成・使用してインストーラを起動しなさいとのこと。
HPが提供しているRHEL V6 x86_64のSmartArrayのディスケットは
RPMファイルしか入っていないしで、再びサポートチャットに。
結論は、Easy Setup CDに入っているACUで論理ドライブ作成
しなおせば、約6Tになることが分かった。

□ハマった問題2: パーティション作成時にエラーが

デカイ論理ディスクを作成し、いざインストーラから
パーティション作成しようとすると、エラー....
requested size exceeds maximum allowed
HP社サポートチャットで尋ねたら、Linuxのサポート契約が
いるとのこと。うむむ。
結局以下の方法で回避
・OS起動用の論理ディスクとデータ用の論理ディスク2本作成
・OS起動用の論理ディスクは小さく(50G)
・50Gの論理ディスクに/ , /boot , swapパーティション作成
・データ用はOS入れた後に作成することに。

参考URL
http://h50146.www5.hp.com/products/software/oe/linux/mainstream/support/doc/option/array/over_2tb.html

ちなみにRHEL5 と RHEL6 はSmartArray用のドライバモジュールが
違うらしく RHEL5 は /dev/cciss/.... というデバイスになるが
RHEL6は /dev/sd? になる。

今回、チャットサポートを初めて利用した。電話だと、参考URLを
聞く際に面倒だし、なかなか電話がつながらない、メールだと応答が
遅い事がままあるということで、チャットサポートは結構よいサービス
だと思った。

デュアルブートで片方のOS(Linux)を消してしまった

2011-06-01 | Linuxメモ
気をつけたつもりだったけど、MBRの手当てをせずに
デュアルブートのLinuxを消してしまった。

PCを再起動するとgrubのプロンプトが表示される。
そこで 片方のWindows XP をgrubプロンプトから
起動する。

grub> root (hd0,0)
grub> chainloader +1
grub> boot

MBRをwindowsにする方法もあるようだけど
私の場合は再度Linuxを入れるので、とりあえずここまで。

この方のblogで大変助かりました。
ありがとうございます。

http://sfn.ldblog.jp/archives/1972618.html

cactiでciscoのvLANトラヒックを測定

2010-06-14 | Linuxメモ
SMON-MIBを実装したCatalystがあれば検証できるけど...
SMON-MIB実装装置が無いので、手に入れた時の為にメモ。

■■■■■■■■■■■■■■■■■
cactiでciscoのvLANトラヒックを測定
■■■■■■■■■■■■■■■■■

標準のMIBでは、vLANのトラヒックを計測できない
ので色々試行錯誤したメモ

 □テンプレート等の入手
  http://forums.cacti.net/about26800.html

 □Cisco VLAN Stats queryの配置
  cisco_vlan.xmlを以下のディレクトリに配置
  /var/www/cacti/resource/snmp_queries

 □Cisco VLAN TemplatesのImport
  cactiのImport templateから、
  cacti_data_query_cisco_-_vlan_statistics.xml
  をインポート

 □cactiのdeviceの追加or編集
  
  Associated Data Queriesで
  cisco vlan staticsを追加。

  しかし、SMON-MIBサポートしてないcatalystだったので
  うまくいかず。

USB起動clonezillaのメモ

2010-06-07 | Linuxメモ
■■■■■■■■■■■■■■■■■■■■■■■■
clonezillaダウンロード
■■■■■■■■■■■■■■■■■■■■■■■■

http://sourceforge.jp/projects/sfnet_clonezilla/releases/


■■■■■■■■■■■■■■■■■■■■■■■■
clonezillaインストール
■■■■■■■■■■■■■■■■■■■■■■■■

 ■USBのフォーマット(NTFSで)
 ■vistaの場合、コマンドプロンプトを管理者として実行
 ■clonezillaのzipを取得し解凍
 ■解凍した内容をすべてUSBメモリにコピー
 ■[USBメモリ]\utils\win32\makeboot.batを起動

■■■■■■■■■■■■■■■■■■■■■■■■
バックアップ作業
■■■■■■■■■■■■■■■■■■■■■■■■

 ■BIOSで起動順序にUSBを入れる
 ■clonezillaが入ったUSBをさしてPC起動
 ■あとはメニューに従いバックアップ作業
  /home/partimag/配下にバックアップ