Mine as well. It'd be nice to see some errors in the httpd log.
On 2/22/2024 11:15 AM, Gary Bowling wrote:
Thanks. So Eric, my version is 8.0.3 as I stated previously.
php -v
PHP 8.0.30 (cli) (built: Aug 3 2023 17:13:08) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.30, Copyright (c) Zend Technologies
with Zend OPcache v8.0.30, Copyright (c), by Zend Technologies
Thanks, gb
On 2/22/2024 1:11 PM, Remo Mattei wrote:
Gary,
Yes default is php 8.0.3 I just upgraded afterwards to 8.3 you are
fine on the default installation php. Sorry for the confusion.
Remo
On Feb 22, 2024, at 10:05, Gary Bowling <[email protected]> wrote:
Not sure what you're saying Remo. My version is 8.0.3, and from your
command it looks like yours is as well. I didn't upgrade to
anything, just installed Rocky 9. Maybe you meant 8.0.3 instead of 8.3.
gb
On 2/22/2024 12:52 PM, Remo Mattei wrote:
I just upgraded to 8.3 myself seems you can do that no problem but
keep 8 there Gary.
Remo
On Feb 22, 2024, at 09:50, Gary Bowling <[email protected]> wrote:
php -v
PHP 8.0.30 (cli) (built: Aug 3 2023 17:13:08) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.30, Copyright (c) Zend Technologies
with Zend OPcache v8.0.30, Copyright (c), by Zend Technologies
On 2/22/2024 12:31 PM, Eric Broch wrote:
Odd! Everything works fine on my Rocky9/qmt host.
What version of php are you running?
# php -v
On 2/22/2024 10:21 AM, Gary Bowling wrote:
Thanks Eric.
Yep, just to not send a huge logfile. After having everything
stopped for two hrs, I started everything and went to the
server/admin-toaster and got the screen from below. It looks
like a 401 response, which indicates a lack of authentication
credentials. And I'm not sure why. Probably something to do with
me copying over the admin.pass or admin.htpasswd from my old
server. That was part of the migration page.
Here's the httpd/error.log from that.
[Thu Feb 22 17:12:23.702465 2024] [suexec:notice] [pid
121153:tid 121153] AH01232: suEXEC mechanism enabled (wrapper:
/usr/sbin/suexec)
[Thu Feb 22 17:12:23.714703 2024] [so:warn] [pid 121153:tid
121153] AH01574: module proxy_ajp_module is already loaded, skipping
[Thu Feb 22 17:12:23.719266 2024] [lbmethod_heartbeat:notice]
[pid 121153:tid 121153] AH02282: No slotmem from mod_heartmonitor
[Thu Feb 22 17:12:23.722704 2024] [mpm_event:notice] [pid
121153:tid 121153] AH00489: Apache/2.4.57 (Rocky Linux)
OpenSSL/3.0.7 configured -- resuming normal operations
[Thu Feb 22 17:12:23.722720 2024] [core:notice] [pid 121153:tid
121153] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
And here's the httpd/access.log
96.46.15.70 - - [22/Feb/2024:17:12:41 +0000] "GET /admin-toaster
HTTP/1.1" 401 381 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.
0.0.0 Safari/537.36"
96.46.15.70 - admin [22/Feb/2024:17:12:41 +0000] "GET
/admin-toaster HTTP/1.1" 301 244 "-" "Mozilla/5.0 (Windows NT
10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/
122.0.0.0 Safari/537.36"
On 2/22/2024 10:45 AM, Eric Broch wrote:
Can you check the httpd logs?
On 2/22/2024 8:12 AM, Gary Bowling wrote:
Another issue. When I log in to admin-toaster, it properly
asks for my password and accepts it, but then all I get is
this screen.
<AFsYv2kZDDMd60l8.png>
Between the problems I'm having with roundcube and with
qmailadmin, something is very wrong with my install. I don't
get any errors in the logs, either in messages or httpd logs.
I can configure up a client on my desktop and log into the
server using IMAP and send/receive email. Granted I'm only
sending to myself as there is no mx record or proper dns for
this server as it's not live.
On 2/21/2024 9:52 AM, Gary Bowling wrote:
My next challenge is to get roundcube working. My old server
uses squirrel, but that's so old I need to move on. Which
might be a bit of a challenge as I have some users who
exclusively use web mail and have all their address books and
everything in there.
At any rate, I first just tried going to my server/email.. I
got a big list of errors, etc.
In poking around a bit, I discovered that there wasn't a
/var/lib/roundcube directory, which is listed in the rpm..
Not sure why that was or if it's intended as maybe this is a
customized version of roundcube. At any rate, I decided to do
a yum reinstall on roundcube, which produced a
/var/lib/roundcube dir.
But I still got the same big list of errors when going to
server/email.
In looking at the roundcube configs in /etc/roundcube/.. I
see the config.inc.php has the proper string in it with the
p4ssw... password etc. So that looks ok.
Logging into mysql with the roundcube user works, and the
roundcube database is there with all the table structure. So
that looks ok.
In looking at the roundcube config in httpd I noticed the
"require local" rule, which I think means I can only access
it from the local machine. Since my machine is a hosted
machine, I can't do that. So I changed the to "require ip
<MYIP>" ... that didn't resolve anything.
I'm off to do some other work for the rest of the day, but
somehow I need to figure out what's going on here. There is
very little in the logs and I'm running out of things to check.
Here's the screen I get when I go to myserver/email, which
seems to say "everything is broken" haha..
| | Author: Aleksander Machniak|
+-------------------------------------------------------------------------+
*/ // include environment require_once
'program/include/iniset.php'; // init application, start
session, init output class, etc. $RCMAIL =
rcmail::get_instance(0, isset($GLOBALS['env']) ?
$GLOBALS['env'] : null); // Make the whole PHP output
non-cacheable (#1487797)
$RCMAIL->output->nocacheing_headers();
$RCMAIL->output->common_headers(!empty($_SESSION['user_id']));
// turn on output buffering ob_start(); // check if config
files had errors if ($err_str = $RCMAIL->config->get_error())
{ rcmail::raise_error(['code' => 601, 'message' => $err_str],
false, true); } // check DB connections and exit on failure
if ($err_str = $RCMAIL->db->is_error()) {
rcmail::raise_error(['code' => 603, 'type' => 'db', 'message'
=> $err_str], false, true); } // error steps if
($RCMAIL->action == 'error' && !empty($_GET['_code'])) {
rcmail::raise_error(['code' => hexdec($_GET['_code'])],
false, true); } // check if https is required (for login) and
redirect if necessary if (empty($_SESSION['user_id']) &&
($force_https = $RCMAIL->config->get('force_https', false)))
{ // force_https can be true,,:,if (!is_bool($force_https)) {
list($host, $port) = explode(':', $force_https); if
(is_numeric($host) && empty($port)) { $port = $host; $host =
''; } } if (empty($port)) { $port = 443; } if
(!rcube_utils::https_check($port)) { if (empty($host)) {
$host = preg_replace('/:[0-9]+$/', '',
$_SERVER['HTTP_HOST']); } if ($port != 443) { $host .= ':' .
$port; } header('Location: https://' . $host .
$_SERVER['REQUEST_URI']); exit; } } // trigger startup plugin
hook $startup = $RCMAIL->plugins->exec_hook('startup',
['task' => $RCMAIL->task, 'action' => $RCMAIL->action]);
$RCMAIL->set_task($startup['task']); $RCMAIL->action =
$startup['action']; $session_error = null; // try to log in
if ($RCMAIL->task == 'login' && $RCMAIL->action == 'login') {
$request_valid = !empty($_SESSION['temp']) &&
$RCMAIL->check_request(); $pass_charset =
$RCMAIL->config->get('password_charset', 'UTF-8'); // purge
the session in case of new login when a session already
exists if ($request_valid) { $RCMAIL->kill_session(); } $auth
= $RCMAIL->plugins->exec_hook('authenticate', [ 'host' =>
$RCMAIL->autoselect_host(), 'user' =>
trim(rcube_utils::get_input_string('_user',
rcube_utils::INPUT_POST)), 'pass' =>
rcube_utils::get_input_string('_pass',
rcube_utils::INPUT_POST, true, $pass_charset), 'valid' =>
$request_valid, 'error' => null, 'cookiecheck' => true, ]);
// Login if ($auth['valid'] && !$auth['abort'] &&
$RCMAIL->login($auth['user'], $auth['pass'], $auth['host'],
$auth['cookiecheck']) ) { // create new session ID, don't
destroy the current session // it was destroyed already by
$RCMAIL->kill_session() above
$RCMAIL->session->remove('temp');
$RCMAIL->session->regenerate_id(false); // send auth cookie
if necessary $RCMAIL->session->set_auth_cookie(); // log
successful login $RCMAIL->log_login(); // restore original
request parameters $query = []; if ($url =
rcube_utils::get_input_string('_url',
rcube_utils::INPUT_POST)) { parse_str($url, $query); //
prevent endless looping on login page if
(!empty($query['_task']) && $query['_task'] == 'login') {
unset($query['_task']); } // prevent redirect to compose with
specified ID (#1488226) if (!empty($query['_action']) &&
$query['_action'] == 'compose' && !empty($query['_id'])) {
$query = ['_action' => 'compose']; } } // allow plugins to
control the redirect url after login success $redir =
$RCMAIL->plugins->exec_hook('login_after', $query + ['_task'
=> 'mail']); unset($redir['abort'], $redir['_err']); // send
redirect $RCMAIL->output->redirect($redir, 0, true); } else {
if (!$auth['valid']) { $error_code =
rcmail::ERROR_INVALID_REQUEST; } else { $error_code =
is_numeric($auth['error']) ? $auth['error'] :
$RCMAIL->login_error(); } $error_labels = [
rcmail::ERROR_STORAGE => 'storageerror',
rcmail::ERROR_COOKIES_DISABLED => 'cookiesdisabled',
rcmail::ERROR_INVALID_REQUEST => 'invalidrequest',
rcmail::ERROR_INVALID_HOST => 'invalidhost',
rcmail::ERROR_RATE_LIMIT => 'accountlocked', ]; if
(!empty($auth['error']) && !is_numeric($auth['error'])) {
$error_message = $auth['error']; } else { $error_message =
!empty($error_labels[$error_code]) ?
$error_labels[$error_code] : 'loginfailed'; }
$RCMAIL->output->show_message($error_message, 'warning'); //
log failed login $RCMAIL->log_login($auth['user'], true,
$error_code); $RCMAIL->plugins->exec_hook('login_failed', [
'code' => $error_code, 'host' => $auth['host'], 'user' =>
$auth['user'], ]); if (!isset($_SESSION['user_id'])) {
$RCMAIL->kill_session(); } } } // handle oauth login requests
else if ($RCMAIL->task == 'login' && $RCMAIL->action ==
'oauth' && $RCMAIL->oauth->is_enabled()) { $oauth_handler =
new rcmail_action_login_oauth(); $oauth_handler->run(); } //
end session else if ($RCMAIL->task == 'logout' &&
isset($_SESSION['user_id'])) {
$RCMAIL->request_security_check(rcube_utils::INPUT_GET |
rcube_utils::INPUT_POST); $userdata = array( 'user' =>
$_SESSION['username'], 'host' => $_SESSION['storage_host'],
'lang' => $RCMAIL->user->language, );
$RCMAIL->output->show_message('loggedout');
$RCMAIL->logout_actions(); $RCMAIL->kill_session();
$RCMAIL->plugins->exec_hook('logout_after', $userdata); } //
check session and auth cookie else if ($RCMAIL->task !=
'login' && $_SESSION['user_id']) { if
(!$RCMAIL->session->check_auth()) { $RCMAIL->kill_session();
$session_error = 'sessionerror'; } } // not logged in -> show
login page if (empty($RCMAIL->user->ID)) { if (
$session_error || (!empty($_REQUEST['_err']) &&
$_REQUEST['_err'] === 'session') || ($session_error =
$RCMAIL->session_error()) ) {
$RCMAIL->output->show_message($session_error ?:
'sessionerror', 'error', null, true, -1); } if
($RCMAIL->output->ajax_call ||
$RCMAIL->output->get_env('framed')) {
$RCMAIL->output->command('session_error',
$RCMAIL->url(['_err' => 'session']));
$RCMAIL->output->send('iframe'); } // check if installer is
still active if ($RCMAIL->config->get('enable_installer') &&
is_readable('./installer/index.php')) {
$RCMAIL->output->add_footer(html::div(['id' => 'login-addon',
'style' => "background:#ef9398; border:2px solid #dc5757;
padding:0.5em; margin:2em auto; width:50em"], html::tag('h2',
array('style' => "margin-top:0.2em"), "Installer script is
still accessible") . html::p(null, "The install script of
your Roundcube installation is still stored in its default
location!") . html::p(null, "Please*remove*the
wholeinstallerfolder from the Roundcube directory because
these files may expose sensitive configuration data like
server passwords and encryption keys to the public. Make sure
you cannot access theinstaller script
<https://mail2.gbco.us/%22./installer//%22>from your
browser.") )); } $plugin =
$RCMAIL->plugins->exec_hook('unauthenticated', [ 'task' =>
'login', 'error' => $session_error, // Return 401 only on
failed logins (#7010) 'http_code' => empty($session_error) &&
!empty($error_message) ? 401 : 200 ]);
$RCMAIL->set_task($plugin['task']); if ($plugin['http_code']
== 401) { header('HTTP/1.0 401 Unauthorized'); }
$RCMAIL->output->send($plugin['task']); } else { // CSRF
prevention $RCMAIL->request_security_check(); // check access
to disabled actions $disabled_actions = (array)
$RCMAIL->config->get('disabled_actions'); if
(in_array($RCMAIL->task . '.' . ($RCMAIL->action ?: 'index'),
$disabled_actions)) { rcube::raise_error(['code' => 404,
'message' => "Action disabled"], true, true); } }
$RCMAIL->action_handler();
On 2/20/2024 9:02 PM, Gary Bowling wrote:
Ah, thanks Eric! Unfortunately I didn't find that page
earlier. But but I cobbled together a few sql queries, so I...
- exported each domain to an xml file
- then did a bit of scripting on each domains xml file to
add the pw_domain field, which is the same for every record
in each file.
- then used the "load xml local infile..." sql command to
load each of the files into the vpopmail table.
It seems to have all worked. I can now use ./vuserinfo and
get correct entries. The other tables, valias, lastauth,
dir_control, all seem to be the same.
So I think I'm on to the next challenge. The script you
showed on that page would have been a little easier, but no
worries, it wasn't to difficult.
Which reminds me, I need to go back and set Global
Local_infiles=0 as I had to change that to export/import
local files. Although I'm not sure that hurts anything.
Thanks, gb
On 2/20/2024 5:04 PM, Eric Broch wrote:
did you migrate the database?
Many domain's conversion - QMT (qmailtoaster.org)
<https://qmailtoaster.org/manydom.html>
On 2/20/2024 9:37 AM, Gary Bowling wrote:
Thanks Eric.
Continuing through the "migration" page. After going
through everything moving configs and my database, then
restarting. Toaststat says everything is ok.
So I tried a simple run of ~vpopmail/bin/vuserinfo
[email protected] just to query an account. I get this error
mysql: sql error[3]: Table 'vpopmail.vpopmail' doesn't exist
Logging into the db and checking, indeed I do not have a
vpopmail.vpopmail table. I have all the domain tables,
etc. So I went back to my old server (the one this email
is coming from) and it also does not have a
vpopmail.vpopmail table.
I'm sure it has something to do with how old my existing
server is. But how do I resolve this?
Thanks, gb
On 2/20/2024 10:00 AM, Eric Broch wrote:
It's all good and there's nothing to do.
On 2/20/2024 7:11 AM, Gary Bowling wrote:
Another question on my migration. On the
qmailtoaster.com site, under the RHEL9 derivative
install heading. There is the qmail1.03-3.3.8 header and
underneath it is a link for "patches applied"
I'm confused if that means. It implies that those
patches are already applied and there is no need to do
them. But the link takes you to the page for the patch
like it's something we should apply.
I'm pretty sure it's all good and there is nothing to
do, just wanted to make sure.
Thanks, gb
--
____________________
The Moderns on Spotify
<https://distrokid.com/hyperfollow/themoderns/bbrs>
____________________
---------------------------------------------------------------------
To unsubscribe, e-mail:
[email protected] For
additional commands, e-mail:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail:
[email protected] For
additional commands, e-mail:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail:
[email protected] For
additional commands, e-mail:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail:
[email protected] For additional
commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail:
[email protected] For additional
commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]