2008年11月29日
FreeBSD Release CTM Version
- 2002/01/30:FreeBSD-4.5-RELEASE[CTM 4.0835]から
- 2002/06/17:FreeBSD-4.6-RELEASE[CTM 4.1021]から
- 2002/08/16:FreeBSD-4.6.2-RELEASE[CTM 4.1108]前後から
- 2002/10/11:FreeBSD-4.7-RELEASE[CTM 4.1175]から
- 2003/04/04:FreeBSD-4.8-RELEASE[CTM 4.1396]から
- 2003/10/28:FreeBSD-4.9-RELEASE[CTM 4.1635]から
- 2004/05/25:FreeBSD-4.10-RELEASE[CTM 4.1873]から
- 2005/01/24:FreeBSD-4.11-RELEASE[CTM 4.2086]前後から
- 2006/05/06:FreeBSD-6.1-RELEASE[CTM 6.0365]から
- 2007/01/16:FreeBSD-6.2-RELEASE[CTM 6.0683]から
- 2008/01/19:FreeBSD-6.3-RELEASE[CTM 6.1099]から
- 2008/11/29:FreeBSD-6.4-RELEASE[CTM 6.1379]から1378とタグのみ変更
2009年6月16日
CARP on FreeBSD 6.X
Common Address Redundancy Protocol は、CISCOのVRRP互換のレイヤー3IP冗長化プロトコルである。BSDでは、カーネルに実装されているため、カーネルコンフィグレーションが必要となる。
1.カーネルコンフィグレーション
カーネルに以下のdevice を指定し、makeする。
device carp
2.設定
# vi /etc/sysctl.conf
net.inet.carp.allow=1 #carp受信
net.inet.carp.preempt=1 #複数のvhidをまとめてフェイルオーバさせたいとき1
net.inet.carp.log=1
# vi /etc/rc.conf
cloned_interfaces="carp0 carp1"
# Master側
ifconfig_carp0="vhid 1 pass XXX 192.168.0.4/24"
# Slave側
ifconfig_carp0="vhid 1 pass XXX advskew 100 192.168.0.4/24"
# vhid: 仮想ホストを構成する実ホストのグループID。CARP毎に値を設定,carp0はvhid1,carp 1はvhid 2など。
# advskew:死活監視への応答時間。1/256秒を掛けた値
# pass: 通信時のパスワード
# advbase:死活監視の間隔
3.確認
# ifconfig -a
carp0: flags=49mtu 1500
inet 192.168.255.254 netmask 0xffffff00
carp: MASTER vhid 1 advbase 1 advskew 0
[CARP][FreeBSD] : 2009年6月16日 14:11
2009年6月23日
ISC DHCP 3.0.7 on FreeBSD 6.X
2台のFreeBSDサーバを使用し、DHCPサーバの冗長化を図った。
1.ISC DHCPサーバのインストール
portsを利用する。
/usr/ports/net/isc-dhcp30-server/
+[X] DHCP_LDAP
# make
# make install
2.設定
# vi /etc/rc.conf
dhcpd_enable="YES"
dhcpd_ifaces="em0" #サービス提供予定のNICを指定(複数NICの場合)
# vi /etc/syslog.conf
local7.*/var/log/dhcp.log
# vi /etc/newsyslog.conf
/var/log/dhcp.log644 12 * 168 JC
# cp /usr/local/etc/dhcpd.conf.sample /usr/local/etc/dhcpd.conf
# vi /usr/local/etc/dhcpd.conf
ddns-update-style none;
not authoritative; # 2台のDHCPサーバを立てる場合
log-facility local7;
subnet 192.168.255.0 netmask 255.255.255.0 {
range 192.168.255.32 192.168.255.64;
option domain-name-servers 192.168.255.2;
option domain-name "p.oni.gr.jp";
option routers 192.168.255.254;
option broadcast-address 192.168.255.255;
default-lease-time 600;
max-lease-time 7200;
}
# IPを固定
host cam1 {
hardware ethernet 0:0:c0:5d:bd:95;
fixed-address cam1.p.oni.gr.jp;
}
# primary設定
failover peer "oni" {
primary;
address ex1.p.oni.gr.jp;
port 519;
peer address ex2.p.oni.gr.jp;
peer port 519;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
# secondary設定
failover peer "oni" {
secondary;
address ex2.p.oni.gr.jp;
port 519;
peer address ex1.p.oni.gr.jp;
peer port 519;
max-response-delay 60;
max-unacked-updates 10;
}
3.起動
# /usr/local/etc/rc.d/isc-dhcpd start
4.停止
# /usr/local/etc/rc.d/isc-dhcpd stop
5.確認
# tail -f /var/log/dhcp.log
[DHCP][FreeBSD] : 2009年6月23日 21:50
2009年10月28日
WebCamera
使用機材
- Panasonic社製ネットワークカメラBL-C111
- Panasonic社製ネットワークカメラBB-HCM580
- Optics社製人感センターLX-402 2個
- KDS社製カメラハウジングNA-E120
BB-HCM580は、アナログビデオ出力機能を使いビデオケーブルで、42インチプラズマディスプレイに接続している。画面が大きい分、荒い画像となったが、PCでの画面では、MAX値640x480 でもけっこうきれいに見える。
見えますネットは使用せず、FreeBSDベースのFireWall Routerを経由し、BL-C111,BB-HCM580をリバースプロキシー接続することで、2台のカメラの監視を実現した。以下apache 2.2.Xのリバースプロキシー設定。
ProxyRequests Off音声を中継させるために、/をBL-C111にしなければならない。また画像上をクリックしてカメラを移動させる機能が使えるのは/にマウントしたBL-C111のみである。URLに埋め込まれるアクションは、2個のカメラとも利用可能。
ProxyPass / http://BL-C111-IP-Address/
ProxyPass /cam580/ http://BB-HCM580-IP-Adress/
[Camera][FreeBSD] : 2009年10月28日 08:51
2010年2月13日
SPAM:cyber-mailer.com
1.ipfilter
ipf.confにて以下の記述を追加。
block in log quick from 111.223.192.0/19 to any block in log quick from 113.212.128.0/19 to anyしかし、これだと、ipfil.logに以下の様なログが記録され続け、1週間放置しても収まる気配がなかった。
Feb 13 17:00:43 XX ipmon[46194]:17:00:43.231537 bge0 @0:2 b m34-36.cyber-mailer.co[113.212.137.36],52453 -> XX[],smtp PR tcp len 20 60 -S IN2.sendmail:/etc/mail/access
ipfilterにてパケット落としても延々送り続けるため、無駄なパケットを受け取り処理し続けることとなる。そこで/etc/mail/accessファイルに以下の記述した。
cyber-mailer.com ERROR:"550 User unknown"accessファイル編集後、以下のコマンドを実行する。
makemap hash access < access上記のipfilterのルールをコメントアウトし、maillogを監視していると、1時間半程度で、配送が中止された。やれやれ。
Feb 13 18:01:12 ...relay=m17-194.cyber-mailer.com [113.212.154.194], reject=550 5.0.0 User unknownsendmail:/etc/mail/accessファイルにてcyber-mailer.com REJECTとして配送が停止されるかどうかは試していない。
中略
Feb 13 19:31:30 ...relay=m17-179.cyber-mailer.com [113.212.154.179], reject=550 5.0.0 User unknown
[FreeBSD][SMTP] : 2010年2月13日 21:18
2010年3月13日
squidGuard-1.4 on FreeBSD 6.4-stable
2000/07/22にsquidGuard-1.1.4をインストールして以来だから、およそ10年ぶりにsquidGuardをインストールした。squidGuard 1.2からBerkeleyDB 2.7.7サポート終了 3.X以上が要求されるようになったこと。最初、これに気が付かず、リストの読み込みが失敗し続けていた。Berkeley DBを 2.7.7から3.3.11へ変更すると、サクッと設定通り動作してくれた。
% /usr/local/squid/bin/squidGuard -d
・・・・・・domainlist empty, removed from memory
% /usr/local/squid/bin/squidGuard -v
○ SquidGuard: 1.4 Sleepycat Software: Berkeley DB 3.3.11
× SquidGuard: 1.4 Sleepycat Software: Berkeley DB 2.7.7
/usr/ports/www/squidguard/files/*のpatch
% vi configure
4603 LIBS="$LIBS -ldb3"%env CFLAGS=-O2 ./configure --prefix=/usr/local/squid \
--with-sg-config=/usr/local/squid/Guard/filter.conf \
--with-sg-logdir=/var/log/squid \
--with-sg-dbhome=/usr/local/squid/squidGuard/db \
--with-squiduser=nobody \
--with-db-lib=/usr/local/lib ¥
--with-db-inc=/usr/local/include/db3
% gmake
% gmake test
% gmake install
[FreeBSD][proxy] : 2010年3月13日 17:17
Aipo 5.0.2.0-ja on FreeBSD 6.4-stable
無料グループウェアAipo 5.0.2.0をFreeBSD 6.4 stableへインストールした。このAipo Linux (RedHat/CentOS) 系のインストーラは付いているのだが、FreeBSDでは、一手間必要。
aipo5020ja_linux.tar.gzを展開するとaipo5020ja_linuxディレクトリ内に、aipo5020.tar.gzとreadme.txtファイルが出てくるので、aipo5020.tar.gzをさらに展開する。aipoディレクトリー以下にsrcディレクトリーが出てくる。postgreSQLやらtomcatが出てくるが、必要ない。必要なのはwebapps/aipo/のみ。
% cd aipo5020ja_linux/aipo/src/webapps/aipo/
% vi WEB-INF/conf/postgres/Org001DomainNode.driver.xml
<url value="jdbc:postgresql://localhost:5432/aipo"/...
<login userName="DB_USER" password="DB_PASSWORD"/>
% jar cvf ../aipo.war .
pgsql> createdb -U www -E UTF8 aipo
pgsql> psql -f aipo5020ja_linux/aipo/backup/postgresql/empty_dump/aipo_db_sql.dump
# cp aipo.war /usr/local/tomcat5.5/webapps/
非常によくできていると思うが、以下の2点が不満である。
- LADP / Active Directory直接連携できない
- ユーザIDが16byte以内
[FreeBSD][WWW] : 2010年3月13日 17:45
2010年6月 8日
IPSec-VPN between racoon on FreeBSD 6.X and YAMAHA RTX1500/1200/1100
- カーネル
options IPSEC
options IPSEC_ESP
options IPSEC_DEBUG - /etc/rc.conf
ipsec_enable="YES"
static_routes="vpn1 vpn2"
route_vpn1="-net 192.168.1.0/24 <My-Private-IP>"
route_vpn2="-net 192.168.2.0/24 <My-Private-IP>" - /etc/ipsec.conf
flush;
spdflush;
spdadd <FreeBSD-Local-Net>/24 <RTX-Local-Net>/24 any -P out ipsec esp/tunnel/<FreeBSD-Gloval-IP>-<RTX-Gloval-IP>/require;
spdadd <RTX-Local-Net>/24 <FreeBSD-Local-Net>/24 any -P in ipsec esp/tunnel/<RTX-Gloval-IP>-<FreeBSD-Gloval-IP>/require; - /usr/ports/security/ipsec-tools
ipsec-tools-7.0 (racoon)
/usr/local/etc/racoon/psk.txt
<RTX-Gloval-IP> [tab] <PassWord>
/usr/local/etc/racoon/racoon.confpath certificate "/usr/local/etc/racoon/certs";
path pre_shared_key "/usr/local/etc/racoon/psk.txt" ;
path certificate "/usr/local/etc/cert" ;
log notify; #debug
listen {
<FreeBSD-Gloval-IP> [500];
}
remote <RTX-Gloval-IP> {
exchange_mode main;
doi ipsec_doi;
nonce_size 16;
lifetime time 28800 sec;
initial_contact on;
situation identity_only;
my_identifier address "<FreeBSD-Gloval-IP>";
peers_identifier address "<RTX-Gloval-IP>";
mode_cfg on;
generate_policy on;
ike_frag on;
passive off;
support_proxy on;
proposal_check obey;
proposal {
encryption_algorithm 3des;
hash_algorithm sha1;
authentication_method pre_shared_key ;
dh_group 2 ;
}
}
sainfo address <FreeBSD-Local-Net>/24 any address <RTX-Local-Net>/24 any {
pfs_group 2;
lifetime time 28800 sec;
encryption_algorithm 3des ;
authentication_algorithm hmac_sha1 ;
compression_algorithm deflate;
}
sainfo address <FreeBSD-Gloval-IP> any address <RTX-Gloval-IP> any {
pfs_group 2;
lifetime time 28800 sec;
encryption_algorithm 3des ;
authentication_algorithm hmac_sha1 ;
compression_algorithm deflate;
}
YAMAHA RTX1500/1200/1100
# tunnel 2を使用の場合
ip route <FreeBSD-Local-Net>/24 gateway tunnel 2
tunnel select 2
ipsec tunnel 102
ipsec sa policy 102 2 esp 3des-cbc sha-hmac
ipsec ike always-on 2 on
ipsec ike encryption 2 3des-cbc
ipsec ike group 2 modp1024
ipsec ike hash 2 sha
ipsec ike local address 2 <RTX-Gloval-IP>
ipsec ike local id 2 <RTX-Gloval-IP>
ipsec ike log 2 key-info message-info payload-info
ipsec ike negotiate-strictly 2 off
ipsec ike pfs 2 on
ipsec ike pre-shared-key 2 text suita2kudan
ipsec ike remote address 2 <FreeBSD-Gloval-IP>
ipsec ike remote id 2 <FreeBSD-Gloval-IP>
tunnel enable 2