Showing posts with label postfix. Show all posts
Showing posts with label postfix. Show all posts

Friday, August 13, 2010

postfix架MTA要設定bool

給未來的裕翔

如果使用postfix架設MTA的話

要把allow_postfix_local_write_mail_spool設為1

不然會造成/var/mail/user.lock

然後就收不到信了

報告完畢

Friday, July 2, 2010

postfix架設在fedora 13

給未來的裕翔

雖然知道每個distribution都大同小異

可是每當我自己用fedora練習時

總是會遇到幾個'小異'

都是些用redhat不會碰到的

'小異'說多不多, 個個搞死我

因此邊操作邊寫筆記

首先, 如果想要架一個可以收信的MTA by postfix

請先記得把剛剛修改過得/etc/aliases復原

以我的例子, root:   xxxxx

這樣就算我把postfix設定到可以收信

在mail server的root一輩子也收不到信......

改完之後, 也別隨手newaliases, 請先到/etc之下再用

接著, 設定一個fedora 12似乎不需要的步驟?

setsebool -P allow_postfix_local_write_mail_spool 1

不過有時似乎還是會失敗?

看/var/log/maillog的訊息

把/var/mail/root.lock刪除或改名就可以了

當然, 如果一開始就不存在那就更好啦^^

以上是雜七雜八的設定

接著設定/etc/postfix/main.cf
myhostname = nvlab179.ee.nthu

(只寫nvlab179會失敗)

mydomain = ee.nthu
myorigin = $myhostname
inet_interfaces = all

以上是可以收信的設定

讓我驚訝的是, postfix預設幫任何人relay?

除非我反註解/etc/postfix/main.cf的

mynetworks_style = host

如果有設定mynetworks, 那上一行的設定就會被忽略

建議直接利用mynetworks作存取控管

mta只幫有紀錄的對象作relay

ex:

networks = 140.114.0.0/16

那~ /etc/postfix/access就不需要它啦~(我使用它也沒成功過)

至於postfix底下的alias, 使用跟sendmail一樣的操作即可

不需要特地變成講義上的postalias hash:/etc/aliases

大概就是這樣吧^^

Thursday, June 10, 2010

mail server雜亂小筆記2

給未來的裕翔

postfix自己有自己的控管

/etc/postfix/access

裡面的網段是192.168.0不同於samba的192.168.0.

OK表示接受收信, 但不RELAY

RELAY表示接受收信, 也幫RELAY

修改後要以postmap /etc/postfix/access使其生效

再來是/etc/aliases

我可以設定人頭戶, 寄給他們的統統寄給我指定的存在帳戶

修改後要newaliases來生效(好像postaliases也可以?)

另外

sendmail和postfix的log都是/var/log/mail

要使用sendmail的話, 除了senmail套件

sendmail-cf也要記得安裝

通常我們都是修改sendmail.mc

然後m4 sendmail.mc > sendmail.cf

在sendmail.mc裡面, 註解是dnl加一個空白鍵, #只是對齊好看罷了

另外, 在/etc/mail/local-host-named寫的是幫誰收信

如果寫AAA,BBB,CCC

那就是寄給AAA,BBB,CCC的我都收

編完立即生效

/etc/mail/access跟/etc/postfix/access很像, 也是存取控管

不過/etc/mail/access裡面會需要tag: connect, from, to

connect就是包含from, to

編完後, 要make access.db

關於那個RELAY, 什麼叫RELAY

如果我在host-252

我用telnet連到host-250

在裡面寄信, rcpt to: xxx@host-3

那這就需要RELAY

每個使用者自己的~/.forward就像是/etc/aliases一樣

簡單比較一下

postfix的postqueue -p就是sendmail的mailq

postfix的postqueue -f就是sendmail -q

至於為什麼每次寄失敗就要等一小時

那是設定在/etc/sysconfig/sendmail

最後最後, 當我們以mail看信時

