BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Локальный почтовый сервер
СообщениеДобавлено: Ср 13 июл, 2016 9:57 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Доброго времени суток...
Хочу собрать локальный почтовый сервак. Использовать буду следующий набор программ

fetchmail (чтобы забирал почту с ящика на mail.ru)
exim (чтобы отправлял почту)
dovecot (чтобы раскладывал почту по ящикам пользователей)
Так же хочу, что бы был WEB интерфейс добавления пользователей + все пользователи должны быть в sql базе
Для этого поставлю следующее:
apache22
php5
postfixadmin
mysql56-client
mysql56-server

Приступил к сборке, поставил fetchmail, apache22, mysql56, а вот при установке php5 столкнулся с проблемой:
1 problem(s) in the installed packages found.
=> Please update your ports tree and try again.
=> Note: Vulnerable ports are marked as such even if there is no update available.
=> If you wish to ignore this vulnerability rebuild with 'make DISABLE_VULNERABILITIES=yes'
*** [check-vulnerable] Error code 1

Stop in /usr/ports/lang/php5.
*** [install] Error code 1

Stop in /usr/ports/lang/php5.

Просит что бы я разрешил в make.conf установку уязвимых программ...
Как лучше поступить?
Если установлю уязвимый php5, дальше postfixadmin не захочет устанавливаться
Если вместо php5 поставлю php55, то насколько я понял, mysql начнет ругаться, что для совместной работы с postfixadmin нужен модуль php5-mysql, вместо php55-mysql

Если нужна дополнительная информация, спросите...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Ср 13 июл, 2016 12:42 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
В портах уже полгода нет lang/php5. Обновляйте порты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Ср 13 июл, 2016 1:07 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
AMDmi3 писал(а):
В портах уже полгода нет lang/php5. Обновляйте порты.

Странно, я обновил порты перед тем как запускать установку...

Ладно, если php5 "устарел", тогда лучше php55 поставлю...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 18 июл, 2016 10:07 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Для WEB интерфейса собрал из портов:
apache24-2.4.23
mysql56-client-5.6.30
mysql56-server-5.6.30
php55-5.5.37
mod_php55-5.5.37
postfixadmin

Далее заполнил конфиги. Приведу сюда вкратце и по делу:
В mysql создал базу,пользователя и задал пароль (всё обозначается как "mail")
В АПАЧЕ добавил строки:
Код:
LoadModule php5_module        libexec/apache24/libphp5.so 

<IfModule mod_php5.c> 
    DirectoryIndex index.php index.php3 index.html 

    AddType application/x-httpd-php .php 
    AddType application/x-httpd-php-source .phps 
</IfModule>

+ создал файл /usr/local/etc/apache24/Includes/postfixadmin.con с содержанием:
Код:
alias /postfixadmin "/usr/local/www/postfixadmin" 

<Directory "/usr/local/www/postfixadmin"> 
    AllowOverride none 
    DirectoryIndex index.php 
    Require all granted 
</Directory>

Ну и в postfixadmin указал:
Код:
$CONF['configured'] = true;
$CONF['postfix_admin_url'] = 'http://192.168.10.4/postfixadmin'
$CONF['database_type'] = ‘mysql';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = ‘mail';
$CONF['database_password'] = ‘mail';
$CONF['database_name'] = ‘mail';
$CONF['emailcheck_resolve_domain']='NO';

После всех этих изменений, захожу на WEB интерфейс, и вижу следующее:
Postfix Admin Setup Checker

