konfiguracja sandmail dla potrzeb php

Konfiguracja serwerów, usług, itp.
raczkowski1
Beginner
Posty: 124
Rejestracja: 04 lipca 2007, 10:08

konfiguracja sandmail dla potrzeb php

Post autor: raczkowski1 »

witam
jestem poczatkujacy i mam pytanie jak nalezy skonfigurowac sandmail aby skrypty php mogly wysylac maila?
teraz wyglada to tak:
w php 4.3.10-21 jest wpis

Kod: Zaznacz cały

sendmail_path = /usr/sbin/sendmail -t -i
w systemie(Debian) nie ma katalogu /etc/mail
a na porcie 25 nasłuchuje postfix,
na stronie www formularz wysyla maila i nie zwraca bledu funkcja mail() ale do adresata mail nie dochodzi.

Z gory dziekuje za pomoc

pozdrawiam
Dariusz Raczkowski
miszmaniac
Posty: 79
Rejestracja: 09 maja 2007, 00:11
Lokalizacja: Gdynia

Post autor: miszmaniac »

A sprawdziłeś /var/log/mail.log? Może tam jest coś co sugerowałoby odpowiedź na pytanie?
raczkowski1
Beginner
Posty: 124
Rejestracja: 04 lipca 2007, 10:08

Post autor: raczkowski1 »

miszmaniac pisze:A sprawdziłeś /var/log/mail.log? Może tam jest coś co sugerowałoby odpowiedź na pytanie?
ma w tym pliku cos takiego:

Kod: Zaznacz cały


Jul  1 06:31:14 atrium-gw postfix/pickup[22836]: 7B39E4F462C: uid=0 from=<root>
Jul  1 06:31:14 atrium-gw postfix/cleanup[25594]: 7B39E4F462C: message-id=<20070
701043113.7B39E4F462C@atrium-gw>
Jul  1 06:31:14 atrium-gw postfix/qmgr[2986]: 7B39E4F462C: from=<root@atrium-gw>
, size=35808, nrcpt=1 (queue active)
Jul  1 06:31:15 atrium-gw postfix/local[25596]: 7B39E4F462C: to=<admin@atrium-gw
>, orig_to=<root>, relay=local, delay=2, status=sent (delivered to command: proc
mail -a "$EXTENSION")
Jul  1 06:31:15 atrium-gw postfix/qmgr[2986]: 7B39E4F462C: removed
Jul  1 07:00:14 atrium-gw postfix/pickup[22836]: 2FCFE15C001: uid=1001 from=<adm
in>
Jul  1 07:00:14 atrium-gw postfix/cleanup[28156]: 2FCFE15C001: message-id=<20070
701050014.2FCFE15C001@atrium-gw>
Jul  1 07:00:14 atrium-gw postfix/qmgr[2986]: 2FCFE15C001: from=<admin@atrium-gw
>, size=656, nrcpt=1 (queue active)
Jul  1 07:00:14 atrium-gw postfix/cleanup[28173]: 4F36415C002: message-id=<20070
701050014.4F36415C002@atrium-gw>
Jul  1 07:00:14 atrium-gw postfix/pickup[22836]: 4F36415C002: uid=0 from=<root>
Jul  1 07:00:14 atrium-gw postfix/qmgr[2986]: 4F36415C002: from=<root@atrium-gw>
, size=560, nrcpt=1 (queue active)
Jul  1 07:00:14 atrium-gw postfix/local[28174]: 2FCFE15C001: to=<admin@atrium-gw
>, orig_to=<admin>, relay=local, delay=0, status=sent (delivered to command: pro
cmail -a "$EXTENSION")
/var/log/mail.log
miszmaniac
Posty: 79
Rejestracja: 09 maja 2007, 00:11
Lokalizacja: Gdynia

Post autor: miszmaniac »

Jeśli to są logi tego co wysyłałeś przez stronę, to znaczy, że PHP działa dobrze.
Wiadomość została wysłana. Jak widzisz, jest relay=local czyli dostarczyłeś wiadomość do lokalnego konta, sprawdź w /var/spool/mail, czy tam nie ma wiadomości.
Może nie masz takiego aliasu i dlatego nie widzisz, że przyszła wiadomość?
raczkowski1
Beginner
Posty: 124
Rejestracja: 04 lipca 2007, 10:08

Post autor: raczkowski1 »

