Postfix telepítése SASL támogatással, forrásból Solaris 11.3-ra

A Solaris 11.3-ban jelenleg nincs a gyári postfix csomagban SASL támogatás. E nélkül például nem tudunk autentikálni másik SMTP szerverrel. Ezt a hiányosságot pótolhatjuk, ha forrásból telepítjük a postfix-et SASL támogatással. A teljesség igénye nélkül leírom, hogy ezt hogy teheted meg egyszerűen. A Postfix egyedi beállításaira nem térek ki ebben a cikkben, hiszen az erősen rendszer és környezetfüggő.

Első lépésként szükséges lesz a Cyrus SASL letöltése, fordítása és telepítése. A cikk írásakor a postfix a Dovecot és a Cyrus SASL rétegét tudja kezelni. A hitelesítéshez csak a Cyrus SASL hasznáható. Töltsük le az elérhető legfrisebb verziót (2.1.26).

A következő gyári Solaris 11-es csomagokat telepítsük a sikeres fordításhoz.
sudo pkg install pkg:/developer/build/make \
system/header developer/gcc-3 \
text/gnu-grep \
database/berkeleydb-5

Tömörítsük ki a letöltött tömörített állományt és módosítsuk pár forrás fájl tartalmát, különben a fordítás hibára fog futni.
tar xfz cyrus-sasl-2.1.25.tar.gz
cd cyrus-sasl-2.1.26

./lib/saslutil.c
extern int gethostname(char *, int);
változtasd meg erre:
extern int gethostname(char *, unsigned int);

./plugins/kerberos4.c
extern int gethostname(char *, int);
változtasd meg erre:
extern int gethostname(char *, unsigned int);

./plugins/digestmd5.c
extern int gethostname(char *, int);
változtasd meg erre:
extern int gethostname(char *, unsigned int);

./utils/Makefile.am
add hozzá a következő sorokat:
saslpasswd2_LDFLAGS = -rpath $(libdir)
dbconverter_2_LDFLAGS = -rpath $(libdir)
pluginviewer_LDFLAGS = -rpath $(libdir)

Ezt követően már sikeresen letudod fordítani a Cyrus SASL-t.

./configure –prefix=/usr/local –enable-cram –enable-digest –enable-plain \
–enable-login –disable-krb4 –enable-anon –disable-gssapi \
–with-saslauthd=/usr/local/var/run/saslauthd
gmake -j7
sudo gmake install
sudo ln -s /usr/local/lib/sasl2/ /usr/lib/sasl2

(forrás: http://notallmicrosoft.blogspot.hu/2012/02/solaris-11-setting-up-sendmail-sasl-to.html)

Most következhet a Postfix (3.1.3) forrásból történő telepítése. Töltsd le a Postfix hivatalos oldaláról a szükséges forrás csomagot, majd tömörítsd ki és lépj be az új alkönyvtárba és kezdődhet is a fordítás.

gmake makefiles shared=yes \
shlib_directory=/usr/local/lib/postfix \
config_directory=/usr/local/etc/postfix \
dynamicmaps=yes \
command_directory=/usr/local/sbin \
default_database_type=hash \
daemon_directory=/usr/local/libexec/postfix \
data_directory=/usr/local/var/lib/postfix \
mail_spool_directory=/usr/local/var/mail \
mailq_path=/usr/local/bin/mailq \
meta_directory=/usr/local/etc/postfix \
newaliases_path=/usr/local/bin/newaliases \
queue_directory=/usr/local/var/spool/postfix \
sendmail_path=/usr/local/sbin/sendmail \
CCARGS=”-DHAS_DB -DUSE_SASL_AUTH -DUSE_TLS -DUSE_CYRUS_SASL -I/usr/local/include/sasl -R/usr/local/lib -lsasl2 -DHAS_PCRE `pcre-config –cflags`” \
AUXLIBS=”-L/usr/local/lib -R/usr/local/lib -lsasl2 -lssl -lcrypto `pcre-config –libs` -ldb”

gmake -j5

Szüksége van egy postdrop csoportra és egy postfix nevű felhasználóra, mely tagja a postdrop csoportnak:

sudo groupadd -g 10001 postdrop
sudo useradd -u 10001 -d /usr/local postfix

Majd jöhet a Postfix telepítése:

sudo gmake install
install_root: [/] (fogadjuk el ezt)

Készítsük el a Postfix SMF-ét (root felhasználóként):

cd /lib/svc/manifest/site
svcbundle -o postfix-cc.xml \
-s service-name=application/postfix-cc \
-s start-method=”/usr/local/sbin/postfix start” \
-s stop-method=”/usr/local/sbin/postfix stop”
svcadm restart svc:/system/manifest-import
svcadm enable postfix-sasl
svcs -l postfix-sasl

Így létrejön a postfix-sasl nevű SMF, mellyel könnyedén tudjuk indítani, leállítani a Postfix-et, továbbá élvezhetjük az SMF további előnyeit is.

A Postfix konfigurációit megtalálod a /usr/local/etc/postfix alatt ha nem módosítottad a config_directory paramétert fordításkor.

Szólj hozzá!

Legyél te az első hozzászóló!

Visszajelzés
avatar
wpDiscuz