確かめたことなど。

240ポート

ルータは WSR-1166DHPL。
同一接続先IPv4+同一ポートに連続アクセスすると、241回目につまり、約30秒後にぽつぽつアクセスできるようになる。
どうも240ポートの中から回収されたステートのポートを引けるという訳でもなさそうで
15グループの1つの、16ポートの中からしか空を調べていないのかもしれない気がする。

FreeBSD 直付け

gif トンネルを BR まで張れば

curl --local-port 使えるポート http://hoge とすれば、正常にレスポンスは返ってくる。

問題は NAT(ポート先の 16個*15グループ 指定が出来るもの)なのだけれど。。。

また ping も不可だった。 RFC7597

pf

nat 先のポート指定が不十分。レンジは可能だが、レンジ*15 というのが出来ない。
nat on gif0 from any to any -> xxx.xxx.xxx.xxx port { xxx:xxx, xxx:xxx } # { } が不可
1つのレンジのみで動かしてみると、使えはするがすぐ(16個で)詰まる。

probability も nat に使えない。
nat on gif0 from any to any probability 6% -> xxx.xxx.xxx.xxx port xxx:xxx # probability は使えない

tagged は使えるが、nat ルールより先に tag することが出来ない。
pass out on gif0 tag group1 6% # これが先に評価されれば。。。OpenBSD なら pass nat-to が使える?
nat on gif0 from any to any tagged group1 -> xxx.xxx.xxx.xxx port xxx:xxx

ipfw

nat 先にポート指定がそもそも出来ない。tag や skipto や評価順は柔軟なんだけど。。。

ipf

nat 先にポート指定はレンジで出来るが、15グループというのが同じく無理。

その他

効率的なのは 240ポート から空きを探せることだと思うけど
WSR-1166DHPL も挙動からして Linuxのiptables例 のように
15グループへは $seq%15 やラウンドロビンかもしれない。

前回 で速度改善したものの、最後の図だと 2019-10 以前はもっと速かった。

月ooo円の VPS に gifトンネル を掘ってみたところ、以前以上に改善した。(一時間毎の谷は speedtest の実行が重なってた)

JPNE MAP-E だと、まだQoSされているということかな。

一応設定は。

# VPS側
> ifconfig gif0 create
> ifconfig gif0 inet6 tunnel $vps_ipv6 $client_ipv6 mtu 1460
> ifconfig gif0 alias $vps_ipv4/24 $client_ipv4
> grep nat /etc/pf.conf
nat on $ext_if from $vps_ipv4/16 to any -> ($ext_if)

# クライアント側
> ifconfig gif0 create
> ifconfig gif0 inet6 tunnel $client_ipv6 $vps_ipv6 mtu 1460
> ifconfig gif0 alias $client_ipv4/24 $vps_ipv4
> route add default $vps_ipv4

DNS などの設定は dhcp6c を使っても、使わなくても。

MAP-E だけど、大量のコネクションを張るプロセスが動いていると、Webブラウザの操作も支障が出るほどモタついた。。。
ルータ(WSR-1166DHPL) によるのか分からないけど。
ポートセービングIPマスカレード 対応のルータなら改善するのかな?
MAP-E詳細 P94 に下のようにあるのだけど、同一接続先は多くはないし、該当していないと思うんだけどな。。。

誤解されがちな点として、ポートの枯渇が発生するのは、「同一宛先IPv4アドレスかつ同一宛先ポートに対して多数の通信を行った場合のみ」です。MAP-EにおいてIPv4 NATで変換される通信セッションは、5タプルと呼ばれる5つの要素(通信プロトコル、宛先IPv4アドレス、送信元IPv4アドレス、宛先ポート、送信元ポート)によって識別されます。送信元ポート以外の4つの要素がすべて同じ状態で、送信元ポートの差異によってしか識別できない通信が極端に多くなってしまった状態が、MAP-Eにおける「ポートの枯渇」です。

仮にタプルが同一だとすると 16×15=240ポート が上限ということか。

おまけ client -> vps 間の iperf

ルータ:WSR-1166DHPL より 直付け のほうが若干速い。

