|
■L I n u x T i p s |
| ■Courier-IMAP ( IMAPサーバをVine Linuxで実現する--Vine Linux 2.6 apt & tarボールから(自分でコンパイル)) |
|
courier-ImapをVineLinuxのaptからインストールをすると、IMAPパスワードとユーザパスワードが同じになる上に、プレインパスワードでしかアクセスできないみたいです。ユーザーパスワードとIMAP認証分離して、かつ、そのパスワードを暗号化したかったので、じぶんでコンパイルしていれました。
Vine Linuxで、IMAPを設定します。 apt-get remove imap apt-get update apt-get install courier-imapこれでとりあえず、ソフトは準備がそろったので設定ファイルを書いていきましょ う。 Courier-IMAPは、MailDir形式を必要とするソフトです。以前、FreeBSDで運 用していたときは、qmailだったのでまったく問題なかったのですが、今回は、 Vine Linuxなので、こんかいつかうMTAはデフォルトでPostfixだったりします。もちろ んqmailをいれることもできるのですが、入れるためにVineseedを付け加えると変になっ てマンドウなできごとになってしまうので、できるだけpostfixでいける方法を さがすことにしました。Postfixで、Maildir形式を扱う方法はPostfixの項目を御覧下さい。 これで、ntsysvでimapを起動するようにすれば完成です。 IMAPパスワードとUNIXログインパスワード分離このまま、Courier-imapを運用できるのですが、セキュリティ上の要求でUnixのログインパ スワードとIMAPでメールを取るパスワードは別にしたいことが多いと思います。 これらに関しては http://www.mm-labo.com/computer/linux/courier-imap-security1.html が説明が詳しくて参考になります
基本戦略としてUNIXのパスワードとIMAPのパスワードを別にするには/etc/passwd系の
パスワードと別のファイルをつくらなければなりません。たとえばID pika でUID GID
500 のimap用パスワードファイルをつくりたけれ
ば uidとgidにかんしては、/etc/passwdに書いてあります。/etc/passwdを覗くと pika:x:500:500::/home/pika:/bin/bash となっているので、この500がuidとgidになります。gidとuidは大体は一緒です。 コマンドを実行すると、/etc/userdbというファイルができます。
さらに、IMAPに、/etc/passwdのかわりに/etc/userdbをつかうことを、
/etc/courier-imap/imapdのAUTHMODULES="authuserdb"にかえて しかし、IMAPパスワードとログインパスワードをわけたとはいえ、IMAPパスワードは平 文で流れていってしまいます。さらにここから, MD5で暗号化して認証する方法になります CRAM-MD5で認証する方法Cram-MD5でIMAP認証するには、Vineのaptではなくて、tarボールからいれることになります。 http://www.inter7.com/courierimap/courierimap.htmlで適当なバージョンをダウンロードして ください。とりあえずインストールします。2004年5月時点では,imapserverのバージョンは3.0.3でした。 その後、コンパイルしていれると
/usr/lib/courier-imap/etc/authdaemonrcにおいて(バージョンがふるいとimapdを編集
するとauthedaemonを編集するように書いてありますが、こっちにうつったようです。)
つぎに、userdbに とやっていくと大問題発生。両方のばあいでも、プログラムがたりないことが判 明。 |
| ■Postfix (SMTPサーバをVine Linuxで実 現する) |
|
https://www.stackasterisk.jp/tech/systemConstruction/postfix01_01.jsp にて、ブロック図が表示されています。 また、Courier-IMAPに必要なMailDirの実現には、 https://www.stackasterisk.jp/tech/systemConstruction/postfix01_06.jsp にある通り3つの形式を選択できるようです。 http://www.miloweb.net/mail.htmlにあるとおり、WebMinでも設定できるようで す。上記のURLにのってるとおりやっていきます。うまくいかないときは /var/log/maillogあたりをみてエラーを確認していきます。 Courier-imapをつかいたかったら、Maildir形式でなければならないので、 /etc/postfix/main.cfで、home_mailbox = Maildir/の部分コメントアウトを取 り除いておきましょう。 |
| ■IP MASQ(複数のマシンでインターネット) |
|
とりあえず、カーネルがサポートしているかみる。make xconfigあたりでみればいいだろう。NIC(ネットワークのカード)を2枚刺ししてちゃんと認識されているか確認。dmesgでみれるのでよかろう。されていない場合は、がんばるかモシクワ、財力にものをいわせて対応してるカードをかってくる。ここで、eth0は外につながるネットワークカード、eth1は、内につながるカードとする。つぎは、/etc/sysconfig/networkをみる。 NETWORKING=yes FORWARD_IPV4="yes" HOSTNAME="tomoyo" GATEWAY="210.*.*.*" GATEWAYDEV="eth0"
にするGatewayには、CATVとかでわりあてられたGateWayアドレスを入れる。kernel2.2とかでは、ipchainsというコマンドがつかわてるらしい。IP masquerading を有効にするには
これで、192.168.128.0ー192.168.128.255の内から外へのパケット書き換えが有効になります。起動毎にrootになって、こいつを実行しつづければいいんですが、そいつはめんどくさいってことで
コマンドによって/etc/ipchains.rulesに保存されます。起動時に行うには/etc/rc.d/rc.localに if [ -f /etc/ipchains.rules];then /sbin/ipchain if /sbin/depmod -a /sbin/modprobe ip_masq_ftp /sbin/modprobe ip_masq_raudio /sbin/modprobe ip_masq_irc /sbin/modprobe ip_masq_autofw /sbin/modprobe ip_masq_mfw /sbin/modprobe ip_masq_portfw /sbin/modprobe ip_masq_user /sbin/modprobe ip_masq_vdolive /sbin/modprobe ip_masq_quake とかくだけ Scanner (SCSI編)(Vine Linux)
Wxgserver (日本語入力)(kondara Linux)
rpm -ivh wxg-1.0b-1.i386.rpm
|
|
■Free Bsd Tips |
|
qmail(MTA-メールサーバー用ソフト) とにかく、qmailを入れる。最初の人はportsなどから入れるよりも、ちゃんと、ソースからコンパイルして、qmailrやらなんやらのユーザー設定をやっておくと、苦労がわかっていいかもしれない。よくわからんひとは、とにかくportsで、ports前提での話です。
とりあえず、sendmailをとめる。/etc/rc.confに
ともかく/var/qmail/controlにうつる。そこにme,locals,defaulthost,locals,rcpthosts をつくる。各々には、
つぎにメールをリレーするときの設定。
hosts.allowの中を書き換える。
たとえば、192.168.1.の中からリレーメールしたい場合は、/etc/hosts.allowに
NAT(複数のマシンでインターネットするために)4.3-Release Natで、複数のマシンで、ネットを共有する。IPMASQの方が、パケットの中を判断するので、Natよりはレイヤーが一つ上になるのか?(なぞ)
まずNatdを動かすには、カーネルのコンパイルが必要。 firewall_enable="YES" firewall_type="OPEN" firewall_quiet="NO" natd_enable="YES" natd_interface="pika0" # ここには、インターネット側につながってるデバイスいわゆる、外側のNICを指定してやる natd_flags="-dynamic yes" これでNatはできあがりのはず。 参考にすべきページ DHCP Serverの設定 3.X 4.X共通(かな?) まずはdhcpサーバー用のソフトがはいってることを確認すべし、(/var/db/pkgあたりみる)はいってなければ、portsかパッケージでインストール。wide-dhcpを入れないと、DNSやらを自動でとってこない。(はず) すると、/etc/dhcpdb.poolと /etc/dhcpdb.relayてのができる。(なければ、touchでつくってね)/etc/dhcpdb.relayは何もかかなくていいが、/etc/dhcpdb.poolには
global:!snmk=255.255.255.0:tmof=32400:
#
# "global"というエントリで全体的な設定
# tmofってのが多分、英国との時間差
#
internal:tblc=global:rout=192.168.1.1:\
:brda=192.168.1.255:\
:dnsv=211.0.138.67
#
# "internal"というエントリをつくる
# 全体的な設定globalを参照する
# ルーターは192.168.1.1に
# brda は、クライアント側のブロードキャストアドレス
# dnsv は、ネームサーバーアドレス
#
# 下にDHCPで使うアドレスをかいておく。
#
200: :ipad=192.168.1.200:dfll=3600:maxl=7200:tblc=internal:
201: :ipad=192.168.1.201:dfll=3600:maxl=7200:tblc=internal:
202: :ipad=192.168.1.202:dfll=3600:maxl=7200:tblc=internal:
203: :ipad=192.168.1.203:dfll=3600:clid="0x0120312301ab"maxl=7200:tblc=internal:
# ipad はIPアドレス dfllは有効期限(秒)maxlは最大の有効期限:clidはMACアドレスを指定できる
#MACアドレスが合わないと、IPアドレスをわたさない。ただしMACアドレスは16進数
まだまだで、カーネルのコンパイルが必要、 参考にすべきページ KDE上でsylpheedの文字化けを直すには 原因としては、.gtkrcのなかのFontset設定不良。つーわけで、/usr/X11R6/share/themes/Default/gtk/gtkrc.jaより、自分のホームにコピーその後、kdeコントロールセンターで、非KDEアプリにもフォントとかを適用の部分のチェックをはずして、X再起動。 rs-232cを使う
rs-232cとはすでに絶滅寸前だが非常にべんりな、シリアル通信の手段。ほかのデバイスを操作するさいに良く使われる。
現在はUSBにおきかわりつつあり、USBはメンドウッポ。 #include 上記は、FreeBSDでCOMポートからAHOと言うも文字を出力するプログラム。これは送 信だけするもの。受信は別にかいてやらなければ成らない。反対にいえば、受信と送信はべつべつに扱えるというわけである。 また、受信待ちをする場合などは、一番簡単な方法としては、while()でむすんでやる ことだが、この方法はcomポートになんらかのデータが流れてくるまでまってしまうの でお薦めできない。本来はselectを使うべき。 たとえば、USBにシリアルを増設するものをかってこれば、/dev/cua0の部分を /dev/ttyUSB0とかにおきかえればOK。ついでにLinuxでの注意点だが、/dev/cuaa0の部 分を、/dev/cua0にするか、あたらしいバージョンならきっと/dev/ttyS0にしろゴルァ と怒られる。その点だけの違い。もちろん、細かい設定をつめていって、ボーレート等 をあげることもできるが、そんな用途ではRs-232cをつかことは今はないだろうから割愛。 追記変更点があります。RS-232cのドライバICをつかわずに、適当に74シリーズで、TTLから RSー232Cにレベルコンバートした場合この指定をしないとうまくうごきませんでした。 tcgetattr(fd_out ,&targ); memset(&targ,0,sizeof(targ)); targ.c_cflag = B9600|CS8|CLOCAL|CREAD; targ.c_iflag = IGNPAR; targ.c_oflag = 0; targ.c_lflag = 0; targ.c_cc[VTIME] = 0; targ.c_cc[VMIN] = 1; tcsetattr(fd,TCSANOW,&targ);
適当なことばかりやってると、あとで痛い目をみるので、ちょっとしらべるといいサイ
トがゴロゴロでてきました。 |
|
■ Windows Tips |
|
Windows2000でMS-DOSな起動フロッピーをつくる。
|