2008年4月20日日曜日

NTPで時刻あわせ Linux

こんな感じでcronに登録しておくといいです
#!/bin/bash
ntpdate ntp.jst.mfeed.ad.jp

またハードウェアクロックとの同期も取る必要があります
ハードウェアクロックがずれていると再起動した時におかしな時間になってしまいます。
hwclock --systohc
と打てばおkです。
hwclock
と打てば現在のハードウェアクロックを見れます
hwclock --adjust
と打てば前回の差分から進む(または遅れる)時間を計測していい感じに調整してくれます

cronとかには↓のように登録しておくといいかも
#!/bin/bash
ntpdate ntp.jst.mfeed.ad.jp > /dev/null
hwclock --adjust
hwclock --systohc

2008年4月19日土曜日

COBOL符号付数値の表記方法

10の位以上 &h3x 0 1 2 3 4 5 6 7 8 9
プラスの1の位 &h4x @ A B C D E F G H I
マイナスの1の位 &h5x p q r s t u v w x y

参考リンク

2008年4月13日日曜日

squidでプロキシーサーバーを立てる

まず、
apt-get install squid

などでインストールする。
次に/etc/squid/squid.confを編集する
http_port 8080

visible_hostname 192.168.0.11

http_portで接続ポートを設定、visible_hostnameで自分自身のホスト名を設定

acl localnet src 192.168.0.0/255.255.255.0

http_access allow manager localhostの下あたりに
http_access allow localnet


forwarded_for off

アクセス元のIPを隠す

via off

viaヘッダを隠す

header_access Cache-Control deny all

キャッシュコントロールヘッダの無効化


cache_dir ufs /var/spool/squid 1500 64 1024

キャッシュディレクトリサイズの変更とか
ufs --> なんかこれ指定しとけてきなあれ
/var/spool/squid --> キャッシュディレクトリ
1500 --> なんメガバイトのサイズを上限とするかこの例だと1500MB
64 --> キャッシュディレクトリの最初の階層のフォルダ数
1024 --> キャッシュディレクトリの2番目の階層のフォルダ数








参考
http://tech.ckme.co.jp/proxy.shtml
http://squid.robata.org/squid2.0-conf.html

2008年4月3日木曜日

SSLで利用するポート

443だそうです

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
を追加します。