# ルータ:WSR-1166DHPL ########################################################
# /usr/local/bin/iperf3 -c $vps_ip6
Connecting to host $vps_ip6, port 5201
[  5] local $client_ip6 port 63214 connected to $vps_ip6 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  8.07 MBytes  67.7 Mbits/sec    0    154 KBytes
[  5]   1.00-2.00   sec  9.26 MBytes  77.7 Mbits/sec    0    223 KBytes
[  5]   2.00-3.00   sec  9.10 MBytes  76.3 Mbits/sec    1   1.39 KBytes
[  5]   3.00-4.00   sec  9.15 MBytes  76.9 Mbits/sec    1    211 KBytes
[  5]   4.00-5.00   sec  9.18 MBytes  77.0 Mbits/sec    0    266 KBytes
[  5]   5.00-6.00   sec  9.25 MBytes  77.6 Mbits/sec    0    311 KBytes
[  5]   6.00-7.00   sec  9.27 MBytes  77.8 Mbits/sec    0    352 KBytes
[  5]   7.00-8.00   sec  9.05 MBytes  75.9 Mbits/sec    2    236 KBytes
[  5]   8.00-9.00   sec  9.17 MBytes  77.0 Mbits/sec    2    172 KBytes
[  5]   9.00-10.00  sec  9.11 MBytes  76.3 Mbits/sec    1   1.39 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  90.6 MBytes  76.0 Mbits/sec    7             sender
[  5]   0.00-10.02  sec  89.9 MBytes  75.3 Mbits/sec                  receiver

iperf Done.

# /usr/local/bin/iperf3 -c $vps_ip4
Connecting to host $vps_ip4, port 5201
[  5] local $client_ip4 port 63316 connected to $vps_ip4 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  6.52 MBytes  54.7 Mbits/sec   12   68.8 KBytes
[  5]   1.00-2.00   sec  8.61 MBytes  72.2 Mbits/sec    0    170 KBytes
[  5]   2.00-3.00   sec  8.30 MBytes  69.6 Mbits/sec    2    125 KBytes
[  5]   3.00-4.00   sec  8.40 MBytes  70.5 Mbits/sec   16    112 KBytes
[  5]   4.00-5.00   sec  8.38 MBytes  70.3 Mbits/sec   16   64.8 KBytes
[  5]   5.00-6.00   sec  8.53 MBytes  71.5 Mbits/sec    4    141 KBytes
[  5]   6.00-7.00   sec  8.41 MBytes  70.5 Mbits/sec    5   75.9 KBytes
[  5]   7.00-8.00   sec  8.42 MBytes  70.6 Mbits/sec    5   56.4 KBytes
[  5]   8.00-9.00   sec  8.49 MBytes  71.2 Mbits/sec    1    116 KBytes
[  5]   9.00-10.00  sec  8.46 MBytes  71.0 Mbits/sec    5   92.4 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  82.5 MBytes  69.2 Mbits/sec   66             sender
[  5]   0.00-10.01  sec  82.3 MBytes  69.0 Mbits/sec                  receiver

iperf Done.

# /usr/local/bin/iperf3 -c $vps_ip4_tinc
Connecting to host $vps_ip4_tinc, port 5201
[  5] local $client_ip4_tinc port 15841 connected to $vps_ip4_tinc port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  1.82 MBytes  15.3 Mbits/sec    0   65.8 KBytes
[  5]   1.00-2.00   sec  5.81 MBytes  48.7 Mbits/sec    3    110 KBytes
[  5]   2.00-3.00   sec  8.02 MBytes  67.3 Mbits/sec   17   61.5 KBytes
[  5]   3.00-4.00   sec  7.01 MBytes  58.8 Mbits/sec   22    137 KBytes
[  5]   4.00-5.00   sec  8.25 MBytes  69.2 Mbits/sec    1    101 KBytes
[  5]   5.00-6.00   sec  3.78 MBytes  31.7 Mbits/sec   17   11.8 KBytes
[  5]   6.00-7.00   sec  1.95 MBytes  16.4 Mbits/sec   10   9.14 KBytes
[  5]   7.00-8.00   sec  1.35 MBytes  11.3 Mbits/sec    5   19.6 KBytes
[  5]   8.00-9.00   sec  2.15 MBytes  18.0 Mbits/sec    7   39.4 KBytes
[  5]   9.00-10.00  sec  2.47 MBytes  20.7 Mbits/sec    9   19.7 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  42.6 MBytes  35.7 Mbits/sec   91             sender
[  5]   0.00-10.01  sec  42.2 MBytes  35.4 Mbits/sec                  receiver