r是reply

z+是下一頁, z-是上一頁

d#是刪信件

d#1-#2是連刪

q刪檔有效的離開

x是刪檔無效的離開

mail server雜亂小筆記

給未來的裕翔

預設sendmail只收localhost的信

telnet localhost 25

注意, 要把sendmail加入/etc/hosts.allow

否則在mail from:xxx@yyy就會access denied了

以telnet進入後(能進入就表示sendmail或postfix有開)

mail from:bob@yahoo.com.tw

(上面寄件者是假冒用, 可以隨便打, 別被目標mail server擋下即可)

(那個冒號前後要不要空格皆可)

rcpt to:yushiangfu@gmail.com

(上面收件者別亂打, 不然怎知有沒成功)

data

subject:test-test-test

test-content

.

quit

寄信完成!

預設是sendmail

如果要改postfix, 安裝好後

alternatives --config mta, 選postfix

chkconfig sendmail off

service sendmail stop

在alternatives裡面

*是預設, +是目前使用

postfix會用到的port不只一個

要擋的話, 針對port 25/tcp即可

/etc/mail裡面都是sendmail的東西

/etc/postfix裡面都是postfix的東西

因為/etc/mail/sendmail.cf語法太難懂

所以有了postfix, 設定檔在

/etc/postfix/main.cf

在main.cf裡面, 有幾個設定要設定

myhostname = stationX.example.com

mydomain = example.com

myorigin = $myhostname

對方收我信就是bob@stationX.example.com

如果是myorigin = $mydomain

對方收我信就是bob@example.com

如此一來, 對方回信不會直接到我電腦

MTA必須加設/etc/aliases讓收到的信自動轉給我

mydestination, 替誰收信, 預設即可

inet_interfaces = all (關鍵步驟)

原本的inet_interfaces = localhost

所以我必須也跟著telnet localhost 25

就算telnet自己public IP也不行, 現在改成all就可以了

mynetwork_style = host

上面設定是, 一堆把我(MTA)設定為smtp server的人

我只幫誰寄(relay)

還有一個設定預設不存在

smtp_hostlookup = native,dns

先看/etc/hosts再看DNS

只有postfix需要這樣設定, 因為sendmail預設會看/etc/hosts

最後最後

head_check和body_check可作可不作,過濾用

現在不作也可以後面的procmail補作

如果對方的MTA沒開導致我的信寄不出去

可以用postqueue -p查看寄不出去的信

萬一對方MTA打開了, 剛失敗的信預設一小時候才會再寄

想要馬上寄出的話, postqueue -f

Monday, May 17, 2010

client端寄信

給未來的裕翔

從client端寄信時

因為只是client

別三八去修改/etc/postfix/main.cfmydestination

保持預設就好

不然不管怎樣都會"成功"寄給本機的帳號

Sunday, May 16, 2010

使用postfix寄信

給未來的裕翔

當我使用postfix寄信時

在同一台機器上寄給其他使用者

一開始會錯誤, /var/log/maillog有紀錄

原因是/etc/postfix/main.cf裡面的
myorigin=$mydomain

mydomain的值是dorm.nthu, 無法反查, 所以信拒收

改成
myorigin=$myhostname

myhostnameru129.dorm.nthu, 可以反查

這樣就可以在同一機器上寄信給對方了

Saturday, May 15, 2010

dovecot, sendmail, postfix練習時哪些要開?

給未來的裕翔

當我裝好dovecot時, 啟動這項服務

原本以為它跟sendmailpostfix是同角色的

不過以alternatives --config mta來查看時

卻似乎不是

所以, sendmailpostfix至少要開啟一個才可以練習

postfix也許少設定什麼, 沒有成功

所以暫時以sendmail來練習

補充:

如果我現在要關掉sendmail開啟postfix

最好是先把sendmail服務停掉

service sendmail stop

然後再改mta

alternatives --config mta