Solarisでは、デフォルトではユーザ名(アカウント名)の長さが8文字以下でないといけません。そのため、長いユーザ名をつける必要がある場合は、通常とは異なり、LDAPサーバを立ててそれを参照するように設定を変更します。
手順としてはけっこう単純。
1.Openldapをインストールする
2./etc/nsswitch.confで、ldapを参照するようにする
具体的な方法については、また記述していきます。(他のWebページにもたくさんあるけどね。)
tetsuの日記・雑記です。不定期に更新します。
Solarisでは、デフォルトではユーザ名(アカウント名)の長さが8文字以下でないといけません。そのため、長いユーザ名をつける必要がある場合は、通常とは異なり、LDAPサーバを立ててそれを参照するように設定を変更します。
手順としてはけっこう単純。
1.Openldapをインストールする
2./etc/nsswitch.confで、ldapを参照するようにする
具体的な方法については、また記述していきます。(他のWebページにもたくさんあるけどね。)
サーバでPOPとIMAPの2つが両方とも利用可能な場合、SpamAssassinのデフォルトの設定では都合が悪い場合があります。このサーバでは、下記のページを参考にしてサーバを構築していますが、ここでは片方だけが利用可能の場合のみ書かれているため、設定ファイルを修正して対応する必要があります。
[web] Fedoraで自宅サーバ構築
まず、POPとIMAPの場合でどのようにサーバの動作を変えるかを記述しておきます。
POP:スパムメールを受け取ったら、件名の先頭に [spam] を付加する。
IMAP:スパムメールを受け取ったら、Spam専用のフォルダに移動する。
SpamAssassinの動作するパッケージamavisd-newの設定ファイルは /etc/amavisd/amavisd.conf にあります。ここでの設定はサーバ上のユーザの共通の設定になってしまうので、ここではスパムの判定に関する設定だけを行い、スパムメールに対する処理は各ユーザで行うようにします。各ユーザでの処理を行うために、まずprocmailをインストールします。
procmailのインストールを行ったら、ユーザのホームディレクトリに「.procmailrc」ファイルを作成します。そのユーザがPOPを利用するのかIMAPを利用するのかで、ファイルの内容は変わります。
POPを利用するユーザの場合は、次のように記述します。
PATH=/bin:/usr/bin:/usr/sbin # procmailが使用するパス
LOGFILE=$HOME/procmail.log # ログファイル名
LOCKFILE=$HOME/.lockfile # ロックファイル名
MAILDIR=$HOME/Maildir # メール格納場所
DEFAULT=$MAILDIR/ # レシピにマッチしなかった場合の格納場所
SPAM=$MAILDIR/.Spam/
SUBJECT=`formail -c -xSubject:`
:0 Dfw :
*^X-Spam-Flag: YES
| formail -i "Subject: [spam] $SUBJECT"
次に、IMAPを利用するユーザの場合は、次のように記述します。
PATH=/bin:/usr/bin:/usr/sbin # procmailが使用するパス
LOGFILE=$HOME/procmail.log # ログファイル名
LOCKFILE=$HOME/.lockfile # ロックファイル名
MAILDIR=$HOME/Maildir # メール格納場所
DEFAULT=$MAILDIR/ # レシピにマッチしなかった場合の格納場所
SPAM=$MAILDIR/.Spam/
:0
*^X-Spam-Flag: YES
$SPAM
もし、procmailの設定を変更したい場合などは以下のURLが参考になると思います。(少し見づらいですが)
[web] Procmail の紹介とレシピの書き方
Solarisを最小構成でインストールしたとき、通常なら入っているはずのコマンドがなくてどうしようもなくなるときがあります。特に、ソフトウェアをコンパイルするためのCコンパイラが入っていない場合などは、かなりの支障をきたすことになります。そのような状況を打破するために、自分自身でコマンドのパッケージを取得してインストールすることになります。
まず、パッケージを入手するために、Sunfreeware.comに行ってダウンロードしてきます。
[web] sunfreeware.com
このページの右側にSolarisのバージョンとアーキテクチャを選択するリンクがありますので、これを選択します。もしアーキテクチャが分からない場合は、unameコマンドを用いて調べます。
すると、パッケージの一覧が表示されるので、ここでインストールしたいパッケージを選択します。
ダウンロードするファイルが「XXX-local.gz」であることを確認しましょう。ファイルを選択してダウンロードし、ファイルを展開します。それから後は、展開後のファイルを実行すればOKです。
サーバを管理していると、「そういや、このマシンのCPUスペックってどのくらいだっけ?」と思うときがあります。そんなときに、それを調べるコマンドを知っていると便利ですよね。わりと基本コマンドなんですが、僕の場合なんかだと普段あまり使わないので、度忘れすることもしばしば。そんなわけで、ここにメモとして残しておくことにします。
ここでいう基本スペックとは、CPUのクロック数、メモリ容量、HDD容量(また、その利用状況)のことを指すことにします。これらを調べるためには、以下のコマンドを利用します。
<CPU>
/usr/sbin/psrinfo -v
<メモリ>
/etc/prtconf | grep Memory
<HDD>
/usr/sbin/df -h
[web] solarisのスペックの確認 - @IT
最近のOP25Bの影響で、自宅サーバからメールを送信するにはプロバイダが提供する中継サーバを経由する必要がでてきました。僕のプロバイダはBiglobeなのですが、正式に中継サーバがサービス化したので、PostfixをSMTPクライアントとしてSASL認証させるように設定を変更しました。その変更点を別のエントリにメモしておきました。
[blog] PostfixをSMTPクライアントとしてSASL認証
最近のOP25Bの影響で、自宅サーバからメールを送信するにはプロバイダが提供する中継サーバを経由する必要がでてきました。僕のプロバイダはBiglobeなのですが、正式に中継サーバがサービス化したので、PostfixをSMTPクライアントとしてSASL認証させるように設定を変更しました。その変更点をメモしておきます。
まず、僕のサーバの環境を以下に記します。
OS : Fedora Core 6
MTA : Postfix 2.3
設定変更の手順としては、
(1)/etc/postfix/main.cf の設定を変更
(2)/etc/postfix/sasl_passwd を作成し、認証情報を記述
(3)sasl_passwd を db 化し、postfix を reload
となります。
/etc/postfix/main.cf は、次のように設定しました。ここでは中継サーバを smtpauth.biglobe.ne.jp、メールアドレスを mail@xxx.biglobe.ne.jp、POP用のパスワードを mailpasswd としていますが、プロバイダから通知された適切なものに置き換えて読んでください。
relayhost = [smtpauth.biglobe.ne.jp]:25
smtp_sasl_type = cyrus気をつけないといけないのが、smtp_sasl_xxx と smtpd_sasl_xxx は別物であるということです。前者の設定はSMTPクライアントとしてのSASL認証に使われますが、後者はSMTPサーバとしてのSASL認証に使われます。
次に、/etc/postfix/sasl_passwd を作成し、次のように記述します。saslpasswd の所有者は root で、パーミッションは600に設定しましょう。
/etc/postfix/sasl_passwd を作成したら、db化します。その後、postfix の設定を再読み込みすれば完了です。
参考にしたウェブページは以下のとおりです。
[blog] Postfix-saslでOP25B対策 - らるるのメモ帳
[blog] Vine3.2のPostfixでSASL認証 - おはよう。目覚めは眩しくて、悲しい...
[blog] 自宅サーバからeo光のSMTPサーバにメールをリレーする - Open the Next - Annex
[web] Postfix SASL Howto
研究室でpukiwikiの設定を変更することがあったので備忘録代わりにここに書いておきます。とは言っても、実際にしたのは他のブログに書いてあることをそのまま実行しただけなんだけどね。
[blog] pukiwikiでアップロードサイズの上限を変更する方法 - kh.log
実は、pukiwikiでアップロードできるファイルサイズを変更しようと思うと、phpの設定も変更しないといけません。もちろん、こっちの制限がすでに変更済みの場合はpukiwikiの設定の変更だけでなんとかなるんですが、そうでない場合はちょっと困りますよね。そんなときの対処方法はよく分かりません。
とりあえず、上のURLに書かれていたことをそのまま引用。ここでは、アップロードできるファイルサイズを50MBに変更した事例が書かれています。
plugin/attach.inc.php
php.ini
昨日、Fedora Core6のメンテナンスのために、サフィックスがrpmnewのファイルを交換していました。そのファイルの中に、なぜか/etc/passwdも含まれていました。ちょっと考えればわかるんですがよく確認せずに修正したので、ログインできない状態になってしまいました。
そんなわけで、rootでもシングルユーザモードでもログインできない状態でどうやって/etc/passwdを修正するかという状況に陥ったわけです。修復までかなり苦労しました。もう絶対/etc/passwdは自分で編集しないようにします。
さて、その修復方法ですが、Fedora Coreでは開発元であるFedora Projectのウェブサイトで、OSのイメージファイル以外にもレスキューCDイメージも配布しています。それをCDに焼いて、PCで起動させます。すると、CDブートのOSのような形でPCを利用することができます。レスキューCDでは、HDDにインストールされているOSのファイルを/mnt/sysimageにマウントしています。ここから、ファイルを編集することができます。修復したいファイルが/etc/passwdなら、/mnt/sysimage/etc/passwdを編集すればいいでしょう。(ちなみに、修復中に/etc/passwdにアクセスすると、rootしかないpasswdファイルが現れます。これはレスキューCDのpasswdファイルです。)
ちなみに、knoppixでもできないか試してみましたが、ディレクトリ構造が見えない状態でした。これはなぜそうなるのかはよく分かりません。あと、このレスキューCDは、OSが一致していれば使えるようなので、強力な修復ツールとして使える分、管理にはとても気を使わないといけないなと思いました。
参考にしたWebページは以下のとおりです。
[web] Fedora CoreのレスキューCDを使うには
サーバを管理する上で、時刻がずれるとログの時刻がずれたりして、何かあった時に不具合が起きることがあります。そこで、自動的に時刻を合わせるように設定することで、この問題を回避する必要があります。
これを解決する方法は2つあります。1つは、サービスとしてntpサーバと時刻を同期させるようにする方法。もう1つは、一定期間毎に時刻をチェックして時刻を合わせる方法です。前者はntp-serverを、後者はntpdateを用います。今回設定するサーバはできるだけ無駄なリソースを使用しないことが望まれるので、後者の手法で解決することにしました。
まず、aptを用いてntpdateをインストールします。
# apt-get install ntpdate
その後、cronを用いて一定期間ごとにntpサーバと同期を取るようにします。
# crontab -e
0 0 * * 0 /usr/sbin/ntpdate ntpサーバのIP
これで、日曜日の0時にntpサーバと同期をとるようになります。
もし、前者の方法で時刻を合わせたい場合は、次のURLなどが参考になるでしょう。
[web] Debianサーバ時刻を自動で合わせる
頻繁にアップデートされるFedora Coreでは、OSのアップデート時に設定ファイルが更新される場合があるため注意が必要です。OSのアップデートを行ったら、ぜひ「find / -name *.rpmsave」を行うようにしましょう。
今回、僕のサーバでは、php.iniが更新されてて問題が発生しました。これまでの設定では、mail関数などをmb_send_mail関数として取り扱う設定にしていたのですが、そのあたりの設定が飛んでしまっててやばかったですね。反省、反省。。。
tetsuの日記・雑記です。
日々経験したことを記録していきます。