ダウンロードして展開する
# wget ftp://ftp.delegate.org/pub/DeleGate/delegate9.9.7.tar.gz
# tar zxvf delegate9.9.7.tar.gz
# cd delegate9.9.7
# make ← 途中で管理者宛のメールアドレスを聞かれるので入力してEnterを押す
作成された実行ファイルをコピーする
# cp src/delegated /usr/local/sbin/
コピーした実行ファイルにハードリンクを貼る
# ln /usr/local/sbin/delegated /usr/sbin/delegated
設定ファイル格納用のディレクトリを作成する
# mkdir /etc/delegate
キャッシュ格納用ディレクトリを作成してその他フォルダのパーミッションを設定する
# mkdir /var/spool/delegate-nobody/cache
# chown nobody:nobody /var/spool/delegate-nobody
# chown nobody:nobody /var/spool/delegate-nobody/*
# chmod 755 /var/spool/delegate-nobody
# chmod 755 /var/spool/delegate-nobody/*
serviceコマンドで管理できるように起動ファイルを作成する
# vi /etc/init.d/delegated
#!/bin/sh
#
# chkconfig: 35 90 10
# description: delegated ftp proxy
# processname: delegated
# config: /etc/delegate/*.conf
DELEGATE=/usr/sbin/delegated
CONFDIR=/etc/delegate
DGROOT=/var/spool/delegate-nobody
if [ ! -x $DELEGATE ]; then
echo -n $"$DELEGATE does not exist."; warning; echo
exit 0
fi
if [ ! -r $CONFDIR ]; then
echo -n $"$CONFDIR does not exist."; warning; echo
exit 0
fi
RETVAL=0
start() {
echo -n $"Starting up Http DeleGate daemon: "
for CONFIG in $CONFDIR/*.conf ; do
$DELEGATE DGROOT=$DGROOT +=$CONFIG
echo
done
return 0
}
stop() {
echo -n $"Shutting down Http DeleGate daemon: "
for CONFIG in $CONFDIR/*.conf ; do
$DELEGATE DGROOT=$DGROOT +=$CONFIG -Fkill
echo
done
return 0
}
restart() {
stop
start
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
Proxyの設定例
※ あまり紹介しているところもなくマニュアルを読みながらの設定なので色々他のサイトの設定例とは違うかも・・・・
あと設定に実用的な意図はありません。リバースプロキシ(キャッシュサーバ)の動作確認だけです。
# ポート番号
-P8080
SERVER=http
# オリジナルサーバとの関連性についての設定
MOUNT="/* https://www.orsx.net/* vhost=-www1.orsx.net"
REACHABLE=27.96.63.202
MOUNT="/* http://www.xrsp.net/* vhost=-www2.orsx.net"
REACHABLE=27.96.63.203
RELIABLE="*" # 接続元の制限をしない
CACHE=do # キャッシュサーバとしての機能を持たすためキャッシュを取る
EXPIRE=3d # キャッシュの期限を3日と指定
CRON="0 2 * * * -expire 30d" # ログテーションを30日と指定
# ログフォーマット
CACHEFILE='$[server:%P]/$[hash:%H]/$[server:%L/%p]'
# ログファイルの形式
LOGFILE='${LOGDIR}/${PORT}[date+%d]'
PROTOLOG='${LOGDIR}/${PORT}/[date+%d].${PROTO}'
CONNECT=c,d:*:*:* # キャッシュを調べてからサーバに取りに行く
MOUNT="/favicon.ico =" #ファビコンを勝手に返さない
# エラーページにオリジナルのメッセージを表示する
MOUNT="/-/* /var/spool/delegate-nobody/tmp/forbidden.dhtml"
# Delegateのバージョンを非表示にする
DGSIGN="V.x.x/Y.x.x"
# 管理者の連絡先
ADMIN=orbit@mail.ほげほげ.net
0 Comments.