iperf Done.

# 直付け #####################################################################
# /usr/local/bin/iperf3 -c $vps_ip6
Connecting to host $vps_ip6, port 5201
[  5] local $client_ip6 port 18121 connected to $vps_ip6 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  8.53 MBytes  71.5 Mbits/sec    0    164 KBytes
[  5]   1.00-2.00   sec  9.49 MBytes  79.6 Mbits/sec    0    231 KBytes
[  5]   2.00-3.00   sec  9.47 MBytes  79.4 Mbits/sec    0    284 KBytes
[  5]   3.00-4.00   sec  9.45 MBytes  79.3 Mbits/sec    0    329 KBytes
[  5]   4.00-5.00   sec  9.47 MBytes  79.5 Mbits/sec    0    366 KBytes
[  5]   5.00-6.00   sec  9.40 MBytes  78.9 Mbits/sec    0    402 KBytes
[  5]   6.00-7.00   sec  9.39 MBytes  78.7 Mbits/sec    0    434 KBytes
[  5]   7.00-8.00   sec  9.37 MBytes  78.6 Mbits/sec    0    465 KBytes
[  5]   8.00-9.00   sec  9.37 MBytes  78.6 Mbits/sec    0    493 KBytes
[  5]   9.00-10.00  sec  9.36 MBytes  78.6 Mbits/sec    0    520 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  93.3 MBytes  78.3 Mbits/sec    0             sender
[  5]   0.00-10.05  sec  93.0 MBytes  77.6 Mbits/sec                  receiver

iperf Done.

# /usr/local/bin/iperf3 -c $vps_ip4
Connecting to host $vps_ip4, port 5201
[  5] local $client_ip4 port 18107 connected to $vps_ip4 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  7.76 MBytes  65.1 Mbits/sec    0    148 KBytes
[  5]   1.00-2.00   sec  8.82 MBytes  74.0 Mbits/sec    1    167 KBytes
[  5]   2.00-3.00   sec  8.77 MBytes  73.5 Mbits/sec    2    152 KBytes
[  5]   3.00-4.00   sec  8.82 MBytes  74.0 Mbits/sec    0    219 KBytes
[  5]   4.00-5.00   sec  8.78 MBytes  73.7 Mbits/sec    0    270 KBytes
[  5]   5.00-6.00   sec  8.76 MBytes  73.5 Mbits/sec   39   96.4 KBytes
[  5]   6.00-7.00   sec  8.78 MBytes  73.7 Mbits/sec    0    185 KBytes
[  5]   7.00-8.00   sec  8.79 MBytes  73.7 Mbits/sec    0    243 KBytes
[  5]   8.00-9.00   sec  8.78 MBytes  73.7 Mbits/sec   61    145 KBytes
[  5]   9.00-10.00  sec  8.79 MBytes  73.7 Mbits/sec    0    214 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  86.9 MBytes  72.9 Mbits/sec  103             sender
[  5]   0.00-10.02  sec  86.7 MBytes  72.5 Mbits/sec                  receiver

iperf Done.

おまけ dhcp6c

