2013年02月03日

apacheでasp.net on GMO VPS(VZ)

コンパイラのインストール
yum install gcc bison pkgconfig glib2-devel gettext make

作業ディレクトリに移動
cd /usr/local

monoのソースをダウンロードして、ビルド&インストール。
wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.gz
tar zxvf mono-2.10.8.tar.gz
cd mono-2.10.8
./configure --prefix=/opt/mono
make
make install
cd ..

monoへパスを通す
echo export PKG_CONFIG_PATH=/opt/mono/lib/pkgconfig:$PKG_CONFIG_PATH>>~/.bash_profile
echo export PATH=/opt/mono/bin:$PATH>>~/.bash_profile
source ~/.bash_profile

monoの稼働確認(バージョン確認)
mono --version

XSPのソースをダウンロードして、ビルド&インストール。
wget http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2
tar jxvf xsp-2.10.2.tar.bz2
cd xsp-2.10.2
./configure --prefix=/opt/mono
make
make install
cd ..

apacheの拡張機能をインストール
yum install httpd-devel

mod_monoのソースをダウンロードして、ビルド&インストール
wget http://download.mono-project.com/sources/mod_mono/mod_mono-2.10.tar.bz2
tar jxvf mod_mono-2.10.tar.bz2
cd mod_mono-2.10
./configure --prefix=/opt/mono
make
make install
cd ..

httpd.cofの末尾にmod_mon.confのインクルードを追加。
vi /etc/httpd/conf/httpd.conf
  :
  :
  :
Include /etc/httpd/conf/mod_mono.conf

Apacheの再起動
/etc/rc.d/init.d/httpd restart

以上で設定は完了。

cf.
CentOSにMonoでASP.NET環境を構築
posted by rocknfields at 21:53| Linux Server

yumインストール on GMO VPS(VZ)

GMO VPS(VZ) には yum がインストールされていない。
以下、インストール手順。

必要なrpmをダウンロードして、インストール。
cd /usr/local

wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/yum-3.2.22-40.el5.centos.noarch.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/python-elementtree-1.2.6-5.x86_64.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/python-iniparse-0.2.3-6.el5.noarch.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/python-sqlite-1.1.7-1.2.1.x86_64.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/python-urlgrabber-3.1.0-6.el5.noarch.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-4.el5.x86_64.rpm
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/m2crypto-0.16-9.el5.x86_64.rpm

rpm -ihv python-elementtree-1.2.6-5.x86_64.rpm
rpm -ihv python-iniparse-0.2.3-6.el5.noarch.rpm
rpm -ihv python-sqlite-1.1.7-1.2.1.x86_64.rpm
rpm -ihv m2crypto-0.16-9.el5.x86_64.rpm
rpm -ihv python-urlgrabber-3.1.0-6.el5.noarch.rpm
rpm -ihv yum-metadata-parser-1.1.2-4.el5.x86_64.rpm
rpm -ihv yum-3.2.22-40.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm

バージョン確認
yum --version

cf.
[CentOS] yumが使えないときにyumをインストールする方法
インストール会員No.1 yumをインストール
posted by rocknfields at 18:33| Linux Server

2013年01月03日

NEC Aterm WR8700N パケットフィルタリング設定

NEC製ルーターは、他社製品に比べパケットフィルタリングの設定が非常に分かり辛い。

以下、設定例の前提条件。

  • ローカルネットワークのサブネット:192.168.x.0/24

  • インターネットへの通信を抑止するサブネット:192.168.x.240/28

  • ローカルネットワーク内の機器同士の通信は全て許可する。

  • インターネットへの通信を抑止されたサブネット内に存在するPanasonic製HDDレコーダ(Diga)に対し、インターネット上のDimoraサーバーへの通信を許可する。

◆パケットフィルタリング設定画面

PackeFiltering.png


  1. 設定画面の「詳細設定」−「パケットフィルタ設定」を開き、対象インターフェースで「LAN]を選択。

  2. インターネットへの通信を抑止したいサブネットを、優先度を下げて追加。
    (上記画像で優先度41のエントリ)

  3. ローカルネットワーク内の通信は、全面的に許可。
    (上記画像で優先度1のエントリ)

  4. インターネットへの通信を許可するIPアドレスやポート番号を追加。
    (上記画像で優先度26〜29のエントリ)


Note.
※エントリの修正は出来ない。削除して作成し直すしか無い。
(非常に不便。それくらいのU/Iはサポートしてくれても良いと思うのだがNECさん...)
※設定画面で「方向」の意味がイメージし辛い。
(ルーターを基準に、入って来る方向が"in"、出て行く方向が"out"との事。「対象インターフェース」の選択も考えると、やはり分かり辛い。)

cf.
AtermStationパケットフィルタリング設定手順
Panasonic ブルーレイディスクレコーダー(ルーターに高度なセキュリティー設定(ファイアーウォール設定)を実施される場合)
posted by rocknfields at 14:16| ネットワーク、ルーター、etc

2012年12月20日

Cronで定期的な処理を実行

QNAP NASでcronを利用しシェルを定期的に実行する方法

下記、共有フォルダ Temp 下の全ファイル&フォルダを毎朝5時に削除する場合の例。

◆シェルスクリプトの作成

vi /usr/local/bin/TempClean.sh
#!/bin/sh
rm -r -f /share/Temp/*.*

◆実行権の付与

chomod +x /usr/local/bin/TempClean.sh

◆crontabへの登録

vi /etc/config/crontab
0 5 * * * /usr/local/bin/TempClean.sh

Note:
一般的なジョブ登録方法 crontab -e では、再起動でクリアされてしまう。

◆crontabの再起動

crontab /etc/config/crontab

cf.
QNAP Wiki (Add items to crontab)
QNAPでCRONをいじる方法
バックアップを自動でやりたい
posted by rocknfields at 20:03| QNAP NAS

2012年11月21日

正規表現によるメールフィルタリング on GMO VPS(VZ)

VPS(VZ)標準のコントロールパネルにおけるメール設定では、フィルタリングに正規表現が使用できない為、迷惑メールなどの詳細なフィルタリングが出来ない。
以下、Postfixのフィルタリングで設定を行う際の備忘録。

◆フィルタリングの有効化

デフォルトでコメントアウトされているので、先頭の#を削除する。
(ヘッダーでのフィルタリングを有効にした例)

vi /etc/postfix/main.cf
  header_checks = regexp:/etc/postfix/header_checks
  #body_checks = regexp:/etc/postfix/body_checks


◆正規表現によるフィルター条件の設定

末尾にフィルター条件を追加

vi /etc/postfix/header_checks
/^From:[\s<]\d+@yahoo\.com/ IGNORE      ←@の左辺が数字のみのyahoo.comからのメールを無視

REJECT : 受信拒否(送信元にエラーを返す)
IGNORE : 受信して破棄(送信元にエラーを返さない)
OK : 受信許可

◆設定をリロード

# /etc/rc.d/init.d/postfix restart

cf.
Postfixのフィルタリング設定 - スパム・迷惑メール対策、受信拒否
はじめての自宅サーバ構築 - Fedora/CentOS -
posted by rocknfields at 23:48| Linux Server

2012年10月23日

サブドメイン追加 on GMO VPS(VZ)

GMO VPS(VZ)でサブドメインを追加する際の手順。

◆コントロールパネルでサブドメインを登録

VPS Controlpanel にログインし、「ドメイン設定」−「基本設定」を開き、サブドメイン名を追加する。
この作業で、以下の操作が自動的に行われる。

  • DNSへの登録

    ※DNSの更新は数分から10分程度かかる。それまでは名前解決されないので注意!

  • サブドメイン名フォルダの作成

    ※サブドメイン名を test.abc.com とすると、/var/www/vhosts/test.abc.com が作成される。


  • ◆Appacheへのサブドメイン追加

    末尾付近にエントリを追加(サブドメイン名が test.abc.com、コンテンツを httpdocs に配置する場合の例)

    /etc/httpd/conf/httpd.conf
    <    VirtualHost *:80>
        DocumentRoot /var/www/vhosts/test.abc.com/httpdocs
        ServerName test.abc.com
    </VirtualHost>


    ◆Appacheの再起動

    # /etc/rc.d/init.d/httpd restart


    以上で、http://test.abc.com/ へアクセスし、Appacheの初期画面が表示されればOK。
    posted by rocknfields at 19:49| Linux Server

    2012年09月22日

    GroupSession Server on GMO VPS(VZ)

    GMO VPS(VZ)へGroupSession(フリーのグループウェア)環境を構築した際の備忘録です。

    ◆Javaのインストール

    (1) ダウンロード
    OracleサイトからJDK6の64bit版rpm(jre-6u35-linux-x64-rpm.bin)をダウンロード。

    開発も行う環境が必要なら、JRE6のrpm(jdk-6u35-linux-x64-rpm.bin)を使用する。

    (2) サーバーへコピー
    FTP等でダウンロードしたrpmを /usr/java へ置く。

    (3) インストール
    rpmへ実行権を付与し、起動する。

    # cd /usr/java
    # chmod +x jre-6u35-linux-x64-rpm.bin
    # ./jre-6u35-linux-x64-rpm.bin

    上記でカレントディレクトリ(/usr/java)下に、以下が作成されていればOK。
    ・jre1.6.0_35 ディレクトリ(Javaモジュールの実体格納先)
    ・default シンボリックリンク( -> /user/java/jre1.6.0_35)

    (4) 環境変数追加
    末尾付近に下記を追加。

    /etc/profile
    export JAVA_HOME=/usr/java/default
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar


    (5) 環境変数の反映

    # source /etc/profile

    (6) 環境変数の確認
    下記コマンドで環境変数の内容を参照し、追加した内容が反映されていればOK。

    # set


    ◆Tomcatのインストール

    (1) モジュールのインストール
    (ダウンロード/解凍/シンボリックリンク作成/ダウンロードファイルのファイル削除)

    # cd /usr/local
    # wget http://ftp.riken.jp/net/apache/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz
    # tar zxvf apache-tomcat-6.0.35.tar.gz
    # ln -s tomcat ./apache-tomcat-6.0.35
    # rm -f apache-tomcat-6.0.35.tar.gz

    (2) 接続ポートの変更
    GMO VPS(VZ)では8080が他で使用されている為、ポートを変更する必要あり。
    解放可能なポートは10000〜12000とされているので、適当なポート番号を決め、当該箇所を変更する。
    (以下は10001を使用した場合の例)

    /usr/local/tomcat/conf/server.xml
    <Connector port="10001" protocol="HTTP/1.1" ...
    <Connector executor="tomcatThreadPool" port="10001" protocol="HTTP/1.1" ...

    (3) Tomcatの再起動

    # /user/local/tomcat/bin/shutdown.sh
    # /user/local/tomcat/bin/startup.sh

    (4) 動作確認
    下記URLで、Tomcatのデフォルトページが表示されればOK。

    http://ドメイン名:10001/


    ◆GroupSessionのインストール

    (1) ダウンロード

    # cd /usr/local/tomcat/webapps
    # wget http://www.gs.sjts.co.jp/v4/download/gsession.war

    (2) 動作確認
    下記URLで、ログインページが表示されればOK。
    (warファイルが自動的に展開される)

    http://ドメイン名:10001/gsession/


    ◆ApacheとTomcatの連携

    (1) ProxyPassの有効化
    以下の2行がコメントアウトされているので先頭の#を削除して有効化。

    /etc/httpd/conf.d/proxy_ajp.conf
    ProxyPass /tomcat/ ajp://localhost:8009/
    ProxyPass /examples/ ajp://localhost:8009/examples/

    (2) 連携の確認
    以下のURLでtomcatのデフォルトページ、及び、サンプルページが表示されればOK。

    http://ドメイン名/tomcat/
    http://ドメイン名/tomcat/examples/

    (3) GroupSession用ProxyPassの追加
    下記を末尾に追加。

    /etc/httpd/conf.d/proxy_ajp.conf
    ProxyPass /gsession/ ajp://localhost:8009/gsession/

    (4) 動作確認
    以下のURLでGroupSessionのログイン画面が表示されればOK。

    http://ドメイン名/gsession/


    ◆Tomcat起動スクリプトの作成

    (1) スクリプトファイルの作成
    以下のスクリプトファイルを新規作成する。

    /etc/rc.d/init.d/tomcat
    #!/bin/bash
    #
    # Startup script for the tomcat
    #
    # chkconfig: 345 80 15
    # description: Tomcat is a Servlet+JSP Engine.

    # Source function library.
    . /etc/rc.d/init.d/functions
    source /etc/profile.d/tomcat.sh

    start(){
    if [ -z $(/sbin/pidof java) ]; then
    echo "Starting tomcat"
    /usr/local/tomcat/bin/startup.sh
    touch /var/lock/subsys/tomcat
    else
    echo "tomcat allready running"
    fi
    }

    stop(){
    if [ ! -z $(/sbin/pidof java) ]; then
    echo "Shutting down tomcat"
    /usr/local/tomcat/bin/shutdown.sh
    until [ -z $(/sbin/pidof java) ]; do :; done
    rm -f /var/lock/subsys/tomcat
    else
    echo "tomcat not running"
    fi
    }

    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    restart)
    stop
    start
    ;;
    status)
    /usr/local/tomcat/bin/catalina.sh version
    ;;
    *)
    echo "Usage: $0 {start|stop|restart|status}"
    esac

    exit 0

    (2) スクリプトのテスト
    以下でTomcatの起動/停止/再起動/ステータス表示が出来ればOK。

    # /etc/rc.d/init.d/tomcat start
    # /etc/rc.d/init.d/tomcat stop
    # /etc/rc.d/init.d/tomcat restart
    # /etc/rc.d/init.d/tomcat status


    ◆Tomcatの自動起動

    (1) chkconfigでの起動スクリプトの追加と自動起動設定

    # chkconfig --add tomcat
    # chkconfig tomcat on

    *Note
    SuperUserになる際、"su -"とすると、一般ユーザー環境を引き継がないので、/sbin へのパスが通った状態となる。
    "su"だけでSuperUserになった場合、パスが通っていないので、/sbin/chkconfig とする必要あり。

    (2) 自動起動設定確認
    Level2〜5がonであればOK。

    # chkconfig --list tomcat
    tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off


    以上で設定は完了。

    cf.
    “安全”のためにTomcatを理解し、構築し、動作させる
    Javaアプリケーションサーバー構築(Tomcat6)
    posted by rocknfields at 23:40| Linux Server

    2012年05月01日

    Windows7でのIIS設定

    WIndows7でASP.NET開発環境を構築する際、サーバーエラーでうまく表示できない場合がある。
    以下、設定変更内容。

    ◆セキュリティ設定の変更(applicationHost.config)

    ・エラー内容
    HTTP エラー 500.19 - Internal Server Error
    ページに関連する構成データが無効であるため、要求されたページにアクセスできません。

    ・定義ファイル
    %windir%\system32\inetsrv\config\applicationHost.config

    ・変更内容
    <sectionGroup name="system.webServer"> セクションの以下の項目が、デフォルトでは"Deny"になっているので"Allow"に変更する。

      <section name="handlers" overrideModeDefault="Allow" />
      <section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />

    ◆ASP.NETの有効化

    ・エラー内容
    HTTP エラー 404.3 - Not Found
    拡張構成により、要求しているページは使用できません。ページがスクリプトの場合は、ハンドラを追加します。ファイルをダウンロードする場合は、MIME マップを追加します。

    ・ASP.NETコンポーネントをインストール
    「Turn Windows features on or off」ダイアログで、[ASP.NET]にチェックを入れて[OK]。

      [Internet Information Services]
        [World Wide Web Services]
          [Application Development Features]
            [ASP.NET]
    続きを読む
    posted by rocknfields at 17:30| ASP.NET & IIS設定

    2012年04月18日

    IE9で style.height に代入できない

    業務用のイントラページなどでは、DIVタグの用いてページの一部分をスクロールバー付きウィンドウの様に表示するケースが良くある。
    この際、リサイズイベントなどでスクロール領域の高さや幅の動的な変更を行うが、IE9では、正しく動作しない場合がある。

    具体的には、IE8以下や他のブラウザの多くでは、

    document.getElementById("divData").style.height = "500";

    で問題なく動作するが、IE9ではうまく行かない。
    (特にエラーとなる訳でも無く、処理が無視された様な挙動となる。)

    原因は、IE9では単位の判定が厳密になった為と思われる。
    単位をピクセルとして、明確に指定すれば回避でき、また、IE8以下でも弊害はない。

    document.getElementById("divData").style.height = "500px";

    要は、普段からちゃんと単位指定しなさいという事かと。
    posted by rocknfields at 15:10| HTML, CSS, JavaScript

    2012年04月12日

    インスタンスやオプションの追加/削除

    SQL Server 2005〜 でのインスタンスの追加/削除は、ControlPanel の「Add or Remove Programs」から行う方が確実。

    一覧中で SQL Server 関係のエントリのうち、以下のものを起動する。
    ◆SQL Server 2005の場合
    ・Microsoft SQL Server 2008 「Change」「Remove」

     修正や追加なら「Change」、削除なら「Remove」をクリック。
     ⇒当該モードでダイアログが表示されるので、適宜設定し実行する。

    ◆SQL Server 2008 / 2008 R2 の場合
    ・Microsoft SQL Server 2008 「Change/Remove」
    ・Microsoft SQL Server 2008 R2 「Change/Remove」

     起動後、Add / Repair / Remove を選択するダイアログが表示されるので、何れかをクリック。
     ⇒当該モードでインストーラが起動される。
     (手動でインストーラにパラメータを指定しても同様の起動が可能だが、ここからの起動の方が確実。)
    posted by rocknfields at 16:21| SQL Server