Current time: 11-24-2024, 07:54 AM Hello There, Guest! (LoginRegister)


Post Reply 
 
Thread Rating:
  • 2 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
FreeBSD JAIL
Author Message
rurk Offline
Junior Member
*

Posts: 18
Joined: Apr 2009
Reputation: 0
Post: #8
FreeBSD
Извините что заставил так долго ждать. Ну как говорится начнемс. Cтавилось это "чудо"(1.0.1 и 1.0.2) на FreeBSD 7.2 (без Jail) по мануалу который здесь в документации. Детально описать не могу так как единого метода установки мне сделать не получилось, грабли были на разных этапах. После установки пришлось коментить "open_basedir" во всех файлах где нашел, в 1.0.3 вроде поправили но детально не рассматривал. Для доступа ФТП-юзеров пришлось лезть в файл calc-functions.php и в секции crypt_blowfish переменную $pre='$2$' менять на $pre='.2.' поскольку пароль для них при первом значении всегда был ":". Хотя там можно поиграться с методами шифрования пароля! Почта изначально берет все из файлов, что не есть гуд для меня. Сразу говорю что почту делал на основе двоих манов http://sys-adm.org.ua http://abills.net.ua. Для начала установил cyrus-sasl2 с опциями
    mysql
    authdaemond
    login
    plain
    cram
    digest
Далее только конфиги! main.cf:
Code:
debug_peer_level = 2
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
myhostname = имя.хоста
mydestination = $myhostname
disable_vrfy_command = yes
smtpd_helo_required = yes
smtpd_helo_restrictions =       permit_sasl_authenticated,
                reject_invalid_hostname,
                        reject_unknown_hostname,
                reject_non_fqdn_hostname
smtpd_recipient_restrictions =  permit_sasl_authenticated,
                reject_unauth_destination,
                reject_unknown_recipient_domain,
                reject_non_fqdn_recipient,
                reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_application_name = smtpd
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions =     permit_sasl_authenticated,
                reject_unknown_sender_domain
virtual_alias_maps = mysql:/usr/local/etc/postfix/sql/aliases.cf
virtual_gid_maps = static:1002
virtual_mailbox_base = /var/mail/virtual
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/sql/virtual_domains.cf
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/sql/virtual_mail_boxes.cf
virtual_mailbox_limit = 51200000
virtual_minimum_uid = 1002
virtual_uid_maps = static:1002
# Additional for quota support for virtual transport
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/sql/virtual_mailbox_limit
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes
maildrop_destination_recipient_limit=1
readme_directory = no
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/local/sbin/sendmail
html_directory = no
setgid_group = vmail
manpage_directory = /usr/local/man
newaliases_path = /usr/local/bin/newaliases
mailq_path = /usr/local/bin/mailq
queue_directory = /var/spool/postfix
mail_owner = postfix
master.cf
Code:
smtp      inet  n       -       n       -       -       smtpd
587       inet  n       -       n       -       -       smtpd
    -o smtpd_client_restrictions=permit_sasl_authenticated,reject_unauth_destination
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
    -o fallback_relay=
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache      unix    -    -    n    -    1    scache
amavis    unix  -       -       n       -       2       smtp
   -o smtp_data_done_timeout=1200
   -o smtp_send_xforward_command=yes
   -o disable_dns_lookups=yes
localhost:10025 inet  n -       n       -      -        smtpd
   -o content_filter=
   -o local_recipient_maps=
   -o relay_recipient_maps=
   -o smtpd_restriction_classes=
   -o smtpd_client_restrictions=
   -o smtpd_helo_restrictions=
   -o smtpd_sender_restrictions=
   -o smtpd_recipient_restrictions=permit_mynetworks,reject
   -o smtpd_override_options=no_address_mappings
   -o mynetworks=127.0.0.0/8
   -o strict_rfc821_envelopes=yes
ispcp-arpl unix  -      n       n       -       -       pipe
  flags=O user=vmail argv=/var/www/ispcp/engine/messager/ispcp-arpl-msgr
maildrop  unix  -       n       n       -       -       pipe
  flags=Rhu user=vmail argv=/usr/bin/maildrop -w 90 -d ${recipient}
aliases.cf
Code:
user = username
password = password
dbname = ispcp
hosts = 127.0.0.1
query = SELECT mail_forward FROM mail_users WHERE mail_addr='%s' and mail_type='normal_forward'
virtual_domains.cf
Code:
user = username
password =password
hosts = 127.0.0.1
dbname = ispcp
query = SELECT domain_name FROM domain WHERE domain_name = '%s'
virtual_mail_boxes.cf
Code:
user = username
password = password
dbname = ispcp
hosts = 127.0.0.1
query = SELECT CONCAT(md.domain_name,'/',mb.mail_acc,'/') FROM mail_users mb, domain md WHERE CONCAT(mb.mail_acc, '@', md.domain_name)='%s' and mb.domain_id=md.domain_id
virtual_mailbox_limit
Code:
user = username
password = password
hosts = 127.0.0.1
dbname = ispcp
query = SELECT (quota*10) FROM mail_users mb, domain md WHERE CONCAT(mb.mail_acc, '@', md.domain_name)='%s' and mb.domain_id=md.domain_id
Для того чтоб нас авторизировало по SMTP создаем файлик smtpd.conf в директории /usr/local/lib/sasl2 со следующим содержанием:
Code:
allowplaintext: yes
pwcheck_method: authdaemond
auxprop_plugin: sql
password_format: crypt
mech_list: plain login cram-md5 digest-md5
sql_engine: mysql
mysql_user: username
mysql_passwd: password
mysql_database: ispcp
mysql_hostnames: 127.0.0.1
mysql_statement: SELECT mail_pass FROM mail_users where mail_addr='%u@%r'
Далее в файлике mail_add.php ищем строчку
    Code:
    $mail_pass=encrypt_db_password($mail_pass);
и меняем ее на
    Code:
    $mail_pass=crypt_user_pass_with_salt($mail_pass)
В файле mail_edit.php
    Code:
    $pass=encrypt_db_password($pass)
меняем на
    Code:
    $pass=crypt_user_pass_with_salt($pass)
иначе по смтп пускать не будет! Как бы у меня все, будут вопросы пишите!
01-26-2010 02:25 AM
Find all posts by this user Quote this message in a reply
Post Reply 


Messages In This Thread
FreeBSD JAIL - rurk - 12-30-2009, 07:21 AM
RE: FreeBSD JAIL - server801 - 01-02-2010, 09:02 AM
RE: FreeBSD JAIL - rurk - 01-12-2010, 08:00 AM
RE: FreeBSD JAIL - server801 - 01-12-2010, 10:12 AM
RE: FreeBSD JAIL - blocker - 01-12-2010, 12:26 PM
RE: FreeBSD JAIL - rurk - 01-13-2010, 08:43 AM
RE: FreeBSD JAIL - ZULI - 01-21-2010, 06:25 AM
FreeBSD - rurk - 01-26-2010 02:25 AM
RE: FreeBSD JAIL - rurk - 01-26-2010, 11:23 PM

Forum Jump:


User(s) browsing this thread: 1 Guest(s)