# dhcp6c -d -f -D -i ue0
Mar/28/2020 16:35:13: extracted an existing DUID from /var/db/dhcp6c_duid: XX
Mar/28/2020 16:35:13: reset a timer on ue0, state=INIT, timeo=0, retrans=891
Mar/28/2020 16:35:14: Sending Information Request
Mar/28/2020 16:35:14: a new XID (xxxxxx) is generated
Mar/28/2020 16:35:14: set client ID (len 14)
Mar/28/2020 16:35:14: set elapsed time (len 2)
Mar/28/2020 16:35:14: send information request to XX
Mar/28/2020 16:35:14: reset a timer on ue0, state=INFOREQ, timeo=0, retrans=991
Mar/28/2020 16:35:14: receive reply from XX on ue0
Mar/28/2020 16:35:14: get DHCP option server ID, len 10
Mar/28/2020 16:35:14:   DUID: XX
Mar/28/2020 16:35:14: get DHCP option client ID, len 14
Mar/28/2020 16:35:14:   DUID: XX
Mar/28/2020 16:35:14: get DHCP option DNS, len 32
Mar/28/2020 16:35:14: get DHCP option domain search list, len 25
Mar/28/2020 16:35:14: get DHCP option NTP server, len 32
Mar/28/2020 16:35:14: dhcp6c Received INFOREQ
Mar/28/2020 16:35:14: nameserver[0] XX
nameserver[0] XX
Mar/28/2020 16:35:14: nameserver[1] XX
nameserver[1] XX
Mar/28/2020 16:35:14: Domain search list[0] flets-east.jp.
Domain search list[0] flets-east.jp.
Mar/28/2020 16:35:14: Domain search list[1] iptvf.jp.
Domain search list[1] iptvf.jp.
Mar/28/2020 16:35:14: NTP server[0] XX
NTP server[0] XX
Mar/28/2020 16:35:14: NTP server[1] XX
NTP server[1] XX
Mar/28/2020 16:35:14: removing an event on ue0, state=INFOREQ
Mar/28/2020 16:35:14: got an expected reply, sleeping.
Mar/28/2020 16:35:14: exiting

都内 VDSL GMOBB ONU:VH-1004ES

左は フレッツ光マンション接続サービス (1時間おき) PC直付け
右は フレッツ光v6プラス接続サービス (5分おき) ルータ:WSR-1166DHPL
真ん中の欠落はたまたま。

v6プラス概要 https://www.jpne.co.jp/service/v6plus/
MAP-E詳細 https://www.jpne.co.jp/ebooks/v6plus-ebook.pdf

munin の plugin はこんなん。

#!/usr/local/bin/perl

#%# family=auto
#%# capabilities=autoconf suggest

use strict;
use warnings;
use feature ":5.10";
use Munin::Plugin;
use List::Util qw(first);
use File::Spec;

my $fib = ($0 =~ /_fib(\d+)/) && $1;
my $bin = do {
    my @candidates = (
        "/usr/local/bin/speedtest-cli",
    );
    first { -x $_ } @candidates;
};

sub fibs {
    my @fibs;
    my $max = `sysctl -n net.fibs`;
    for my $f (0..$max-1) {
        if ($f == 0) {
            my $mpd_enable = `sysrc -n mpd_enable` =~ /YES/i ? 1 : 0;
            if ($mpd_enable) {
                push @fibs, "fib$f";
            }
        }
        else {
            if (`setfib $f netstat -nr | grep default`) {
                 if ( $^O =~ /freebsd/ ) {
                      if ( system("setfib $f ping -o -t 3 8.8.8.8 >/dev/null") == 0 ) {
                            push @fibs, "fib$f";
                      }
                 }
                 else {
                      push @fibs, "fib$f";
                 }
            }
        }
    }
    @fibs;
}

if (@ARGV and $ARGV[0] eq "autoconf") {
    my @errors;
    my @fibs = fibs();
    unless (@fibs) {
        push @errors, "no fibs.";
    }
    unless ($bin) {
        push @errors, "speedtest-cli not found.";
    }

    if (@errors) {
        say "no (@{[ join ', ', @errors ]})";
    }
    else {
        say "yes";
    }
    exit 0;
}

if (@ARGV and $ARGV[0] eq 'suggest') {
    say $_ for fibs();
    exit 0;
}

if (@ARGV and $ARGV[0] eq "config") {
    say "graph_title speedtest-cli (fib$fib)";
    say "graph_args --base 1000";
    say "graph_category speedtest";
    say "graph_info 1時間ごとに計測します。";
    say "upload.type GAUGE";
    say "upload.label Upload";
    say "upload.min 0";
    say "download.type GAUGE";
    say "download.label Download";
    say "download.min 0";
    exit 0;
}

