Asteriskのパーミッション設定

2009年2月3日 (火) 18:44時点におけるTakahashi (トーク | 投稿記録)による版 (Zaptelの調整)

Asteriskをroot起動するのは一番、簡単な方法ですがセキュリティの観点からは、あまり好ましくありません。そこでAsteriskを特定のUID/GIDで起動する方法について解説します。

目次

ユーザ/グループの作成

ディストリビューションにあった方法で、ユーザとグループを作成してください。ここでは、それぞれの名前をいずれも asterisk と仮定して説明します。

Zaptelの調整

AsteriskがZaptelデバイスにアクセスするためユーザ/グループがasteriskで/dev/zap配下にアクセスできなくてはいけません。Zaptel udevのページを参照してください。
udevを使用していない場合には単純に以下の方法で/dev/zap下のパーミッションを変更しておきます。

# chown -R asterisk:asterisk /dev/zap

DAHDIの調整

DAHDIのパーミッション調整はDAHDIインストールのページを見てください。

ディレクトリ/ファイルのパーミッション

以下のようにして変更しておきます。

# chown -R asterisk:asterisk /var/lib/asterisk
# chown -R asterisk:asterisk /var/log/asterisk
# chown -R asterisk:asterisk /var/spool/asterisk
# chown -R asterisk:asterisk /etc/asterisk
# chmod -R u=rwX,g=rX,o= /var/lib/asterisk 
# chmod -R u=rwX,g=rX,o= /var/log/asterisk 
# chmod -R u=rwX,g=rX,o= /var/spool/asterisk 
# chmod -R u=rwX,g=rX,o= /etc/asterisk

Asteriskの起動

起動時にオプションをつけて行います。以下のようにします。

asterisk -U asterisk -G asterisk

-Uがユーザ名、-Gがグループ名です。もし、フォアグラウンド起動する場合には以下のようにします。

asterisk -U asterisk -G asterisk -vvvc

ディレクトリのパーミッションを変更した後には間違えてroot起動しないように注意してください。起動してしまうと/var/log/asterisk下のファイルのオーナがrootになってしまったりと困った事が起こります。その際にはパーミッション設定をやり直しましょう。

CLI

CLIで接続する場合には、rootで繋ぎに行っても問題はありません。