小兔的筆記本

Just another WordPress.com weblog

在cnews+nntp上加上email post功能

Posted by Tsukino Usagi 於 七月 30, 2006

本文說明如何利用newsgate裡的mail2news來達到email post to news的目的, 在進行下面的操作之前, 要先在Ubuntu 6.06 Dapper裡架設好postfix和cnews+nntp, cnews+nntp的設定方式可以參考這篇文章.

  1. 安裝newsgate和procmail, 以root的身份執行:
    $ apt-get install newsgate procmail
  2. 設定postfix的四個設定檔, 在/etc/postfix/main.cf裡加上:
    transport_maps = hash:/etc/postfix/transport
    virtual_alias_maps = regexp:/etc/postfix/virtual
  3. 在/etc/postfix/master.cf裡加上:
    newsmail unix - n n - - pipe
    flags=FR user=news argv=/usr/bin/procmail -a ${mailbox} -a mail2news -d news

    第一行每段文字用tab作分隔, 第二行的flags前面要有個tab, 之後每段文字用「空白」作分隔.
  4. 在/etc/postfix/transport裡加上:
    newsmail.yourhostname newsmail:
  5. 在/etc/postfix/virtual裡加上:
    /^(.+)\.news@/ $1@newsmail.yourhostname
  6. 產生.db檔, 以root的身份執行:
    $ postmap /etc/postfix/transport
    $ postmap /etc/postfix/virtual
  7. 以news的身份編輯~/.procmailrc:
    $ su news
    $ vim ~/.procmailrc

    , 內容如下:
    :0 bhH
    * ^To: [a-z0-9.]*.news@
    | /usr/bin/$2 -n $1 -d news -o 'mail2news gateway' -x internet
  8. 重新啟動postfix:
    $ /etc/init.d/postfix restart
  9. 之後發一封信到主機上看看, Email的寫法是「群組名稱」.news@「主機名稱」, 例如要在group.blah這個群組裡發表文章, 那Email位址就要寫成group.blah.news@yourhostname ,信發完之後不會馬上就出現在newsgroup裡, 要等crond跑過cnews之後才會出現.

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

 
%d 位部落客按了讚: