birabiraのめも

忘れっぽいのでここにメモをしていきます

プロキシサーバ Squid.conf

プロキシサーバのSquidの設定をしていきたいと思います。

まずWebプロキシサーバについて簡単に。

  • クライアントが直接、アクセスしなくても済む。
  • Webページを保存できるので、実際にアクセスしなくても済むようになる。
  • クライアントとWebサーバの間に入るので、制限やコンテンツのチェックが出来る。
  • 自分のIPアドレスなどが隠匿できる。

以上のことがあげられます。

それではsquid.confについて見ていきます。

- acl アクセス制御

acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl SSL_ports port 443
acl CONNECT method CONNECT
#書式 acl 名称 機能 引数

まずここではアクセス制御をかけています。
ここで決めた名称はあとで使います。

続きを読む

アセンブラ入門 -命令その1、四則演算編-

やっとやる気になったので命令をググっていきたいと思います。
今回もアーキテクチャx86デス。
Intelでの記法になるのかな?ここらへんよくわかりません!

それでは始めます。



  • MOV <値の移動>
MOV    EBP,    ESP        ; ESPの値をEBPにコピー
MOV    EAX,    33         ; 33をEAXに代入
MOV    [1234h],    EBX    ; 1234h番地にEBXをコピー

; 書式
; MOV レジスタ|メモリ, レジスタ|メモリ|即値
; 右から左へ代入される

影響を受けるフラグ

  • なし

値を移動する命令
メモリからメモリの移動はできない



  • ADD <足し算>、ADC <桁上りを考慮した足し算>
ADD    EAX,    EBX        ; EAX = EAX + EBX
ADD    EAX,    10         ; EAX = EAX + 10
ADD    EAX,    [1234h]    ; EAX = EAX + 1234h番地の内容

; 書式
; ADD レジスタ|メモリ, レジスタ|メモリ|即値

影響を受けるフラグ

OFSFZFAFCFPF
足し算をする命令

ADCはキャリーフラグの値も足される
桁上りを計算できる


続きを読む

アセンブラ入門  -レジスタ-

セキュリティー業界はアセンブラが読めないと話にならないらしいので勉強したいと思います。

今回はx86アーキテクチャで行きたいと思います。

レジスタ一覧

汎用レジスタ

R〇〇が64ビットレジスタ
X〇〇が32ビットレジスタ
よく使われるレジスタはあるけど基本的に自由。だけどESPとRBPは変更しないほうがいいっぽい。

レジスタ意味
RAX (EAX, AX, AL, AH)アキュームレータレジスタ。算術演算結果が格納される。
RCX (ECX, CX, CL, CH)カウンタレジスタ。ループ命令などのカウンタなどに使われる。
RDX (EDX, DX, DL, DH)データレジスタ。なんにでも使われる。
RBX (EBX, BX, BL, BH)ベースレジスタ
RSP (ESP/SP)スタックポインタ。スタックの一番上を示している
RBP (EBP, BP)ベースポインタ。スタックの一番下をしてしている。めったに変更されない。
RSI (ESI, SI)ソースレジスタ。ポインタとかを保存
RDI (EDI, DI)デスティネーションレジスタ。なんにでも使う

フラグレジスタ

EFLAGSと呼ばれる32ビットのレジスタ
1ビットごと意味がある。

名前何bit目意味
CF0キャリーフラグ。桁上りか桁借りした時にセットされる。
PF2パリティフラグ。2進数で見た時、1の数がが偶数個だったらセット。
AF4調整フラグ。BCD演算の時、桁上りか桁借りした時にセット。
ZF6ゼロフラグ。結果が0になったらセット。
SF7符号フラグ。結果がマイナスになったらセットされる。
TF8ラップフラグ。なにこれ
IF9割り込み可能フラグ。割り込みを有効化したいときにセットする。
DF10方向フラグ。なにこれ
OF11オーバーフローフラグ。オーバーフローした時にセットされる。
IOPL12,13I/Oの特権レベルを表す。
多いので割愛

次は命令とかかな?

Bindで名前解決できた!

保存します!
/var/named.conf

options {
	directory 	"/var/named";
	dump-file 	"/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
	recursion no;
	allow-query{any;};
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." {
	type hint;
	file "named.ca";
};
zone "example.com."{
		type master;
		file "example.com.lan";
		allow-update{none;};
};

/var/named/example.com.lan

$TTL 86400

example.com. IN SOA dns.example.com. ukeru.example.com. (
    2007031400
	3600
	900
	604800
	8640
)
 IN  NS dns.example.com.
dns IN A 172.16.190.129
www IN CNAME dns.example.com.
@ IN A 172.16.190.129

IPアドレスは適当だよ!

isc-dhcp-server dhcpd.conf

環境:raspbian isc-dhcp-server 4.2.2

上から順に設定ファイルについて書いていきたいと思います。

  • option
option routers 192.168.1.1

option なんとかでいろいろ設定ができる

オプション名何ができるか
dmain-name "example.com"ドメインの名前
dmain-name-servers ns1.example.comDNSのアドレス
routersデフォルトゲートウェイを指定
subnet-maskサブネットマスクを指定
broadcast-addressブロードキャストアドレスを指定

続きを読む