plamo4.21->network
戻るボタンで戻りませう。

外へつなぐ

PPxP

この項目は、まだplamo3.2で使っています。plamo3.2ベースでよろしかったら、 こちらを御覧下さい。

squid

ウェブキャッシュ。実はISDN時代の名残だったり。 最近はそれなりに速い回線が使えるようになったので、あえて手元でキャッシュしなくても速度面では問題ない気がします。

セットアップから起動まで

まずはコンパイル

$ ./configure
$ make all
# make install

設定ファイルを編集

/usr/local/squid/etc/squid.conf になります。 いま、使っているのはこんな感じ。


#
# squid.conf
# 一部、伏せ字になってます。

# ポート番号
http_port 3128

#cache_peer [hostname] {parent|sibling} [proxy_port] [icp_port]
#cache_mem 8 MB

# キャッシュ領域
#cache_dir ufs [directory-name] [diskspace(MB)] [?] [?]
cache_dir ufs /home/squid/cache 100 16 256

# この文字列を含むURLはキャッシュしない
hierarchy_stoplist cgi-bin ?

# ログファイル
cache_log /home/squid/cache.log
cache_access_log /home/squid/access.log
cache_store_log none

# ログファイルのローテーションサイクル(ログファイル数)
logfile_rotate 10

# 代替ユーザ名/代替グループ(起動後に別ユーザになる)
cache_effective_user squid
cache_effective_group users

# アドレス→名前 の定義
acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1
acl localnet src xxx.xxx.xxx.xxx/xx

# 名前→アクセス制御
http_access allow localhost
http_access allow localnet
http_access deny all

# 申告アドレス (管理者登録/FTPパスワード)
cache_mgr xxxxxxx@xxxxxxxxxxx
ftp_user xxxxxxx@xxxxxxxxxxx

アクセス制御は、まずは全部を拒否したうえで一部を許可するかたちにしてます。 hosts.deny hosts.allow と同じ考え方ですね。

申告アドレスは、squidが他のサーバに接続する時にメールアドレスを尋ねられたとき、squidが相手に回答するアドレスです。 なんでもいいのかも知れませんし、いい加減な文字列だと接続先から拒否されるかもしれません。

ユーザsquidを作る

squidのためのユーザ名を作成して、 設定ファイルの代替ユーザ名で使えるディレクトリを作ります。

キャッシュやログを書き込むディレクトリの所有者名も、このユーザにします。

キャッシュ領域の初期化

ふつーに起動する前に、これをやります。 # /usr/local/squid/sbin/squid -z

起動

とりあえず、これでつかえるはず。 # /usr/local/squid/sbin/squid & 機体の起動時には起動するように、rc.localに書いておくとよいです。

周辺設定

ウェブブラウザ

接続の設定で、プロキシサーバの設定をします。
・アドレスは、squidを動かしている機体のアドレス。自機だったらlocalhostでも可。
・ポートは、3128 ( squid.confで、別のを設定していたらその番号 )

ログのローテート

たまにやります。定期的に実行するようにcronに設定してしまうのがいいみたい。 # /usr/local/squid/sbin/squid -k rotate

その他めも

オプション -D をつけて起動すると、起動時にDNSテストをせずオフライン状態でもキャッシュ内容を読み出せるようになる。 ( つけてない時には、一旦は目標のサーバにアクセスしてキャッシュとの比較を必ず行なう、ということなんですかね? )

隣のPCに繋ぐ

rsync

ここでは、お家ネットワーク内でのコピーをやってみます。 ノート機にデータを写して旅行先にデータを持っていくときとか。

設定

サーバ側の設定が必要です。 使用頻度が低いので、inetdを介して使うことにします。

また、sshやrshを介さずに使うことにします。これは、sshやrshを普段は使っていない(使う用事がないので止めている)ためです。 この場合、rsyncはTCPの873ポートを使います。

このページを参考にしました。

/etc/services

inetd経由で起動するために/etc/servicesでポート番号を設定します

rsync 873/tcp

inetdの設定

/etc/inetd.confにrsyncを追加します

rsync  stream tcp nowait root /usr/bin/rsync rsyncd --daemon

設定ファイル

rsyncd.confを作成します。 接続するユーザの制限とパスワードを使用するようにしています。

uid = root
gid = root
use chroot = no
max connections = 4
pid file = /etc/rsyncd.pid

[work] '(接続名)
	path = (この接続で起点となるディレクトリ)
	comment = (この接続についての説明書き)
	uid = (この接続で動作するときのユーザー)
	gid = (この接続で動作するときのグループ)
	auth users = (接続を許可するユーザー)
	secrets file = /etc/rsyncd.secrets(この接続のためのパスワードファイル)
	strict modes = false (rsyncd.secretに接続するためのチェックを省略)
	hosts allow = (接続を許可するクライアント機)
	read only = (サーバ側への書き込み許可)

rsyncd.confのsecrets fileに指定した名前のファイルを作成し、 rsync接続用のパスワードを設定します。

(username):(password)

使い方

こちらに書きました。


samba 2.2

ソースから $ ./configure → $ make → # make install としました。

設定

設定ツール

swatは使いません。一回設定が決まったら変更することもありませんので。

smb.conf

/usr/local/samba/lib/smb.confです。 無かったらソースのexampleディレクトリから持ってくるとか、作るとか。

設定ファイルはマシン移行の時に忘れずに持っていきたいので、 /etcにファイルを作成して、リンクを貼るようにしてます。

# cd /usr/local/samba/lib
# ln -s /etc/smb.conf smb.conf

vi等で書き換えたら、smb.confの文法チェックをしておきます。

# /usr/local/samba/bin/testparm

ユーザー名・パスワードの登録

ファイル共有のユーザー登録をします

# cd /usr/local/samba/bin
# ./smbpasswd -a [username]

起動の登録

システム起動時に立ち上げるだけなので、rc.localで指定します。

/usr/local/samba/smbd -D
/usr/local/samba/nmbd -D


tsushiro.s, 2004-2006. [→戻る]