teraz podaje logi z dzisiaj mail.log:
Jul 4 09:02:07 atrium-gw postfix/pickup[25559]: EAA7515C001: uid=106 from=<logcheck>
Jul 4 09:02:07 atrium-gw postfix/cleanup[26681]: EAA7515C001: message-id=<20070704070207.EAA7515C001@atrium-gw>
Jul 4 09:02:07 atrium-gw postfix/qmgr[2986]: EAA7515C001: from=<logcheck@atrium-gw>, size=12535, nrcpt=1 (queue active)
Jul 4 09:02:08 atrium-gw postfix/local[26685]: EAA7515C001: to=<admin@atrium-gw>, orig_to=<root>, relay=local, delay=1, statu
s=sent (delivered to command: procmail -a "$EXTENSION")
Jul 4 09:02:08 atrium-gw postfix/qmgr[2986]: EAA7515C001: removed
Jul 4 10:02:09 atrium-gw postfix/pickup[25559]: 536C64F6A45: uid=106 from=<logcheck>
Jul 4 10:02:09 atrium-gw postfix/cleanup[613]: 536C64F6A45: message-id=<20070704080209.536C64F6A45@atrium-gw>
Jul 4 10:02:09 atrium-gw postfix/qmgr[2986]: 536C64F6A45: from=<logcheck@atrium-gw>, size=15271, nrcpt=1 (queue active)
Jul 4 10:02:09 atrium-gw postfix/local[617]: 536C64F6A45: to=<admin@atrium-gw>, orig_to=<root>, relay=local, delay=0, status=
sent (delivered to command: procmail -a "$EXTENSION")
Jul 4 10:02:09 atrium-gw postfix/qmgr[2986]: 536C64F6A45: removed
Jul 4 10:17:11 atrium-gw postfix/smtpd[2084]: connect from r_caffe[192.168.100.50]
Jul 4 10:17:11 atrium-gw postfix/smtpd[2084]: NOQUEUE: reject: RCPT from r_caffe[192.168.100.50]: 554 <raczkowski1@op.pl>: Re
lay access denied; from=<admin@atrium-pc.pl> to=<raczkowski1@op.pl> proto=ESMTP helo=<[127.0.0.1]>
Jul 4 10:17:19 atrium-gw postfix/smtpd[2084]: disconnect from r_caffe[192.168.100.50]
Jul 4 10:23:29 atrium-gw postfix/smtpd[2586]: connect from r_caffe[192.168.100.50]
Jul 4 10:23:29 atrium-gw postfix/smtpd[2586]: lost connection after CONNECT from r_caffe[192.168.100.50]
Jul 4 10:23:29 atrium-gw postfix/smtpd[2586]: disconnect from r_caffe[192.168.100.50]
Jul 4 10:23:30 atrium-gw postfix/smtpd[2586]: connect from r_caffe[192.168.100.50]
Jul 4 10:23:30 atrium-gw postfix/smtpd[2586]: lost connection after CONNECT from r_caffe[192.168.100.50]
Jul 4 10:23:30 atrium-gw postfix/smtpd[2586]: disconnect from r_caffe[192.168.100.50]
Jul 4 11:02:11 atrium-gw postfix/pickup[3621]: 66E074F5896: uid=106 from=<logcheck>
Jul 4 11:02:11 atrium-gw postfix/cleanup[7294]: 66E074F5896: message-id=<20070704090211.66E074F5896@atrium-gw>
Jul 4 11:02:11 atrium-gw postfix/qmgr[2986]: 66E074F5896: from=<logcheck@atrium-gw>, size=17607, nrcpt=1 (queue active)
Jul 4 11:02:11 atrium-gw postfix/local[7298]: 66E074F5896: to=<admin@atrium-gw>, orig_to=<root>, relay=local, delay=0, status
=sent (delivered to command: procmail -a "$EXTENSION")
Jul 4 11:02:11 atrium-gw postfix/qmgr[2986]: 66E074F5896: removed
Jul 4 12:02:10 atrium-gw postfix/pickup[3621]: 274104F587E: uid=106 from=<logcheck>
Jul 4 12:02:10 atrium-gw postfix/cleanup[13924]: 274104F587E: message-id=<20070704100209.274104F587E@atrium-gw>
Jul 4 12:02:10 atrium-gw postfix/qmgr[2986]: 274104F587E: from=<logcheck@atrium-gw>, size=27078, nrcpt=1 (queue active)
Jul 4 12:02:10 atrium-gw postfix/local[13928]: 274104F587E: to=<admin@atrium-gw>, orig_to=<root>, relay=local, delay=1, statu
s=sent (delivered to command: procmail -a "$EXTENSION")
Jul 4 12:02:10 atrium-gw postfix/qmgr[2986]: 274104F587E: removed
Jul 4 13:02:09 atrium-gw postfix/pickup[14937]: C8D3215C001: uid=106 from=<logcheck>
Jul 4 13:02:09 atrium-gw postfix/cleanup[20468]: C8D3215C001: message-id=<20070704110209.C8D3215C001@atrium-gw>
Jul 4 13:02:09 atrium-gw postfix/qmgr[2986]: C8D3215C001: from=<logcheck@atrium-gw>, size=44284, nrcpt=1 (queue active)
Jul 4 13:02:10 atrium-gw postfix/local[20472]: C8D3215C001: to=<admin@atrium-gw>, orig_to=<root>, relay=local, delay=1, statu
s=sent (delivered to command: procmail -a "$EXTENSION")
Jul 4 13:02:10 atrium-gw postfix/qmgr[2986]: C8D3215C001: removed
Jul 4 13:02:48 atrium-gw postfix/pickup[14937]: E14E615C001: uid=33 from=<www-data>
Jul 4 13:02:48 atrium-gw postfix/cleanup[20468]: E14E615C001: message-id=<20070704110248.E14E615C001@atrium-gw>
Jul 4 13:02:48 atrium-gw postfix/qmgr[2986]: E14E615C001: from=<www-data@atrium-gw>, size=656, nrcpt=2 (queue active)
Jul 4 13:02:51 atrium-gw postfix/smtp[20486]: E14E615C001: to=<admin@atrium-pc.pl>, relay=atrium-pc.home.pl[212.85.124.158],
i ostatnie wiadomosci w /var/spool/mail/www-data:

From MAILER-DAEMON Wed Jul 4 13:02:51 2007
Return-Path: <>
X-Original-To: www-data@atrium-gw
Delivered-To: www-data@atrium-gw
Received: by atrium-gw (Postfix)
id 82B9915C002; Wed, 4 Jul 2007 13:02:51 +0200 (CEST)
Date: Wed, 4 Jul 2007 13:02:51 +0200 (CEST)
From: MAILER-DAEMON@atrium-gw (Mail Delivery System)
Subject: Undelivered Mail Returned to Sender
To: www-data@atrium-gw
MIME-Version: 1.0
Content-Type: multipart/report; report-type=delivery-status;
boundary="E14E615C001.1183546971/atrium-gw"
Message-Id: <20070704110251.82B9915C002@atrium-gw>

This is a MIME-encapsulated message.

--E14E615C001.1183546971/atrium-gw
Content-Description: Notification
Content-Type: text/plain

This is the Postfix program at host atrium-gw.

I'm sorry to have to inform you that your message could not be
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to <postmaster>

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

The Postfix program

<admin@atrium-pc.pl>: host atrium-pc.home.pl[212.85.124.158] said: 550 sender
not found... podany nadawca nie istnieje... (in reply to MAIL FROM command)

<biuro@atrium-pc.pl>: host atrium-pc.home.pl[212.85.124.158] said: 550 sender
not found... podany nadawca nie istnieje... (in reply to MAIL FROM command)

--E14E615C001.1183546971/atrium-gw
Content-Description: Delivery report
Content-Type: message/delivery-status
Content-Type: message/delivery-status

Reporting-MTA: dns; atrium-gw
X-Postfix-Queue-ID: E14E615C001
X-Postfix-Sender: rfc822; www-data@atrium-gw
Arrival-Date: Wed, 4 Jul 2007 13:02:48 +0200 (CEST)

Final-Recipient: rfc822; admin@atrium-pc.pl
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix; host atrium-pc.home.pl[212.85.124.158] said: 550
sender not found... podany nadawca nie istnieje... (in reply to MAIL FROM
command)

Final-Recipient: rfc822; biuro@atrium-pc.pl
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix; host atrium-pc.home.pl[212.85.124.158] said: 550
sender not found... podany nadawca nie istnieje... (in reply to MAIL FROM
command)