my $download = "U";
my $upload   = "U";
eval {
    my $statefile = File::Spec->catfile($ENV{MUNIN_PLUGSTATE}, "speedtest_fib$fib.state");

    if (-s $statefile) {
        my $out = do { local $/; open(my $fh, "<", $statefile); <$fh> };

        if ($out =~ /Download: ([\d.]+) Mbit.*Upload: ([\d.]+) Mbit/s) {
            $download = $1*1000*1000;
            $upload   = $2*1000*1000;
        }
        else {
            die "unexpected $bin output. $out";
        }
    }

    #my $boundary = int(time/3600)*3600-5*60;
    my $boundary = time;
    if (!-s $statefile or (stat($statefile))[9] < $boundary) {
        unless (fork) {
            # https://github.com/munin-monitoring/munin/search?q=run_as_child&unscoped_q=run_as_child
            open STDOUT, '>>/dev/null';
            open STDERR, '>>/dev/null';

            my $tmp = "$statefile.tmp";
            open my $fh, ">", $tmp or die $!;
            use Fcntl qw(:flock);
            if ( flock($fh, LOCK_EX) ) {
                system("sysctl net.inet.icmp.icmplim_output=0 >/dev/null");
                system("setfib $fib $bin --simple > $tmp") == 0 or die $!;
                system("mv $tmp $statefile") == 0 or die $!;
                system("sysctl net.inet.icmp.icmplim_output=1 >/dev/null");
            }
            exit 0;
        }
    }
};
die $@ if $@;

say "download.value $download";
say "upload.value $upload";
exit 0;

__END__

% speedtest-cli  --simple
Ping: 15.214 ms
Download: 447.64 Mbit/s
Upload: 104.26 Mbit/s

夕方〜0時頃の速度低下で5Mbpsも出ないことがあるのは避けられたが、それでも以前はこんなんだった筈。

BlueOnyx-5209R (CentOS7) のデフォルトはこうだと思うのだが

# cat /etc/security/pam_abl.conf
db_home=/var/lib/pam_abl
host_db=/var/lib/pam_abl/hosts.db
host_purge=1d
host_rule=*:30/1h
#user_db=/var/lib/pam_abl/users.db
user_purge=1d
user_rule=*:3/1h
host_clear_cmd=[logger] [clear] [host] [%h]
host_block_cmd=[logger] [block] [host] [%h]
user_clear_cmd=[logger] [clear] [user] [%u]
user_block_cmd=[logger] [block] [user] [%u]
limits=1000-1200
host_whitelist=127.0.0.1/32
user_whitelist=admin

host_block_cmd はデフォルトで機能していない

下のようにしないと、loggerの起動ができていないようだ。
host_block_cmd=[/bin/logger] [block] [host] [%h]

追記: BlueOnyx-5208R (CentOS6) でも同様だった

-w と -f

-f は失敗をシミュレートするだけで、blacklistに入れる訳ではないようだ。(マニュアルの通りなんだけど)

# cat /etc/security/pam_abl.conf
...
host_rule=*:3/1h
host_clear_cmd=[/bin/logger] [clear] [host] [%h]
host_block_cmd=[/bin/logger] [block] [host] [%h]
...

# tail -f /var/log/message | perl -nlE '/block|clear/ and print'
...

# pam_abl -f -H xxx-xxx-xxx-xxx.isp.jp
# pam_abl -f -H xxx-xxx-xxx-xxx.isp.jp
# pam_abl -f -H xxx-xxx-xxx-xxx.isp.jp <- ここで Mar 21 10:16:50 host1 root: block host xxx-xxx-xxx-xxx.isp.jp
# pam_abl -w -H xxx-xxx-xxx-xxx.isp.jp <- ここで Mar 21 10:16:50 host1 root: clear host xxx-xxx-xxx-xxx.isp.jp

pam_abl.conf の変更を反映させるには service sshd restart などとする必要はない

試してみた限り、そうっぽい。

マッチが PTR か IP かは service 依存

ssh の場合は PTR。ftp の場合は IP だった。以下はsshの場合。

IP 123.123.123.123
逆引き 123.123.123.123.isp.jp だとすると
IPが blacklist に入っていていても通過する。

ユーザーが存在しない場合に -f されるかは service 依存

ssh の場合は 存在しないユーザー@host しても -f はカウントされる。
ftp の場合は 存在しないユーザー@host しても -f はカウントされない。

