連載 /Red Hat Linux のツールたち —G gro 社竊 gro 社竊・ ォルト値でかまわなければ、以下のように実行します ( 誌 て、、 0 " ( ゼロ。 root グループ ) を指定すること以外はデフ コメント文字列にフルネームを入力し、補助グループとし け加えます。たとえば、ユーザー hayao を追加する場合、 ならずユーザー名を指定し、必要に応じてオプションを付 useradd によるユーザーの作成時には、最後の引数にか 番号が川頁に割り当てられるようです。 ユーザー ID を指定します。省略した場合、 500 以上の —tl れ乞 d は /bin/bash になります。 ューザーのログインシェルを指定します。省略した場合 —s shell ドでノヾスワードを設疋します。 プションは使わず、ユーザーの追加後に passwd コマン を指定することになります。したがって、通常はこのオ ライプラリ関数 crypt ( 3 ) で暗号化されたあとの文字列 パスワードを指定します。ただし、このオプションでは、 —p swo ループがある場合には、カンマで区切って列挙します。 ューザーカ嘱する補助グループを指定します。複数のグ hayao [root@fedora root] # ls /home Yokogaki " —G 0 hayao [root@fedora root] # useradd —c "Hayao - 面の都合上、で折り返しています。以下同様 ) 。 passwd : a11 authentication tokens updated Retype new UNIX password: もう一度入力 New UNIX password: パスワードを入力 Changing password for user hayao . [root@fedora root] # passwd hayao 完了です。 ザー hayao のパスワードを定すれば、ユーザーの追加は が分かります。あとは、 passwd コマンドを実行してユー の root グループにユーザー hayao が追加されていること ム・ディレクトリ hayao カ乍成され、さらに、 /etc/group useradd 実行後に / home ディレクトリを見ると、ホー Croot@fedora root] # ロ root :x : 0 : て 00t ,hayao [root@fedora root] # egrep root /etc/group [root@fedora root] # ロ successfully. UN 工 X MAGAZ 工 NE 2004. 10 一方、ユーザーを削除する場合には、 userdel コマンド を使います。基本的には引数としてユーザー名を指定しま すが、ホーム・ディレクトリも一緒に削除したい場合は一 r オプションを付けます。 その他のコマンドについては、オンライン・マニュアル などを参照してください。 VIPW vipw は、 UNIX のパスワード・ファイルである /etc/ passwd を編集するためのコマンドです。パスワード・フ ァイルを編集するだけならどのエデイタでもできますが、 vipw にはパスワード・ファイルをロックする機構があり、 vipw で編集しているときは、ほかのユーザーが vipw を 実行できないようになっています。 vipw を引数なしで実行するとⅵ工デイタカ動し ( 環 境変数 EDITOR でエデイタカ甘旨定されていれば、そちら が優先されます ) 、パスワード・ファイルを開いた状態にな ります 1 。新たにユーザーを追加するときは、たとえは次の ような行をパスワード・ファイルの末尾に追加します。 ィールドに言古杢します。これらは、先頭から順に以下のよ " ( コロン ) で区切った 7 つのフ hayao : : 500 : 500 : Hayao Y0kogaki : /home/hayao : , ・ ユーザーの情報は、 /bin/bash passwd(5) などを参照してください ) 。 うな未をもちます ( 詳しくは、オンライン・マニュアル パスワードは vipw 終了後に passwd コマンドで設疋す 7. ログインシェル 6. ホーム・ディレクトリ 5. コメント文字列 ( フルネームなどを指定 ) 4. グループ ID ( 主グループ ) 3. ユーザー ID 2. パスワード 1. ューザー名 1 実際には、 /etc/passwd が /etc/ptmp というファイルにコピーされ、 の作業は管理者カ捌途おこなう必要があります。 ホーム・ディレクトリの作成はおこなわれません。これら ルドのチェック ( ユーザー ID が重複していないかなど ) や るので、この時点では空欄にしておきます。なお、各フィー 後者を編集することになります。 179
連載 /Red Hat Linux のツールたち 図 5 更新可能なパッケージのチェック 68 kB 11 kB 2 . 6 . 0 ー 7 2 . 6 . 0 ー 7 6 . 7 . 0 ー 5 6 . 7 . 0 ー 5 6 . 7 . 0 ー 5 たとえば、 FC2 をインストールした直後の状態で、、 yum 12 MB Gathering header information file(s) from server(s) [root@fedora て 00t ] # yum check-update i386 Server: Fedora Core 2 Server: Fedora Core 2 i386 Finding updated packages DownIoading needed headers iiimf-protocol—lib-l—ll . 4 100 % xorg—x11—xauth—0-6.7.0 ー 5. 100 % kde—i18n-Korean—1-3.2.2 ー 2 100 % N ame GConf2 GConf2—deve1 xorg—xl l—twm xorg—xl l¯xauth xorg—xl l—xfs Croot@fedora て 00t ] # 目 図 6 xorg-xll-twm パッケージの更新 Base Re1eased Updates Arch i386 i386 i386 i386 i386 Version ー 5 . 3 kB ー 353 kB 00 : 00 00 : 01 00 : 00 Repo updates updates updat e s updat e s updat e s 00 : 30 00 : 47 —released —released —released —released —released [root@fedora root] # yum update xorg-xll—twm I wiII install/upgrade these tO satisfy the dependencies : [update : xorg-xll-twm 6.7 . 0 ー 5 . i386 ] I wiII dO the following: . Dependencies resolved ResoIving dependencies Down10ading needed headers Finding updated packages Server : Fedora Core 2 i386 ー Re1eased Updates i386 ー Base Server : Fedora Core 2 Gathering header information file(s) from server(s) 8 / 12 Updated: xorg-xll-twm 6.7 . 0 ー 5 . i386 Comp1eting update f0 て xorg—xl l-libs¯data 12 / 12 Comp1eting update f0 て xorg-xl l-devel Comp1eting update for xorg-xl 1 ー 7 / 12 xorg-xll—libs 100 % done 2 / 12 xorg-xll-libs-data 100 % done 1 / 12 Test transaction complete , Success ! Running test transaction : xorg-x11—1ibs—data—6.7.0ー 100 % ー = Getting xo て g ー X11 ー libs ー data ー 6.7.0 ー 5 . i386. rpm xorg ー X11 ー 6.7.0 ー 5. i386 . rpm 100 % ー = Getting xorg ー X11 ー 6.7.0 ー 5 . i386 . rpm Down10ading Packages ls this 0k [y/N] : y [deps : xorg-xll—libs-data 6.7.0 ー 5. i386 ] Cdeps : xorg-xll—libs 6.7.0 ー 5. i386 ] [deps : xorg-xll-xfs 6.7 . 0 ー 5 . i386 ] Cdeps : xorg-xll-devel 6.7.0 ー 5. i386 ] [deps : xorg-xll 6.7.0 ー 5. 土 386 ] Dep lnstalled: xorg-xll 6.7.0 ー 5. i386 xorg-xll—devel 6.7.0 ー 5. i386 xorg¯xll¯xfs 6.7.0 ー 5. i386 xorg-xll-libs 6 . 7 . 0 ー 5 . i386 xorg-xll-libs-data 6 . 7.0 ー 5 . i386 Transaction(s) Comp1ete [root@fedora root] # ロ check-update" を実行すると、図 5 のようになります ( 下 182 線部はユーザーによる入力。以下同様 ) 。初めて実行する ときは、図 5 の前半部分のようにヘッダファイルをリポ UNIX MAGAZINE 2004. 10
連載 /Red Hat Linux のツールたち 図 7 mew パッケージのオ錬 [root@fedora root] # yum search mew lnstalled package : iiimf—server. i386 1 : 11.4 ー 43 matches with 工工工 MF server is a server module of passwords and other secrets lnstalled package : gnome—keyring. i386 0 : 0.2.0 ー 1 matches with A framework for managing user AvaiIabIe package : mew—common. i386 0 : 3.3 ー 2 from base matches with mew—common の共通ファイル Avai1abIe package : mew—common. i386 0 : 3.3 ー 2 from base matches with Mew —Emacs W0て1d 内の Messaging Avai1ab1e package : mew. i386 0 : 3 . 3 ー 2 from base matches with mew Avai1ab1e package : mew. i386 0 : 3.3 ー 2 from base matches with Mew ー Emacs で動くメーラ Provides lnternet/lntranet lnput Method C1ient Framework library. Avai1abIe package : iiimf—client—lib. i386 1 : 11.4 ー 46.1. SVn1587 from updates—released matches with L00king in available packages fo て a providing package DownIoading needed headers Finding updated packages Server: Fedora Core 2 ー i386 ー Re1eased Updates i386 ー Base Server: Fedora Core 2 Gathering header information file(s) from server(s) 工 wiII install/upgrade these t0 satisfy the dependencies : Cinsta11: mew 3 . 3 ー 2 . i386 ] I will do the following: . Dependencies resolved Res01ving dependencies Down10ading needed headers Finding updated packages i386 ー Re1eased Updates Server: Fedora Core 2 i386 ー Base Server: Fedora Core 2 Gathering header information file(s) from server(s) [root@fedora て 00t ] # yum install mew 図 8 mew パッケージのインストール [root@fedora root] # ロ 9 results returned lnternet/lntranet lnput Meth0d Framework. Cdeps : mew—common 3.3 ー 2. i386 ] ls this ok [y/N] : y DownIoading Packages Getting mew—common-3.3 ー 2. i386 . rpm mew-common—3.3 ー 2. i386. rpm 100 % ト Getting mew—3.3 ー 2. i386 . rpm 100 % ト mew ー 3.3 ー 2 . i386. て pm Running test transaction : Test transaction complete, Success ! mew—common 100 % done 1 / 2 mew 100 % done 2 / 2 lnstalled: mew 3 . 3 ー 2 . i386 UNIX MAGAZINE 2004. 10 ストが表示されます。 とヘッダファイルを比較して、更新可能なパッケージのリ ウンロードカ院了すると、インストール済みのパッケージ ぎり、 2 回目以降は差分のみがダウンロードされます ) 。ダ す (clean サプコマンドでヘッダファイルを削除しないか ジトリからダウンロードするので、すこし時間がかかりま [root@fedora て 00t ] # ■ Transaction(s) Comp1ete Dep lnstalled: mew—common 3.3 ー 2. i386 = ー 378 kB = ー 589 kB 00 : 03 00 : 16 yum update" を実行してすべてのパッケージを更新す るとかなり時間がかかるので、今回は xorg-xll-twm と いう名前のパッケージを更新してみました ( 図 6 ) 。 まず、指定したパッケージの依存関係がチェックされ、 依存するすべてのパッケージをインストールしてもよいか と訊かれます。 y を入力すると、 xorg-xll-twm と、そ 183
連載 /Red Hat Linux のツールたち 図 11 kinput2 のリソースファイルの変更箇所 ・ 35 行目 *CcWnn . Jserver: localhost ・ 38 行目 ー 00 ー 4 扣 dO 「ヨト ファイル ( E ) 編第旧表示端末タブ任 ) ヘルプ ( 印 図 12 GNOME 端末での日吾入 . カ (kinput2) *CcWnn. wnnEnvrc : /usr/1ib/wnn7/j a—JP/wnnenvrc 私見私権四間四軒試験 朝田を sei 面れ [rootgfedora 「 00tJ # 細 すこし変更するだけで、 FC2 にインストールされている シケンしけん [root@fedora root] # ■ set default input method tO kinput2 Current language is j a—JP. [root@fedora て 00t ] # im—switch —m xim を利用するように変更します。 switch コマンドを以下のように実行して XIM サーバー FC2 のデフォルトの入力メソッドは IIIMF なので、 im- ・ XIM サーバーの変更 ます。変更点は以下の 2 つです。 kinput2-canna-wnn6 のパッケージがそのまま利用でき ・ kinput2 のリソースファイルの変更 kinput2 にかぎらず、 X クライアントの多くは、リソ ースファイルを参照して動作や外観などを決定します。 kinput2 のリソースファイルは /usr/lib/XII/app- defaults/Kinput2 ですが、 FC2 にインストールされ ている kinput2 のリソースファイルは FreeWnn 用に カスタマイズされているため、そのままでは Wnn7 の jserver と通信できません。 そこで、リソースファイルの 35 行目と 38 行目を図 11 のように変更します。 以後、 X を起動すると kinput2 も自動的に起動され、 GNOME 端末などでも図 12 のように日本語が入力で きるようになります ( 日本語入力モードの ON/OFF は Shift 十 Space で切り替えます ) 。 ☆ 次回も、 FC2 のカスタマイズについて紹介します。 はこがき・はやお ) 読者アンケートのお知らせ いつも弊誌をこ愛読いただき、ありがとうこざいます。 今後の企画・編集の参考とするため、読者アンケートを 実施しています。下記の Web ページにアクセスのうえ、必 要事項をこ記入ください ( 締切は 2004 年 1 0 月 1 7 日です ) 。 皆様からお寄せいただいたこ意見は、貴重な資料として 活用させていただきます。 こ回答をお寄せいただいた皆様のなかから、 5 名様に特 製 QUO カード ( 2 , OOO 円ぶん ) をさしあけます ( 応募者多 数の場合は抽選といたします。なお、当選者の発表は発送 をもって代えさせていただきます ) 。 今後ともこ愛読のほど、よろしくお願い申し上げます。 UNiX MAGAZiNE 編集部 ASCll ー ん。陸 え ! - アスキ - ASCII Sh@S.net autO WX ( テザインは変更されることがあります ) 186 イ株 ) アスキー IJNIX MAGAZINE 読者アンケート専用 U 日 L http://mkt.uz.ascii.co.jp/unixmag/ こ注意 : 雑誌公正競争規約の定めにより、この懸賞に当選された方は、本号のほかの懸賞に入選できない場合があります。 UNIX MAGAZ 工 NE 2004. 10
図 14 mysqluser の泉 $ mysql —u root —p Enter password : mysql> GRANT ALL PRIVILEGES ON * . * TO ー > IDENTIFIED BY 'mysqluser ' WITH GRANT OPTION ; Query OK, 0 rows affected ( 0.09 sec) mysql> GRANT ALL PRIVILEGES ON * . * TO mysqluser@' % ' ー > IDENTIFIED BY 'mysqluser ' WITH GRANT OPTION ; Query OK, 0 rows affected ( 0.00 sec) mysql> exit Server version 4.0. 18 Protoc01 version 10 Connection Loca1host via UNIX socket Uptime: 17 sec mysqluser@localhost 上記のようなメッセージか表示されれば、 MySQL サー バーは稼動しています。 MySQL に接続できないというメ ッセージが表示された場合は、 /var/lib/mysql のパー ッションを確認してください。 インストール直後の状態では、 MySQL サーバーの管理 者のパスワードは設疋されていないので、次のようにして 設定します。 $ mysql —u root mysql> SET PASSWORD FOR て 00t@localhost ・ =PASSWORD( リヾスワード , ) ; mysql> exit 管理者のパスワードを設疋すると、 mysql コマンドの実 行時にパスワードの入力が必要になります。そこで、次の ように一 p オプションを指定します。 $ mysql —u て 00t —p Enter password : なお、マシンのプート時に MySQL サーバーを自動的に 起動したい場合、必要なファイルはすでに /etc/init. d にコ ピーされているので、次のコマンドを実行するだけです。 # chkconfig mysql on ■ MySQL JDBC ドライバのセットアップ 最後に、 MySQL の JDBC ドライバを以下の Web ペー ジから入手してセットアップします ( ファイル名は mysql - connector-java-3.0.15-production. tar. gz です ) 。 ・ http://dev.mysql.com/downloads/ connector/j/3.0. html 116 JDBC (Java DataBase Connectivity) は、 Java か らデータベースに接続して SQL 文を実行し、実行結果に アクセスするための API です。 SQL の実装はデータベー スごとに異なりますが、 JDBC はそれらの彳少な違いをで きるだけ吸収し、データベースに依存しない統一されたイ ンターフェイスで扱えるようにします。 まず、入手したファイルを適切なディレクトリにこで は /usr/local) に展開します。 # tar zxvf mysql—connector—j ava—3.0.15 - —production. tar. gz 次に、 mysql-connector-java-3.0.15-production デ イレクトリにある mysql-connector-java-3.0.15-pro- duction-bin. jar を CLASSPATH に追加します。それ には、 ~/. bash-profile に次の行を書き加えます。 xport CLASSPATH=JAR ファイルへの . パス : $CLASSPATH 今回の例では /usr/local の下に展開しているので、 、、 JAR ファイルへのパス " の部分は、 /usr/10ca1/mysq1—connector—Java—3.0.15 ー - production になります。 こで、 JDBC ドライバを使って MySQL サーバーに アクセスできるかどうかをテストしてみましよう。まず、 これ以降の開発作業やテストをおこなうための新しいユー ザーとして mysqluser を登録します ( 図 14 。この例では、 パスワードは仮に mysqluser とします ) 。 mysqluser は、 MySQL サーバーにどこからでも接続 できるスーパーユーザーですが、パスワードを指定する必 要があります。 たとえば mysql コマンドを実行する場合は、さきほど の root ユーザーの例と同様に $ mysql —u mysqluser —p UNIX MAGAZINE 2004. 10
0 FedoraCore 2 のカスタマイズ Red Hat Linux の ツールたち 16 今回は、 Fedora Core 2 ( 以下 FC2 ) のカスタマイズに ついて紹介します。私は Windows 版 VMware のゲス ト OS として FC2 をインストールし、メールの読み書き (Emacs 十 Mew) やドキュメントの作成 (141bX) 、ドキュ メントに貼る図の作成 (Tgif) 、プログラム開発 (GCC な ど ) などに利用しています。 その他の作業、たとえば Office ドキュメントの作成や Web 閲覧、音楽 (MP3) の再生などはホスト OS である Windows XP 上でおこなっているので、 FC2 をメイン で利用している人にくらべるとかなり限定された使い方に なっています。このため、一殺向けではない部分もありま すが、私の環境でのカスタマイズについて紹介します。 なお、今回より、ふだん使っているノート PC を Think- Pad X31 から T42 に変更しました。参考までに、おもな 仕様を表 1 に記しておきます。 X31 にくらべるとやや重 くなりました ( 1.65kg → 2.06kg (DVD マルチドライプ を装着すると 2.24kg ) ) が、液晶ディスプレイが 14.1 イン チに、解像度も SXGA 十 ( 1 , 400X1 , 050 ) となり、ドキュ メントの作成、とくに xd ⅵなどによるプレビューが関商 におこなえるようになりました。 FC2 は VMware のゲスト OS なので、 X31 でインス トールしたものを T42 にコピーして使っています。ゲス ト OS のイ反想ハードウェアにはとくに変更はないので、 のようなときはたいへん便利です。 ユーサーのロ FC2 のインストール時には、スーパーユーザー (root) のパスワード設疋しかおこなわれないので、自分カ駛う一 般ューザーのアカウントを作成する必要があります。 UN 工 X MAGAZINE 2004. 10 表 1 使用する ThinkPad T42 のおもなイ CPU メモリ HDD ビデオ OS IBM ThinkPad T42 ( 2373 ー 9ZJ ) lntel Pentium M 745 (1.8GHz) IGB ( 増設 ) 80GB ATI Mobility RADEON 9600 Windows XP SPI VMware 4.5.2 (build 8848 ) FC2 でユーザーやグループを設定するツールとして は、 /usr/bin/system-config-users や /usr/sbin/user- add などがあります。もちろん、 UNIX における一ヨ殳的な パスワード・ファイル編集ツールである /usr/sbin/vipw も利用できます。以下、それぞれについて簡単に説明し ます。 system—config-users system-config-users は GUI べースのユーザー / グル ーフ。設定ツールで、 GNOME デスクトッ、カ境の場合に は、メニューから、、システム設疋→、、ユーザーとグルー プ " とたどっていくと起動します ( コマンド行から起動す ることもできます ) 。 初期状態では図 1 のようになっており、インストール直 後は -- -- 般ユーザーは存在しません ( 、、設定 " メニューの、、シ ステムユーザーとグループをフィルタ " という項目のチェ ックを外すと、 root などのシステム・アカウントが表示 されます ) 。新たなユーザーを追加するには、、ユーザを追 加 " アイコンをクリックします。すると、ユーザー情報の 入力ウインドウ ( 図 2 ) カくので、ユーザー名やフルネー ム、パスワードなどを入力して [OK] ボタンをクリックす れば、図 1 のウインドウにユーザーが追加されます ( 図 3 ) 。 また、図 2 の例では、、、ユーザ用にプライベートグルー 177
連載 / ネットワークとセキュリティ 整形対象のデータが含まれているファイルの設疋をおこ % vi test . cnf を譿定します。 次に、 Framework クライアントの動作テストファイル 重加乍テスト port-exclude. lst と同オ兼です。 るための設疋ファイルです。設定方法は dshield-source- 号を宛先ポート番号とするデータを提供対象から除外す dshield-target-port-exclude. lst は、特定のポート番 % vi dshield—target—port—exclude . Ist CIDR 表記で指定します。 るための設疋です。 dshield-source-exclude. lst と同様、 % vi dshield . cnf メールの From: アドレスを設疋するには、 from=nobody@nowhere . com の、 11 行目付近 なうには、 16 行目付近の、 log=/var/log/messages という記述を環境に応じて変更します。ここでは、 log/kern にログデータが書き込まれているため、 log=/var/log/kern に変更しました。 /var/ 続いて、ログの種類によっては、ログファイルを読むの に root 権限が必要なので、ユーザーを root に変更しま す。そして、テストしたスクリプトでログファイルを正し く整形できるかを確認するため、 test-wrapper. sh を動作 させます。 % su # sh test—wrapper. sh スクリプトが正しく動作した場合には、画面に何も表示 されずに終了します。また、 test-wrapper. sh と同じディ レクトリに、整形済みログファイルである、、 output. txt" カ胙成されます。 ログファイルの指定が間違っているなど、なんらかの理 由で正常に処理できない場合は、たとえば以下のように工 ラーの原因カ俵示されます。 can't find 10g file at /var/log/no-such—logfile 動作言綻 次に、 Framework クライアントの動作設疋ファイルを 定します。 UNIX MAGAZINE 2004. 10 の値を変更します。 DShield に匿名でデータを提供する場 合はそのままでよく、登録ユーザーでデータを提供する場 合には、登録したメールアドレスを指定します。 DShieId のユーザー ID を指定するには、 16 行目付近 の、 userid=0 の値を編集します。これも、匿名でデータを提供する場合 は変更は不要です。登録したユーザーでデータを提供する 場合には、登金剥寺に電子メールで送られてきたユーザー ID を指定します。 DShieId へのデータ提供用の電子メールを自分も受け取 りたい場合、 27 行目付近の、 CC または、 bcc の値を編集します。いずれかに電子メールアドレスを指定 すると、そのメールアドレスに整形済みのログファイルが 届きます。 さらに、テスト用の設定ファイルと同様に、実際の動作に かかわる dshield. cnf でもログファイルのパスをユーザー の環境に応じて指定します。今回は、 34 行目付近の、 log=/var/log/messages を、 log=/var/log/kern に変更しました。 宛先 IP アドレスを隠したい場合、 96 行目付近の、 obfus=N という設疋を、 obfus=Y に変更します。すると、 IP アドレスの先頭の 1 オクテッ ト目 ( 192.168.1.1 であれば 192 の部分 ) がプライベート IP アドレスの 10. に変換されます。 91
SFU の活用 [ 03 ] 図 3 Courier-IMAP のビルド $ cd /tmp/compile $ bzip -cd &/courier—imap-3.0.7. tar. bz2 ー tar —xf $ cd courier—imap—3.0.7 $ CFLAGS="—D_ALL-SOURCE —l/usr/local/include/bind -l/usr/local/ssl/include" LIBS="—1bind —ldb" \ LDFLAGS="—L/usr/10ca1/1ib/bind —L/usr/10ca1/ss1/1ib" . /configure ——disable-root—check \ —with—db=db ——with—waitfunc=wait (csh/tcsh の場合 ) % env CFLAGS="—D_ALL_SOURCE -l/usr/local/include/bind -l/usr/local/ssl/include" \ —lbind —ldb" LDFLAGS="—L/usr/10ca1/1ib/bind —L/usr/10ca1/ss1/1ib" . /configure \ LIBS=" —disable—root—check ——with—db=db ——with—waitfunc=wait $ make $ make install $ make install—configure 図 4 /usr/lib/courier-imap/etc/imapd 0 メ修正 46 : AUTHSERVICE143=imap ( コメントを外す ) 116 : IMAP_CAPABILITY=" 工 MAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT - THREAD=REFERENCES SORT QUOTA AUTH=CRAM—MD5 AUTH=CRAM—SHAI IDLE" 117 : # 118 : 119 : #IMAP_CAPABILITY="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT ・ THREAD=REFERENCES SORT QUOTA IDLE" ( 116 行目のコメントを外し、 119 行目をコメントアウト ) ようにします。なお、前回までと同様にユーザーのホーム・ ディレクトリは /dev/fs/C/Documents and Settings/ くューザー名〉にあるものとします。ここでは、 f00 というユ ーザーがアクセスするための設疋をおこないます。 foo を 自分のアカウントに置き換えて読んでください。 サーバー側では、ユーザー ID 、グループ ID 、ホーム・ ディレクトリ、メール・ディレクトリ、アクセス用のパス ワードの設疋をおこないます。 まず、ユーザーの基本情報である、ユーザー ID 、グル ープ ID 、ホーム・ディレクトリ、メール・ディレクト リを設定します。上述のように、ホーム・ディレクトリ は /dev/fs/C/Documents and Settings/foo になりま す。メール・ディレクトリは、ホーム・ディレクトリの 下に、、 MaiIdir" という名前で作成します。作成には / usr / lib/courier-imap/bin/maildirmake コマンドを使いま す。ユーザー ID とグループ ID は id コマンドで取得 120 します。ユーザー ID は一意ですが、グループ ID は複 UNIX MAGAZINE 2004. 10 す。なお、以後 userdb を操作するたびに、 makeuserdb あとでおこなう簡単な動作テストのために設定しておきま look Express を使わないのならとくに必要ありませんが、 平文認証用と MD5 用を登録しておきます。平文は Out- 害がメールアクセス以外に波及しません。図 6 のように よう。そうすることで、万が一ノヾスワードが漏洩しても、被 ログイン・パスワードとは違うものにしたほうがよいでし ンドを使ってパスワードを設疋します。このパスワードは 次に、 /usr/lib/courier-imap/sbin/userdbpw コマ です。環境により表示されるマシン名は変わります。 SFU がインストールされている Windows マシンの名前 順は図 5 のようになります。なお、出力中の、、 BAR 十 " は、 sbin/userdb コマンドでデータベースに反映します。手 いでしよう。これらの情報を、 /usr/lib/courier-imap/ 数あるかもしれません。その場合はプライマリのものでよ
連載 /Red Hat Linux のツールたち ザー名を追加します。 ループファイル (/etc/group) を編集し、グループにユー ので、補助グループを設疋する場合は vigr コマンド 2 でグ また、パスワード・ファイルに言古するのは主グループな 180 2 vipw と同様、グループファイルを拶勺に編集するためのコマンドです。 ションに含まれるアプリケーションでも UTF ー 8 ではうま かもしれませんが、現時点では、 FC2 のディストリビュー 字コード (JIS 、 EUC 、 SJIS) が UTF-8 に統合されるの る Unicode) となっています。将来的には既存の日本語文 FC2 では、デフォルトの文字コードが UTF-8 ( いわゆ 文字コードの変更 加をおこないます。 設疋し、ホーム・ディレクトリの作成や補助グループの追 も終了します。あとは、 passwd コマンドでパスワードを 編集が終ったら、エデイタを終了すればⅵ pw コマンド ル shadow(5) を参照してください ) 。 もさしつかえありません ( 詳細は、オンライン・マニュア すが、とりあえずはユーザー root の行をそのまま使って スワードやアカウントの有効期限に関する情報を記述しま おきます ) となっています。それ以降のフィールドにはパ コマンドを使って設疋するので、この時点では空欄にして 化されたパスワード文字列 ( パスワードはあとで passwd 先頭フィールドはユーザー名、 2 番目のフィールドは暗号 /etc/passwd と同様、各フィールドはコロンで区切られ、 ほか、パスワードの有効期限などの情報を記述します。 このファイルには、暗号化されたパスワード文字列の hayao: : 12620 : 0 : 99999 : 7 : 尾に追加しましよう。 ユーザー root の行を参考にして、以下のような 1 行を末 (/etc/shadow) を編集することになります。とりあえず、 こで、、 y " と入力すると、引き続きシャドウファイル 今すぐ /etc/shadow を編集しますか [y/n]? 目 このシステムではシャドゥパスワードが使われています。 時に以下のようなメッセージか表示されます。 シャドウ・パスワードを使用しているため、エデイタ終了 も終了しますが、 FC2 をはじめとする多くの Linux では 一般的な UNIX では、エデイタの終了と同時に vipw く動かないものがあるなど、やや混乱がみられます。 さらに、ほかの UNIX システムとファイルを共有する 場合、これらのシステムの多くではデフォルトの文字コー ドが EUC なので、とくにネットワーク環境では、 FC2 だ けが UTF-8 であればよいというわけにもいきません。 そこで、私は FC2 のインストール直後にデフォルトの 文字コードを EUC に変更してしまいました。 それには、環境変数 LANG の値を ja-JP. UTF-8 から ja-JP. eucJP に変更します。変更方法には以下の 2 種類 があります。 UNIX MAGAZINE 2004. 10 SUPPORTED="ja—JP . eucJP:ja_JP. ujis :ja—JP:ja" LANG="j a—JP. eucJP" ます。 ために、 1 行目と 2 行目をそれそ、れ次のように書き換え システムのデフォルトの文字コードを EUC に変更する SYSFONT="1atarcyrheb—sun16 " SUPPORTED="ja-JP. UTF—8:ja_JP: ja" LANG="ja_JP. UTF-8" ように書かれているはずです。 インストール直後のた態では、このファイルには以下の のユーザーの定を変更することができます。 がって、このファイルで変更すれば、システムのすべて ある /etc/sysconfig/i18n で定義されています。した 環境変数 LANG は、システム全体の設定ファイルで 2. システム定を変更 り早いでしよう。 に紹介するようにシステム設定を変更したほうが手つ取 便利ですが、すべてのユーザーを対象とする場合は、次 この方法は、特定のユーザーの設定を変えたいときには という行を追加します。 setenv LANG j a—JP. eucJP などでは、 ~/. cshrc ファイルに という行を追加します。一方、 C シェル系の csh や tcsh export LANG=j a-JP. eucJP ァイルに フォルトのシェルである bash であれば、 ~/. bashrc フ ファイルに環境変数 LANG を指定します。 FC2 のデ 各ューザーの個ノ、、設定を変更する場合は、シェルの設疋 1. 個ノ、、設定を変更
図 1 構築するシステムとサービスの概念図 procmail S pamAssassi n fetch m ail SFU プロバイダ ( メールサーバー ) HTTP Apache SquirrelMail Maildir lMAP4 lMAP4 表 1 導入するソフトウェア しかし、 Windows 上では自分のアカウントに管理者権限 imapd/pop3d Courier-IMAP を与えている場合も少なくないでしよう。ビルドのためだ メール自動取得ツール fetchmail けに管理者権限をもたないアカウントを作るのは面倒なの メールオ異ナツール procmail で、その場合は一—disable—root—check を付けてチェッ SPAM 対策ソフトウェア SpamA. ssassin Web メールサービス ( 次回導入 ) SquirreIMaiI クを回避します。 SquirrelMaiI カ吏用 ( 次回導入 ) PHP4 ( 4.3.6 ) configure の実行からビルド、インストールは問題なく 図 2 soxwrap/testprog. c 窈修正 ( 下線部おロ ) 進行すると思います。 Courier-IMAP は、 -prefix などを 7 : #include く stdlib . h> 指定亡ずに configure を実行した場合、 /usr/lib/courier- 8 : imap の下にすべてがインストールされます。 #ifdef _INTERIX typedef unsigned socklen—t ; インストールが完了したら設疋をおこないます。設疋フ #endif / * _INTERIX * / ァイルは /usr/lib/courier-imap/etc/imapd です。と くに変更が必要なのは図 4 に示した箇所で、 46 行目のポー ・ http://www.courier-mta.org/imap/ トの宣言をするところと、 116 行目の CAPABILITY を 原稿執筆時点の最新版は 3.0.7 で、 courier-imap-3.0. 有効にする ( 代わりに 119 行目をコメントアウトする ) と 7. tar. bz2 というパッケージを取得します。 ころです。 SFU 向けのサポートがあるわけではありませんが、適切 言貨定が完了したら、以下のように起動してみましよう。 に設疋してやれば configure を実行できます。ただし、ビ ルドまでおこなうにはファイルの修正が 1 カ所必要です。 /usr/lib/courier-imap/libexec/imapd. rc start 図 2 のように soxwrap/testprog. c を変更し、図 3 のよう 工ラーがなけれは正常に起動しています。 に CFLAGS 、 LIBS 、 LDFLAGS を設疋して configure さて、 imapd は走明」しただけでは使えません。接続する を実行します。 Courier-IMAP の configure は、スーパ ューザーとクライアントの設疋カ材く可欠です。 ーユーザーで実行すると、途中で一ヨ殳ューザーでビルドす るようにというメッセージを表示して停止してしまいます。 ユーザーの設疋は、ちょっとややこしいのですが、次の 119 UN 工 X MAGAZINE 2004. 10