--E14E615C001.1183546971/atrium-gw
Content-Description: Undelivered Message
Content-Type: message/rfc822

Received: by atrium-gw (Postfix, from userid 33)
id E14E615C001; Wed, 4 Jul 2007 13:02:48 +0200 (CEST)
To: biuro@atrium-pc.pl, admin@atrium-pc.pl
Subject: Wiadomo<B6><E6> ze strony atrium-pc
X-Sender: biuro@atrium-pc.pl
From: admin@atrium-pc.pl
X-Mailer:PHP v 4.3.10-21
MIME-Version: 1.0
Content-type: text/html; charset=iso-8859-2
Message-Id: <20070704110248.E14E615C001@atrium-gw>
Date: Wed, 4 Jul 2007 13:02:48 +0200 (CEST)


Wiadomo<B6><E6> z formularza na stronie atrium-pc:

Imi<EA> i nazwisko: daro
Email: admin@atrium-pc.pl

Wiadomo<B6><E6>:
jakas tresc

--E14E615C001.1183546971/atrium-gw--
niby dziala ale nie dochodzia maile na adresy zewnetrzne (np na wp. czy home.pl). co zrobic?
miszmaniac
Posty: 79
Rejestracja: 09 maja 2007, 00:11
Lokalizacja: Gdynia

Post autor: miszmaniac »

To pewnie kwestia odpowiedniej konfiguracji POSTFIX'a.
Najprościej będzie dodać adres 127.0.0.1 do mynetworks, i relayować wszystko co idzie z localhosta.

Kod: Zaznacz cały

mynetworks = 127.0.0.0/8
raczkowski1
Beginner
Posty: 124
Rejestracja: 04 lipca 2007, 10:08

Post autor: raczkowski1 »

miszmaniac pisze:To pewnie kwestia odpowiedniej konfiguracji POSTFIX'a.
Najprościej będzie dodać adres 127.0.0.1 do mynetworks, i relayować wszystko co idzie z localhosta.

Kod: Zaznacz cały

mynetworks = 127.0.0.0/8
a moglbym prosic o dokladniejszy opis czyli w jaki plik wpisac to?

PS poza tematem mam glupie pytanie, jak dodac uzytkownika kowalski z prawami pelnymi administratora? :-/
miszmaniac
Posty: 79
Rejestracja: 09 maja 2007, 00:11
Lokalizacja: Gdynia

Post autor: miszmaniac »

Sprawdź plik /etc/postfix/main.cf czy jest tam wpis mynetworks= i jeśli nie ma, to go dopisz, a potem

Kod: Zaznacz cały

postfix reload
Chodzi o to, że twój postfix, nie pozwala na wysłanie wiadomości z nieistniejącego konta. Możesz ewentualnie spróbować roszerzyć funkcję mail w skrypcie php o adres nadawcy, tak jak na tym przykładzie:

Kod: Zaznacz cały

mail("nobody@example.com", "temat", $wiadomosc,
     "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVER_NAME");
Ale nie jestem pewien czy to pomoże, także nie obiecuje :)


Administratora systemu? Jest nim root i to jest konto administracyjne.
raczkowski1
Beginner
Posty: 124
Rejestracja: 04 lipca 2007, 10:08

Post autor: raczkowski1 »

Wpis w main.cf nie pomógł, a przy wykonaniu funkcji, którą podałeś pojawia się:

Kod: Zaznacz cały

Warning: mail(): SAFE MODE Restriction in effect. The fifth parameter is disabled in SAFE MODE. in /var/www/sklep/internet/wyslij.php on line 24
A mogą być jakieś zabezpieczenia typu blokada wysyłki przez port 25 (na firewallu)?
miszmaniac
Posty: 79
Rejestracja: 09 maja 2007, 00:11
Lokalizacja: Gdynia

Post autor: miszmaniac »

Spróbuj wywalić piąte pole z funkcji mail, podaj tylko:

Kod: Zaznacz cały

mail("nobody@example.com", "temat", $wiadomosc,
     "From: webmaster@$SERVER_NAME")
To zabezpieczenie to kwestia odpowiedniego przestawienia php.ini.

A na firewallu może teoretycznie być zablokowane, ale w ten sposób, to raczej serwer poczty by nie działał w ogóle :)

//edit
używaj tagów code
mlyczek
ODPOWIEDZ