service | IP or PTR | 存在しないユーザーの場合
--------+-----------+-------------------------
ssh     | PTR       | カウントされる
ftp     | IP        | カウントされない
pop3    | IP        | カウントされる
imap    | IP        | カウントされる

SMTP-AUTH でカウントされない問題

smtp_auth は pam_abl が効いていないようだ。
saslauthd を shadow -> pam にしてもだめだ。
どうやら 2011年 ぐらいから指摘されているようだけど、まだ取り込まれていないようだ。。。
https://github.com/cyrusimap/cyrus-sasl/issues/346

sendmail の LogLevel を上げれば ip は拾えるようだ。userは拾えないけど。。。
https://unix.stackexchange.com/questions/480000/how-is-sendmail-smtp-authentication-logging-controlled

CentOS7 からは postfix なので BlueOnyx(sendmail) の場合だけど
そもそも1コネクションで複数回 AUTH PLAIN 文字列 が試行されていても、ログに残らない。。。試行にラグは強制されるけど

fail2ban の filter.d/sendmail-reject.conf で aggressive を使えば
[xxx.xxx.xxx.xxx] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA
が拾えるようではある。

これでだいたい同じになるはず。少し違うけど。

template(name="fail2ban_log_like" type="list") {
    property(name="timereported" dateformat="year")
    constant(value="-")
    property(name="timereported" dateformat="month")
    constant(value="-")
    property(name="timereported" dateformat="day")
    constant(value=" ")
    property(name="timereported" dateformat="hour")
    constant(value=":")
    property(name="timereported" dateformat="minute")
    constant(value=":")
    property(name="timereported" dateformat="second")
    constant(value=",")
    property(name="timereported" dateformat="subseconds" position.to="3")
    constant(value=" ")

    property(name="syslogtag" position.to="23" fixedwidth="on")

    property(name="msg")
    constant(value="\n")
}
if $programname startswith 'fail2ban' then action( type="omfile" file="/var/log/fail2ban.log" template="fail2ban_log_like" )

CentOS と比べ FreeBSD は Ban ログが吐かれないなぁと思ってたら libblacklist が効いているようだ。
意外と postfix などの ports にもパッチが当たってるし、事前に防げていたと。。。
pam_abl は fail2ban よりデフォルトの設定だと緩いみたいだし、認証が失敗するようになだけっぽい。
例えば ssh だと、下で again. 後に1秒程度のラグがあるのが正常な試行で、ラグが無いのが既にpam_abl blacklist入りしてしまっている。

# ssh host
user@host's password: 
Permission denied, please try again.
user@host's password: 

http://192.168.xx.xxx:444 などとして管理画面にアクセスすると

Fatal error: Call to undefined method System::getConfig() in /usr/sausalito/ui/chorizo/ci/application/libraries/CCE.php on line 123

となる。

どうやら http://mail.blueonyx.it/pipermail/blueonyx/2015-August/055331.html らしく

# cat /etc/admserv/php.ini
date.timezone = 'Asia/Tokyo'

となっている。yum update したときに、なにかの rpm が置き換えたのだろうか

# yum reinstall base-admserv-glue
# wc /etc/admserv/php.ini 
1083  5960 38885 /etc/admserv/php.ini
# tail /etc/admserv/php.ini

; configuration for sausalito
include_path = ".:/usr/sausalito/ui/chorizo/ci/application/libraries:/usr/sausalito/ui/web"
register_globals = Off
register_long_globals = Off
extension=cce.so
extension=i18n.so
;cracklib extension to check for secure passwords:
extension=crack.so
date.timezone = 'America/New_York'

# service admserv restart

あれ date.timezone 戻ってる。

# /usr/sausalito/constructor/base/vsite/admserv_php_ini_timezone_set.pl
# tail /etc/admserv/php.ini

; configuration for sausalito
include_path = ".:/usr/sausalito/ui/chorizo/ci/application/libraries:/usr/sausalito/ui/web"
register_globals = Off
register_long_globals = Off
extension=cce.so
extension=i18n.so
;cracklib extension to check for secure passwords:
extension=crack.so
date.timezone = 'Asia/Tokyo'

# service admserv restart
perl adv
perl adv