Running software:
Error: Depends on: PHP v5
\n"; $error += 1; } elseif (version_compare(phpversion(), '5.2.3') < 0) { # smarty uses htmlentities() with 4 parameters, the 4th parameter was introduced in PHP 5.2.3 # older PHP versions will cause warnings $phpversion = 5; print "•Recommended PHP version: >= 5.2.3, you have " . phpversion () . "
\n"; } else { $phpversion = 5; print "•PHP version " . phpversion () . "
\n"; } # TODO: check for PHP >= 5.2.3 - smarty uses htmlentities with 4 parameters. The forth parameter was added in PHP 5.2.3, older versions will give a warning } else { print "•Unable to check for PHP version. (missing function: phpversion())
\n"; } // // Check for Apache version // if ($f_apache_get_version == 1) { print "•" . apache_get_version() . "
\n"; } else { # not running on Apache. # However postfixadmin _is_ running, so obviously we are on a supported webserver ;-)) # No need to confuse the user with a warning. } print ""; print "
Checking for dependencies:\n"; print "
\n"; // // Check for Magic Quotes // if ($f_get_magic_quotes_gpc == 1) { if (get_magic_quotes_gpc () == 0) { print "•Magic Quotes: Disabled - OK
\n"; } else { print "•Warning: Magic Quotes: ON (internal workaround used)
\n"; } } else { print "•Unable to check for Magic Quotes. (missing function: get_magic_quotes_gpc())
\n"; } // // Check for config.inc.php // $config_loaded = 0; if ($file_config == 1) { print "•Depends on: presence config.inc.php - OK
\n"; require_once($incpath.'/config.inc.php'); $config_loaded = 1; if(isset($CONF['configured'])) { if($CONF['configured'] === TRUE) { print "•Checking \$CONF['configured'] - OK\n"; } else { print "
•Warning: \$CONF['configured'] is 'false'.
\n"; print "You must edit your config.inc.php and change this to true (this indicates you've created the database and user)\n"; } } } else { print "
•Error: Depends on: presence config.inc.php - NOT FOUND

\n"; print "Create the file, and edit as appropriate (e.g. select database type etc)
"; print "For example:
\n"; print "cp config.inc.php.sample config.inc.php
\n"; $error =+ 1; } // // Check if templates directory is writable // if (!is_writeable($incpath.'/templates_c')) { print "•Error: Smarty template compile directory templates_c is not writable.
\n"; print "Please make it writable.
\n"; print "If you are using SELinux or AppArmor, you might need to adjust their setup to allow write access.
\n"; $error =+ 1; } else { print "
•Smarty template compile directory is writable - OK
\n"; } // // Check if there is support for at least 1 database // if (($f_mysql_connect == 0) and ($f_mysqli_connect == 0) and ($f_pg_connect == 0)) { print "
•Error: There is no database support in your PHP setup
\n"; print "To install MySQL 3.23 or 4.0 support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php$phpversion-mysql/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-mysql
\n"; if ($phpversion >= 5) { print "To install MySQL 4.1 support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php5-mysqli/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php5-mysqli
\n"; } print "To install PostgreSQL support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php$phpversion-pgsql/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-pgsql

\n"; $error =+ 1; } // // MySQL 3.23, 4.0 functions // if ($f_mysql_connect == 1) { print "•Depends on: MySQL 3.23, 4.0 - OK
\n"; } // // MySQL 4.1 functions // if ($phpversion >= 5) { if ($f_mysqli_connect == 1) { print "•Depends on: MySQL 4.1 - OK\n"; if ( !($config_loaded && $CONF['database_type'] == 'mysqli') ) { print "
(change the database_type to 'mysqli' in config.inc.php if you want to use MySQL)\n"; } print "
"; } } // // PostgreSQL functions // if ($f_pg_connect == 1) { print "•Depends on: PostgreSQL - OK \n"; if ( !($config_loaded && $CONF['database_type'] == 'pgsql') ) { print "
(change the database_type to 'pgsql' in config.inc.php if you want to use PostgreSQL)\n"; } print "
"; } // // Database connection // if ($config_loaded) { list ($link, $error_text) = db_connect(TRUE); if ($error_text == "") { print "•Testing database connection - OK - {$CONF['database_type']}://{$CONF['database_user']}:xxxxx@{$CONF['database_host']}/{$CONF['database_name']}
"; } else { print "•Error: Can't connect to database
\n"; print "Please edit the \$CONF['database_*'] parameters in config.inc.php.\n"; print "$error_text
\n"; $error ++; } } // // Session functions // if ($f_session_start == 1) { print "•Depends on: session - OK
\n"; } else { print "•Error: Depends on: session - NOT FOUND
\n"; print "To install session support on FreeBSD:
\n"; print "% cd /usr/ports/www/php$phpversion-session/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-session

\n"; $error =+ 1; } // // PCRE functions // if ($f_preg_match == 1) { print "•Depends on: pcre - OK
\n"; } else { print "•Error: Depends on: pcre - NOT FOUND
\n"; print "To install pcre support on FreeBSD:
\n"; print "% cd /usr/ports/devel/php$phpversion-pcre/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-pcre

\n"; $error =+ 1; } // // Multibyte functions // if ( $f_mb_encode_mimeheader == 1 ) { print "•Depends on: multibyte string - OK
\n"; } else { print "•Error: Depends on: multibyte string - NOT FOUND
\n"; print "To install multibyte string support, install php$phpversion-mbstring
\n"; $error =+ 1; } // // Imap functions // if ( $f_imap_open == 1) { print "•Depends on: IMAP functions - OK
\n"; } else { print "•Warning: Depends on: IMAP functions - NOT FOUND
\n"; print "To install IMAP support, install php$phpversion-imap
\n"; print "Without IMAP support, you won't be able to create subfolders when creating mailboxes.
\n"; # $error =+ 1; } print ""; if ($error != 0) { print "
Please fix the errors listed above.
"; } else { print "
Everything seems fine... attempting to create/update database structure
\n"; require_once($incpath.'/upgrade.php'); $tUsername = ''; $setupMessage = ''; $lostpw_error = 0; $setuppw = ""; if (isset($CONF['setup_password'])) $setuppw = $CONF['setup_password']; if (safepost("form") == "setuppw") { # "setup password" form submitted if (safepost('setup_password') != safepost('setup_password2')) { $setupMessage = "The two passwords differ!"; $lostpw_error = 1; } else { list ($lostpw_error, $lostpw_result) = check_setup_password(safepost('setup_password'), 1); $setupMessage = $lostpw_result; $setuppw = "changed"; } } elseif (safepost("form") == "createadmin") { # "create admin" form submitted list ($pw_check_error, $pw_check_result) = check_setup_password(safepost('setup_password')); if ($pw_check_result != 'pass_OK') { $error += 1; $setupMessage = $pw_check_result; } if($error == 0 && $pw_check_result == 'pass_OK') { // XXX need to ensure domains table includes an 'ALL' entry. $table_domain = table_by_key('domain'); $r = db_query("SELECT * FROM $table_domain WHERE domain = 'ALL'"); if($r['rows'] == 0) { db_insert('domain', array('domain' => 'ALL', 'description' => '', 'transport' => '') ); // all other fields should default through the schema. } $values = array( 'username' => safepost('username'), 'password' => safepost('password'), 'password2' => safepost('password2'), 'superadmin' => 1, 'domains' => array(), 'active' => 1, ); list ($error, $setupMessage, $errormsg) = create_admin($values); if ($error != 0) { $tUsername = htmlentities($values['username']); } else { $setupMessage .= "
You are done with your basic setup. "; $setupMessage .= "

You can now login to PostfixAdmin using the account you just created."; } } } if ( ($setuppw == "" || $setuppw == "changeme" || safeget("lostpw") == 1 || $lostpw_error != 0) /* && $_SERVER['REQUEST_METHOD'] != "POST" */ ) { # show "create setup password" form ?>






Change setup password

Setup password
Setup password (again)







Create superadmin account

Setup password Lost password?




Since version 2.3 there is no requirement to delete setup.php!
\n"; print "Check the config.inc.php file for any other settings that you might need to change!
\n"; } ?> 0 (or 1), 'message => text ) */ function check_setup_password($password, $lostpw_mode = 0) { global $CONF; $error = 1; # be pessimistic $setuppw = ""; if (isset($CONF['setup_password'])) $setuppw = $CONF['setup_password']; list($confsalt, $confpass, $trash) = explode(':', $setuppw . '::'); $pass = encrypt_setup_password($password, $confsalt); $validpass = validate_password($password); if ($password == "" ) { # no password specified? $result = "Setup password must be specified
If you didn't set up a setup password yet, enter the password you want to use."; } elseif (count($validpass) > 0) { $result = $validpass[0]; # TODO: honor all error messages, not only the first one } elseif ($pass == $setuppw && $lostpw_mode == 0) { # correct passsword (and not asking for a new password) $result = "pass_OK"; $error = 0; } else { $pass = encrypt_setup_password($password, generate_setup_password_salt()); $result = ""; if ($lostpw_mode == 1) { $error = 0; # non-matching password is expected when the user asks for a new password } else { $result = '
Setup password not specified correctly
'; } $result .= '
If you want to use the password you entered as setup password, edit config.inc.php or config.local.php and set
'; $result .= "\$CONF['setup_password'] = '$pass';
"; } return array ($error, $result); } function create_admin($values) { DEFINE('POSTFIXADMIN_SETUP', 1); # avoids instant redirect to login.php after creating the admin $handler = new AdminHandler(1, 'setup.php'); $formconf = $handler->webformConfig(); if (!$handler->init($values['username'])) { return array(1, "", $handler->errormsg); } if (!$handler->set($values)) { return array(1, "", $handler->errormsg); } if (!$handler->store()) { return array(1, "", $handler->errormsg); } return array( 0, $handler->infomsg['success'], array(), ); } /* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */ ?>


Много на что ругается, вроде бы пишет что параметр configured в значении false... Потом вроде бы ругается что не может к базе подключиться и т.д.
Подскажите пожалуйста, что WEB интерфейс просит сделать? Что ему нужно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пт 02 сен, 2016 3:51 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Вопрос всё ещё актуален
Коллеги, нужна Ваша помощь...

Я думаю АПАЧ24 не может состыковаться с PHP55...

Может у кого был опыт связки Apache24+PHP55 ? Поделитесь пожалуйста


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Сб 03 сен, 2016 1:10 pm 
Не в сети

Зарегистрирован: Вс 08 мар, 2015 11:31 am
Сообщения: 157
www/mod_php5x

AddType application/x-httpd-php .php

Всё, больше ничего не надо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Сб 03 сен, 2016 8:06 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
DenisVS писал(а):
www/mod_php5x
AddType application/x-httpd-php .php
Всё, больше ничего не надо.

Я уже всё это сделал... Я же выше написал, что поставил из портов mod_php55. И строку AddType application/x-httpd-php .php в конфигурацию АПАЧА добавил...

Я тут к другому выводу пришел. Вот что показала команда:
php -m
$ php -m
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212-zts/session.so' - Cannot open "/usr/local/lib/php/20121212-zts/session.so" in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212-zts/mbstring.so' - Cannot open "/usr/local/lib/php/20121212-zts/mbstring.so" in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212-zts/xml.so' - Cannot open "/usr/local/lib/php/20121212-zts/xml.so" in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212-zts/xmlrpc.so' - Cannot open "/usr/local/lib/php/20121212-zts/xmlrpc.so" in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212-zts/mysql.so' - Cannot open "/usr/local/lib/php/20121212-zts/mysql.so" in Unknown on line 0
[PHP Modules]
Core
date
ereg
libxml
mysqlnd
pcre
Reflection
SPL
standard

[Zend Modules]

Я когда изначально собирал php, похоже всё испортил... Я вначале ставил php5 потом удалил его, далее поставил php55. Похоже и php5 и php55 оставили свои корни в системе. Мне бы сейчас вычистить всё (php и mod_php и вообще все моды php) . А уж после заново поставить php55. Вот только как можно всё вычистить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Сб 03 сен, 2016 11:43 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
У вас наверное php одной версии а модули от другой. Это будет видно в pkg info. В таком случае просто пересоберите модули


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 9:27 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
В pkg info только php55 виден, ни слова о php5
mod_php55
php55
php55-mysql

Я когда php55 ставил, он как то криво устанавливался, всё время прерывался на ошибках, просил модули доставить... Я этих модулей около 20-30 вручную доставил... Выглядели они так:
p5-Devel-GlobalDestruction
p5-Sub-Exporter
p5..... и т.д.
Только после всего этого php55 установился...

Наверное где то в этом кроется ошибка? Что подскажите?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 9:59 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
У Вас команда portversion -v отрабатывает?
У меня так:
root@free:~ # portversion -v : grep php
portversion: Command not found

Что то из портов не доставилось что ли?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 10:48 am 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5323
Откуда: СССР, Харьков
Reken писал(а):
У Вас команда portversion -v отрабатывает?
У меня так:
root@free:~ # portversion -v : grep php
portversion: Command not found

Что то из портов не доставилось что ли?

На какой системе вы это делаете?
portversion входит в состав portupgrade
Вы посмотрите актуальность установленных портов pkg version -vl "<"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 11:14 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Система FreeBSD 9.3
pkg version
$ pkg version -vl "<"
autoconf-2.69 < needs updating (index has 2.69_1)
ca_root_nss-3.22.2 < needs updating (index has 3.25)
cmake-3.5.2_1 < needs updating (index has 3.5.2_2)
curl-7.49.0 < needs updating (index has 7.49.1)
dialog4ports-0.1.5_2 < needs updating (index has 0.1.6)
expat-2.1.1_1 < needs updating (index has 2.2.0)
fetchmail-6.3.26_2 < needs updating (index has 6.3.26_4)
gettext-runtime-0.19.7 < needs updating (index has 0.19.8.1)
gettext-tools-0.19.7 < needs updating (index has 0.19.8.1)
glib-2.46.2 < needs updating (index has 2.46.2_2)
gmake-4.1_2 < needs updating (index has 4.2.1_1)
jsoncpp-1.7.2_1 < needs updating (index has 1.7.3)
libarchive-3.2.0_1,1 < needs updating (index has 3.2.1,1)
libgcrypt-1.7.0 < needs updating (index has 1.7.1)
libgpg-error-1.22 < needs updating (index has 1.23)
libxslt-1.1.28_8 < needs updating (index has 1.1.29)
pcre-8.38_1 < needs updating (index has 8.39)
pkg-1.7.2 < needs updating (index has 1.8.7)
png-1.6.21 < needs updating (index has 1.6.23)
py27-setuptools27-20.0 < needs updating (index has 23.1.0)
py27-sphinx-1.4.1 < needs updating (index has 1.4.4)
python27-2.7.11_2 < needs updating (index has 2.7.12)
squid-3.5.19 < needs updating (index has 3.5.20)
$


Может мне в системе что то нужно обновить или доставить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 11:58 am 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5323
Откуда: СССР, Харьков
Reken писал(а):
Система FreeBSD 9.3
pkg version
$ pkg version -vl "<"
autoconf-2.69 < needs updating (index has 2.69_1)
ca_root_nss-3.22.2 < needs updating (index has 3.25)
cmake-3.5.2_1 < needs updating (index has 3.5.2_2)
curl-7.49.0 < needs updating (index has 7.49.1)
dialog4ports-0.1.5_2 < needs updating (index has 0.1.6)
expat-2.1.1_1 < needs updating (index has 2.2.0)
fetchmail-6.3.26_2 < needs updating (index has 6.3.26_4)
gettext-runtime-0.19.7 < needs updating (index has 0.19.8.1)
gettext-tools-0.19.7 < needs updating (index has 0.19.8.1)
glib-2.46.2 < needs updating (index has 2.46.2_2)
gmake-4.1_2 < needs updating (index has 4.2.1_1)
jsoncpp-1.7.2_1 < needs updating (index has 1.7.3)
libarchive-3.2.0_1,1 < needs updating (index has 3.2.1,1)
libgcrypt-1.7.0 < needs updating (index has 1.7.1)
libgpg-error-1.22 < needs updating (index has 1.23)
libxslt-1.1.28_8 < needs updating (index has 1.1.29)
pcre-8.38_1 < needs updating (index has 8.39)
pkg-1.7.2 < needs updating (index has 1.8.7)
png-1.6.21 < needs updating (index has 1.6.23)
py27-setuptools27-20.0 < needs updating (index has 23.1.0)
py27-sphinx-1.4.1 < needs updating (index has 1.4.4)
python27-2.7.11_2 < needs updating (index has 2.7.12)
squid-3.5.19 < needs updating (index has 3.5.20)
$


Может мне в системе что то нужно обновить или доставить?

Вам выдало список чего надо обновить.
Я так понял вы это всё с нуля делаете.
Почему выбрали FreeBSD 9.3 ? В конце года поддержка 9.3 закончится.
Можно уже FreeBSD-11.0-RC2 устанавливать.
Для обновления портов есть potupgrade и portmaster которые устанавливаются с портов или пакетом.
Я предпочтение отдаю portmasrer 'у


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 12:42 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
ankor писал(а):
Вам выдало список чего надо обновить.

Я это понял

ankor писал(а):
Я так понял вы это всё с нуля делаете.
Почему выбрали FreeBSD 9.3 ? В конце года поддержка 9.3 закончится.

Не совсем с нуля... Я как то собрал "боевой" шлюз на FreeBSD для учреждения, на него повесил роль почтового сервера (локального)... Всё работает, всё отлично. Для экспериментов, решил собрать "тестовый" сервак, и поставил на тестовый 9.3, так как на "боевом" тоже 9.3. Решил на тестовом как и на боевом собрать "почтовый сервак локальный", ну и вот собственно на эти ошибки и наткнулся...

ankor писал(а):
Можно уже FreeBSD-11.0-RC2 устанавливать.

Я в курсе что FreeBSD 9.3 в декабре перестает поддерживаться. Тестовый сервак без проблем можно обновить. А вот боевой, будет видно. С одной стороны не хочется старую ОС на нем оставлять, а с другой стороны фраза "работает не трогай" останавливает...

ankor писал(а):
Для обновления портов есть potupgrade и portmaster которые устанавливаются с портов или пакетом.
Я предпочтение отдаю portmasrer 'у

Я всегда обновлялся portsnap fetch update

Я установил из портов portupgrade
Теперь portversion -v : grep php отрабатывает
Но толку от этого не много... Показала что есть:
mod_php55
php55
php55-mysql

Не могу понять что не так, почему posfixadmin не отрабатывает как нужно. Но кажется что это из-за PHP55 и его модулей...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 1:07 pm 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5323
Откуда: СССР, Харьков
Reken писал(а):
Я всегда обновлялся portsnap fetch update
..

portsnap обновляет дерево портов а не сами порты(программы)
portupgrade -a обновит установленные порты(программы)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Пн 05 сен, 2016 1:20 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Тогда попробую так:
Код:
portupgrade -R php55
portupgrade -R mod_php55
portupgrade -R php55-mysql

Может это устранит проблему, и postfixadmin заработает как должен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Вт 06 сен, 2016 9:56 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Не помогло обновление портов(программ)
Вывод:
Код:
$ portversion -v | grep php
[Reading data from pkg(8) ... - 119 packages found - done]
mod_php55-5.5.38_2          =  up-to-date with port
php55-5.5.38_2              =  up-to-date with port
php55-mysql-5.5.38_1        =  up-to-date with port
$ portversion -v | grep apache24
[Reading data from pkg(8) ... - 119 packages found - done]
apache24-2.4.23_1           =  up-to-date with port

А когда захожу на веб интерфейс http://192.168.10.4/postfixadmin/setup.php вижу опять ошибку...
ошибка
Postfix Admin Setup Checker

Running software:
Error: Depends on: PHP v5
\n"; $error += 1; } elseif (version_compare(phpversion(), '5.2.3') < 0) { # smarty uses htmlentities() with 4 parameters, the 4th parameter was introduced in PHP 5.2.3 # older PHP versions will cause warnings $phpversion = 5; print "•Recommended PHP version: >= 5.2.3, you have " . phpversion () . "
\n"; } else { $phpversion = 5; print "•PHP version " . phpversion () . "
\n"; } # TODO: check for PHP >= 5.2.3 - smarty uses htmlentities with 4 parameters. The forth parameter was added in PHP 5.2.3, older versions will give a warning } else { print "•Unable to check for PHP version. (missing function: phpversion())
\n"; } // // Check for Apache version // if ($f_apache_get_version == 1) { print "•" . apache_get_version() . "
\n"; } else { # not running on Apache. # However postfixadmin _is_ running, so obviously we are on a supported webserver ;-)) # No need to confuse the user with a warning. } print ""; print "
Checking for dependencies:\n"; print "
\n"; // // Check for Magic Quotes // if ($f_get_magic_quotes_gpc == 1) { if (get_magic_quotes_gpc () == 0) { print "•Magic Quotes: Disabled - OK
\n"; } else { print "•Warning: Magic Quotes: ON (internal workaround used)
\n"; } } else { print "•Unable to check for Magic Quotes. (missing function: get_magic_quotes_gpc())
\n"; } // // Check for config.inc.php // $config_loaded = 0; if ($file_config == 1) { print "•Depends on: presence config.inc.php - OK
\n"; require_once($incpath.'/config.inc.php'); $config_loaded = 1; if(isset($CONF['configured'])) { if($CONF['configured'] === TRUE) { print "•Checking \$CONF['configured'] - OK\n"; } else { print "
•Warning: \$CONF['configured'] is 'false'.
\n"; print "You must edit your config.inc.php and change this to true (this indicates you've created the database and user)\n"; } } } else { print "
•Error: Depends on: presence config.inc.php - NOT FOUND

\n"; print "Create the file, and edit as appropriate (e.g. select database type etc)
"; print "For example:
\n"; print "cp config.inc.php.sample config.inc.php
\n"; $error =+ 1; } // // Check if templates directory is writable // if (!is_writeable($incpath.'/templates_c')) { print "•Error: Smarty template compile directory templates_c is not writable.
\n"; print "Please make it writable.
\n"; print "If you are using SELinux or AppArmor, you might need to adjust their setup to allow write access.
\n"; $error =+ 1; } else { print "
•Smarty template compile directory is writable - OK
\n"; } // // Check if there is support for at least 1 database // if (($f_mysql_connect == 0) and ($f_mysqli_connect == 0) and ($f_pg_connect == 0)) { print "
•Error: There is no database support in your PHP setup
\n"; print "To install MySQL 3.23 or 4.0 support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php$phpversion-mysql/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-mysql
\n"; if ($phpversion >= 5) { print "To install MySQL 4.1 support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php5-mysqli/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php5-mysqli
\n"; } print "To install PostgreSQL support on FreeBSD:
\n"; print "% cd /usr/ports/databases/php$phpversion-pgsql/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-pgsql

\n"; $error =+ 1; } // // MySQL 3.23, 4.0 functions // if ($f_mysql_connect == 1) { print "•Depends on: MySQL 3.23, 4.0 - OK
\n"; } // // MySQL 4.1 functions // if ($phpversion >= 5) { if ($f_mysqli_connect == 1) { print "•Depends on: MySQL 4.1 - OK\n"; if ( !($config_loaded && $CONF['database_type'] == 'mysqli') ) { print "
(change the database_type to 'mysqli' in config.inc.php if you want to use MySQL)\n"; } print "
"; } } // // PostgreSQL functions // if ($f_pg_connect == 1) { print "•Depends on: PostgreSQL - OK \n"; if ( !($config_loaded && $CONF['database_type'] == 'pgsql') ) { print "
(change the database_type to 'pgsql' in config.inc.php if you want to use PostgreSQL)\n"; } print "
"; } // // Database connection // if ($config_loaded) { list ($link, $error_text) = db_connect(TRUE); if ($error_text == "") { print "•Testing database connection - OK - {$CONF['database_type']}://{$CONF['database_user']}:xxxxx@{$CONF['database_host']}/{$CONF['database_name']}
"; } else { print "•Error: Can't connect to database
\n"; print "Please edit the \$CONF['database_*'] parameters in config.inc.php.\n"; print "$error_text
\n"; $error ++; } } // // Session functions // if ($f_session_start == 1) { print "•Depends on: session - OK
\n"; } else { print "•Error: Depends on: session - NOT FOUND
\n"; print "To install session support on FreeBSD:
\n"; print "% cd /usr/ports/www/php$phpversion-session/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-session

\n"; $error =+ 1; } // // PCRE functions // if ($f_preg_match == 1) { print "•Depends on: pcre - OK
\n"; } else { print "•Error: Depends on: pcre - NOT FOUND
\n"; print "To install pcre support on FreeBSD:
\n"; print "% cd /usr/ports/devel/php$phpversion-pcre/\n";
print "% make clean install\n";
print " - or with portupgrade -\n";
print "% portinstall php$phpversion-pcre

\n"; $error =+ 1; } // // Multibyte functions // if ( $f_mb_encode_mimeheader == 1 ) { print "•Depends on: multibyte string - OK
\n"; } else { print "•Error: Depends on: multibyte string - NOT FOUND
\n"; print "To install multibyte string support, install php$phpversion-mbstring
\n"; $error =+ 1; } // // Imap functions // if ( $f_imap_open == 1) { print "•Depends on: IMAP functions - OK
\n"; } else { print "•Warning: Depends on: IMAP functions - NOT FOUND
\n"; print "To install IMAP support, install php$phpversion-imap
\n"; print "Without IMAP support, you won't be able to create subfolders when creating mailboxes.
\n"; # $error =+ 1; } print ""; if ($error != 0) { print "
Please fix the errors listed above.
"; } else { print "
Everything seems fine... attempting to create/update database structure
\n"; require_once($incpath.'/upgrade.php'); $tUsername = ''; $setupMessage = ''; $lostpw_error = 0; $setuppw = ""; if (isset($CONF['setup_password'])) $setuppw = $CONF['setup_password']; if (safepost("form") == "setuppw") { # "setup password" form submitted if (safepost('setup_password') != safepost('setup_password2')) { $setupMessage = "The two passwords differ!"; $lostpw_error = 1; } else { list ($lostpw_error, $lostpw_result) = check_setup_password(safepost('setup_password'), 1); $setupMessage = $lostpw_result; $setuppw = "changed"; } } elseif (safepost("form") == "createadmin") { # "create admin" form submitted list ($pw_check_error, $pw_check_result) = check_setup_password(safepost('setup_password')); if ($pw_check_result != 'pass_OK') { $error += 1; $setupMessage = $pw_check_result; } if($error == 0 && $pw_check_result == 'pass_OK') { // XXX need to ensure domains table includes an 'ALL' entry. $table_domain = table_by_key('domain'); $r = db_query("SELECT * FROM $table_domain WHERE domain = 'ALL'"); if($r['rows'] == 0) { db_insert('domain', array('domain' => 'ALL', 'description' => '', 'transport' => '') ); // all other fields should default through the schema. } $values = array( 'username' => safepost('username'), 'password' => safepost('password'), 'password2' => safepost('password2'), 'superadmin' => 1, 'domains' => array(), 'active' => 1, ); list ($error, $setupMessage, $errormsg) = create_admin($values); if ($error != 0) { $tUsername = htmlentities($values['username']); } else { $setupMessage .= "
You are done with your basic setup. "; $setupMessage .= "

You can now login to PostfixAdmin using the account you just created."; } } } if ( ($setuppw == "" || $setuppw == "changeme" || safeget("lostpw") == 1 || $lostpw_error != 0) /* && $_SERVER['REQUEST_METHOD'] != "POST" */ ) { # show "create setup password" form ?>






Change setup password

Setup password
Setup password (again)







Create superadmin account

Setup password Lost password?




Since version 2.3 there is no requirement to delete setup.php!
\n"; print "Check the config.inc.php file for any other settings that you might need to change!
\n"; } ?> 0 (or 1), 'message => text ) */ function check_setup_password($password, $lostpw_mode = 0) { global $CONF; $error = 1; # be pessimistic $setuppw = ""; if (isset($CONF['setup_password'])) $setuppw = $CONF['setup_password']; list($confsalt, $confpass, $trash) = explode(':', $setuppw . '::'); $pass = encrypt_setup_password($password, $confsalt); $validpass = validate_password($password); if ($password == "" ) { # no password specified? $result = "Setup password must be specified
If you didn't set up a setup password yet, enter the password you want to use."; } elseif (count($validpass) > 0) { $result = $validpass[0]; # TODO: honor all error messages, not only the first one } elseif ($pass == $setuppw && $lostpw_mode == 0) { # correct passsword (and not asking for a new password) $result = "pass_OK"; $error = 0; } else { $pass = encrypt_setup_password($password, generate_setup_password_salt()); $result = ""; if ($lostpw_mode == 1) { $error = 0; # non-matching password is expected when the user asks for a new password } else { $result = '
Setup password not specified correctly
'; } $result .= '
If you want to use the password you entered as setup password, edit config.inc.php or config.local.php and set
'; $result .= "\$CONF['setup_password'] = '$pass';
"; } return array ($error, $result); } function create_admin($values) { DEFINE('POSTFIXADMIN_SETUP', 1); # avoids instant redirect to login.php after creating the admin $handler = new AdminHandler(1, 'setup.php'); $formconf = $handler->webformConfig(); if (!$handler->init($values['username'])) { return array(1, "", $handler->errormsg); } if (!$handler->set($values)) { return array(1, "", $handler->errormsg); } if (!$handler->store()) { return array(1, "", $handler->errormsg); } return array( 0, $handler->infomsg['success'], array(), ); } /* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */ ?>

Похоже система думает что у неё установлен устаревший php.
Как думаете что ещё можно предпринять?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Вт 06 сен, 2016 10:55 am 
Не в сети

Зарегистрирован: Ср 14 окт, 2009 2:26 pm
Сообщения: 580
Система не думает. Она делает, что ей сказали.
Вот сказали Вы трижды (подумав?) `portupgrade -R ...`, и она трижды занималась какой-то фигнёй, так и не пересобрав postfixadmin.
Чем Вас не устроил `portupgrade -r php55`?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Вт 06 сен, 2016 11:11 am 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
xemul писал(а):
Система не думает. Она делает, что ей сказали.
Вот сказали Вы трижды (подумав?) `portupgrade -R ...`, и она трижды занималась какой-то фигнёй, так и не пересобрав postfixadmin.
Чем Вас не устроил `portupgrade -r php55`?

То есть параметр R в команде должен был обновить все модули php55?
Но после того как выполнил portupgrade -r php55 затем команда portversion -v | grep php показала что mod_php55 и php55-mysql то же нужно обновить...
Может я что то пока что не понимаю, я это в первый раз делаю (portupgrade). Но на сколько я понял, команда portupgrade -r php55 подразумевает обновить только php55

Думаете стоит попробовать пересобрать postfixadmin ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Локальный почтовый сервер
СообщениеДобавлено: Вт 06 сен, 2016 12:08 pm 
Не в сети

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 58
Не помогла пересборка postfixadmin


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot], Google Feedfetcher


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика