BSDPORTAL.RU

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

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




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

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

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
Сообщения: 5115
Откуда: Москва
В портах уже полгода нет lang/php5. Обновляйте порты.


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

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

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

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


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

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 63
Для 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
Сообщения: 63
Вопрос всё ещё актуален
Коллеги, нужна Ваша помощь...

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

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


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

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

AddType application/x-httpd-php .php

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


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

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 63
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
Сообщения: 5115
Откуда: Москва
У вас наверное php одной версии а модули от другой. Это будет видно в pkg info. В таком случае просто пересоберите модули


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

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

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


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

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5345
Откуда: СССР, Харьков
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
Сообщения: 63
Система 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
Сообщения: 5345
Откуда: СССР, Харьков
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
Сообщения: 63
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
Сообщения: 5345
Откуда: СССР, Харьков
Reken писал(а):
Я всегда обновлялся portsnap fetch update
..

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


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

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

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


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

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 63
Не помогло обновление портов(программ)
Вывод:
Код:
$ 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
Сообщения: 581
Система не думает. Она делает, что ей сказали.
Вот сказали Вы трижды (подумав?) `portupgrade -R ...`, и она трижды занималась какой-то фигнёй, так и не пересобрав postfixadmin.
Чем Вас не устроил `portupgrade -r php55`?


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

Зарегистрирован: Пн 30 июн, 2014 8:50 am
Сообщения: 63
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
Сообщения: 63
Не помогла пересборка postfixadmin


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

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


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

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


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

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