2008年3月31日月曜日

端末を終了しても(ログアウトしても)処理し続ける

nohupコマンドを使用します。

http://www.linux.or.jp/JM/html/gnumaniak/man1/nohup.1.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231191/?ST=oss

例)

nohup nmap -sS -P0 -T2 -p 1-65000 -oN kaons.txt -r -v -sV hogehoge.info &> nohup.txt
こんな感じで・・・&>はエラー出力と標準出力を同じファイルに出す

nmapを使う

nmap -sS -P0 -T2 -p 1-65535 -oN kaons.txt -r -v -sV hoge.co.jp


-sS  ステルススキャン
-P0 ホストの発見を省略する(確実にそのホストが存在していると分かっている場合はこれを使用する)
-T2 スキャン速度。T1、T2、T3、T4、T5と早くなっていく。T5は高速回線が望ましい。
-p ポートスキャンする範囲↑の例では1から65535番まで(全部)
-oN  出力するファイル
-r  ランダムにスキャンしない
-v   冗長オプション。多くの情報を出力する。
-sV そのポートで使用されているアプリを特定する
-O OSを特定する

※注意
家庭用のブロードバンドルーターを使っている人はスキャン速度をT3以下にしないと落ちる場合があります。

2008年3月29日土曜日

Linuxでスワップ頻度を調整する

swappinessという値を変更する。これは0~100までの値で大きいほどスワップし、
小さいほどアプリケーションに割り当てるメモリを多く取り結果スワップが減る。

現在の値を表示する(デフォルトは60)
cat /proc/sys/vm/swappiness

一時的に40に変更する(再起動後はデフォルトに戻る)
echo 40 > /proc/sys/vm/swappiness

永続的に変更する
/etc/sysctl.confを編集し
vm.swappiness=40
を付け加える
その後
# sysctl -p
で適用



参考リンク
ITmedia
http://www.itmedia.co.jp/enterprise/articles/0712/10/news011_4.html

http://www.linuxmagic.org/tips02.html

2008年3月22日土曜日

apacheの.htaccessでユーザーアクセスする人を絞る

AuthType Basic
AuthUserFile "/etc/apache2/pass"
AuthName "Enter pass word"
Require user hogehoge

Require user の後にhogehogeという人なら許すという設定

2008年3月18日火曜日

ブロードバンドルータの設定や確認をperlで行う1

市販されているブロードバンドルーターの多くがブラウザから設定を行うタイプだと思います。これはGUIにより容易に設定が行えますが、ポートの開閉やIPアドレスの定期的な確認などがしたいときには煩わしくプログラムで自動化したいと思うことがあります。
まずは下図の様な場合を想定し、目的のスクリプトを作成したいと思います。

ルーターはNP-BBRPでWAN側はPPPoE接続されています。今回は例としてNP-BBRPを想定しますが、どのルーターでも出来るように説明します。
まず、認証方法を確認します。ブラウザからログインして設定画面に行きます。
この場合http://192.168.0.1/にアクセスしログインします。下図のような画面が出てきました。ユーザー名、パスワード欄に適切なワードを入れてログインします。

2008年3月15日土曜日

analog /etc/analog.cfg以外のコンフィグファイルを使う

analog -G +g/var/www/hoge/foo.cfg.txt

のように書きます。+gの後にスペースを入れないように注意します。
また-Gをつけるのを忘れないで下さい。

analogを使ってログ解析

analogはログ解析ソフトです。
Debianならaptで簡単にインストールできます。
インストールしたらまず/etc/analog.cfgを編集します。

ログファイルの指定
LOGFILE /var/log/apache2/access.log

古いログファイルの指定 (gzで圧縮されていても大丈夫です)
LOGFILE /var/log/apache2/access.log.*

出力HTMLの指定
OUTFILE /var/www/hoge/Report.html


HOSTEXCLUDE・・・このホストからのログは対象としない
リモートホストでの指定ではワイルドカード(*)を省略しないこと
HOSTINCLUDE・・・このホストを集計の対象とする
FILEEXCLUDE・・・このファイル(ディレクトリ)を集計の対象としない
DNSFILE・・・IPの逆引き結果をキャッシュするファイル
DNS WRITE・・・キャッシュを参照、新しいIPはキャッシュする詳しくはこちら
DNSGOODHOURS・・・キャッシュの有効期限 詳しくはこちら


LANGUAGE japanese-utf
HOSTEXCLUDE 192.168.0.*
HOSTEXCLUDE *.point.ne.jp
HOSTEXCLUDE *.ezweb.ne.jp
#FILEINCLUDE /upload/*
FILEEXCLUDE /icons/*
DNSFILE /var/www/kaiseki/dnscache.txt
DNS WRITE
DNSGOODHOURS 679

BROWSER ON
DAILYREP ON
DAILYSUM ON
FAILHOST ON
FAILREF ON
FAILURE ON
FAILUSER ON
FIVEREP ON
FIVESUM ON
FULLBROWSER ON
HOST ON
HOURLYREP ON
HOURLYSUM ON
ORGANISATION ON
QUARTERLY ON
QUARTERREP ON
QUARTERSUM ON
REFERER ON
REQUEST ON
SEARCHWORD OFF
SIZE ON
WEEKHOUR ON
WEEKLY ON


ALL ONで全て有効にしてから不要なものをOFFにしていく方法もある。


ALL ON
FAILVHOST OFF
INTSEARCHQUERY OFF
INTSEARCHWORD OFF
PROCTIME OFF
REDIRHOST OFF
REDIRREF OFF
REDIRUSER OFF
REDIRVHOST OFF
SEARCHQUERY OFF
SEARCHWORD OFF
VHOST OFF



参考リンク
http://www.miloweb.net/analog.html

2008年3月14日金曜日

apacheのログにリモートホストを表示する

/etc/apache2/apache2.conf

HostnameLookups Off
という項があるので
HostnameLookups On
に変更する。

2008年3月10日月曜日

puttyでsftp/scp (psftp/pscp)

sftpはputtyの中にある
psftpを実行します。
実行するとコンソールが開くので
open hogeuser@bar.test.jp 22

と入力します。
また鍵認証をした場合はputtyに登録してあるセッション名でもログインできます。
open sessionname


ログインしたあとはhelpコマンドによってコマンド一覧を見れます。
一つ一つのコマンドの詳細はhelp <コマンド>によって見れます。
ローカルのファイルを確認する場合はWindowsの場合
!dir

と入力します。
put test.txt

でtest.txtをリモートへ送信します。

注意
ftpといってもsshのポートを利用します。



scpは
pscp.exeをDOS窓から実行します


C:\>pscp.exe foo.txt user@bar.test.jp:
Using keyboard-interactive authentication.
Password:
foo.txt | 14 kB | 14.1 kB/s | ETA: 00:00:00 | 100%


注意
pscpにpathが通っていること
user@bar.test.jp:←のコロンを忘れないこと

参考リンク
PSFTPの利用

2008年3月7日金曜日

vimでタブをスペースに変換する

:set expandtab
で今後入力されるタブがスペースに変換される。

:retab
既存のタブはこのコマンドで変換される。

:set tabstop=4
としていれば4つのスペースに変換される。

2008年3月5日水曜日

Apacheのautoindexモジュールが文字化けする

ApacheのautoindexはデフォルトエンコーディングでUTF-8を指定しているにも関わらず、
インデックスをリクエストしたときにレスポンスヘッダに
charset=ISO-8859-1
が付いてしまいます。

回避するためにはautoindexのconfのIndexOptionsに
Charset=UTF-8
を追加します。