Roundcube issue : connection to storage server failed - storage

I am getting this error("connection to storage server failed") lines in Roundcube. I have checked everything, configurations, and database user name password, server details all are clean. can anybody tell me what could possibly be the issue? Here I am giving the whole config file.
<?php
$rcmail_config = array();
$rcmail_config['debug_level'] = 9;
$rcmail_config['log_driver'] = 'file';
$rcmail_config['log_date_format'] = 'd-M-Y H:i:s O';
$rcmail_config['syslog_id'] = 'roundcube';
$rcmail_config['syslog_facility'] = LOG_USER;
$rcmail_config['smtp_log'] = true;
$rcmail_config['log_logins'] = false;
$rcmail_config['log_session'] = false;
$rcmail_config['sql_debug'] = false;
$rcmail_config['imap_debug'] = false;
$rcmail_config['ldap_debug'] = false;
$rcmail_config['smtp_debug'] = false;
$rcmail_config['default_port'] = 143;
$rcmail_config['imap_auth_type'] = NULL;
$rcmail_config['imap_delimiter'] = NULL;
$rcmail_config['imap_ns_personal'] = NULL;
$rcmail_config['imap_ns_other'] = NULL;
$rcmail_config['imap_ns_shared'] = NULL;
$rcmail_config['imap_force_caps'] = false;
$rcmail_config['imap_force_lsub'] = false;
$rcmail_config['imap_force_ns'] = false;
$rcmail_config['imap_timeout'] = 0;
$rcmail_config['imap_auth_cid'] = NULL;
$rcmail_config['imap_auth_pw'] = NULL;
$rcmail_config['imap_cache'] = NULL;
$rcmail_config['messages_cache'] = false;
$rcmail_config['smtp_server'] = '';
$rcmail_config['smtp_port'] = 25;
$rcmail_config['smtp_user'] = '%u';
$rcmail_config['smtp_pass'] = '%p';
$rcmail_config['smtp_auth_type'] = '';
$rcmail_config['smtp_auth_cid'] = NULL;
$rcmail_config['smtp_auth_pw'] = NULL;
$rcmail_config['smtp_helo_host'] = '';
$rcmail_config['smtp_timeout'] = 0;
$rcmail_config['enable_installer'] = true;
$rcmail_config['support_url'] = 'http://poolavadi.com/';
$rcmail_config['skin_logo'] = '';
$rcmail_config['auto_create_user'] = true;
$rcmail_config['log_dir'] = 'logs/';
$rcmail_config['temp_dir'] = 'temp/';
$rcmail_config['message_cache_lifetime'] = '10d';
$rcmail_config['force_https'] = false;
$rcmail_config['use_https'] = false;
$rcmail_config['login_autocomplete'] = 0;
$rcmail_config['login_lc'] = 0;
$rcmail_config['skin_include_php'] = false;
$rcmail_config['display_version'] = false;
$rcmail_config['session_lifetime'] = 10;
$rcmail_config['session_domain'] = '';
$rcmail_config['session_name'] = NULL;
$rcmail_config['session_storage'] = 'db';
$rcmail_config['memcache_hosts'] = NULL;
$rcmail_config['ip_check'] = true;
$rcmail_config['referer_check'] = false;
$rcmail_config['x_frame_options'] = 'sameorigin';
$rcmail_config['des_key'] = 'nSfL_Rz6tc5NRMqKpw7d&A9=';
$rcmail_config['username_domain'] = 'poolavadi.com';
$rcmail_config['mail_domain'] = '';
$rcmail_config['password_charset'] = 'ISO-8859-1';
$rcmail_config['sendmail_delay'] = 0;
$rcmail_config['max_recipients'] = 0;
$rcmail_config['max_group_members'] = 0;
$rcmail_config['useragent'] = 'Roundcube Webmail/RCMAIL_VERSION';
$rcmail_config['product_name'] = 'பூளவாடி மின்னஞ்சல்';
$rcmail_config['include_host_config'] = false;
$rcmail_config['generic_message_footer'] = '';
$rcmail_config['generic_message_footer_html'] = '';
$rcmail_config['http_received_header'] = false;
$rcmail_config['http_received_header_encrypt'] = false;
$rcmail_config['mail_header_delimiter'] = NULL;
$rcmail_config['line_length'] = 72;
$rcmail_config['send_format_flowed'] = true;
$rcmail_config['dont_override'] = array();
$rcmail_config['identities_level'] = 0;
$rcmail_config['client_mimetypes'] = NULL; # null == default
$rcmail_config['mime_magic'] = NULL;
$rcmail_config['im_identify_path'] = NULL;
$rcmail_config['im_convert_path'] = NULL;
$rcmail_config['contact_photo_size'] = 160;
$rcmail_config['email_dns_check'] = false;
$rcmail_config['plugins'] = array();
$rcmail_config['message_sort_col'] = '';
$rcmail_config['message_sort_order'] = 'DESC';
$rcmail_config['list_cols'] = array('subject', 'status', 'fromto', 'date', 'size', 'flag', 'attachment');
$rcmail_config['language'] = 'en_us';
$rcmail_config['date_format'] = 'Y-m-d';
$rcmail_config['date_formats'] = array('Y-m-d', 'd-m-Y', 'Y/m/d', 'm/d/Y', 'd/m/Y', 'd.m.Y', 'j.n.Y');
$rcmail_config['time_format'] = 'H:i';
$rcmail_config['time_formats'] = array('G:i', 'H:i', 'g:i a', 'h:i A');
$rcmail_config['date_short'] = 'D H:i';
$rcmail_config['date_long'] = 'Y-m-d H:i';
$rcmail_config['drafts_mbox'] = 'Drafts';
$rcmail_config['junk_mbox'] = 'Junk';
$rcmail_config['sent_mbox'] = 'Sent';
$rcmail_config['trash_mbox'] = 'Trash';
$rcmail_config['default_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
$rcmail_config['create_default_folders'] = false;
$rcmail_config['protect_default_folders'] = true;
$rcmail_config['quota_zero_as_unlimited'] = false;
$rcmail_config['enable_spellcheck'] = true;
$rcmail_config['spellcheck_dictionary'] = false;
$rcmail_config['spellcheck_engine'] = 'pspell';
$rcmail_config['spellcheck_uri'] = '';
$rcmail_config['spellcheck_languages'] = NULL;
$rcmail_config['spellcheck_ignore_caps'] = false;
$rcmail_config['spellcheck_ignore_nums'] = false;
$rcmail_config['spellcheck_ignore_syms'] = false;
$rcmail_config['recipients_separator'] = ',';
$rcmail_config['max_pagesize'] = 200;
$rcmail_config['min_keep_alive'] = 60;
$rcmail_config['upload_progress'] = false;
$rcmail_config['undo_timeout'] = 0;
$rcmail_config['address_book_type'] = 'sql';
$rcmail_config['ldap_public'] = array();
$rcmail_config['autocomplete_addressbooks'] = array('sql');
$rcmail_config['autocomplete_min_length'] = 1;
$rcmail_config['autocomplete_threads'] = 0;
$rcmail_config['autocomplete_max'] = 15;
$rcmail_config['address_template'] = '{street}<br/>{locality} {zipcode}<br/>{country} {region}';
$rcmail_config['addressbook_search_mode'] = 0;
$rcmail_config['default_charset'] = 'ISO-8859-1';
$rcmail_config['skin'] = 'larry';
$rcmail_config['mail_pagesize'] = 50;
$rcmail_config['addressbook_pagesize'] = 50;
$rcmail_config['addressbook_sort_col'] = 'surname';
$rcmail_config['addressbook_name_listing'] = 0;
$rcmail_config['timezone'] = 'auto';
$rcmail_config['prefer_html'] = true;
$rcmail_config['show_images'] = 0;
$rcmail_config['htmleditor'] = 0;
$rcmail_config['prettydate'] = true;
$rcmail_config['draft_autosave'] = 300;
$rcmail_config['preview_pane'] = false;
$rcmail_config['preview_pane_mark_read'] = 0;
$rcmail_config['logout_purge'] = false;
$rcmail_config['logout_expunge'] = false;
$rcmail_config['inline_images'] = true;
$rcmail_config['mime_param_folding'] = 0;
$rcmail_config['skip_deleted'] = false;
$rcmail_config['read_when_deleted'] = true;
$rcmail_config['flag_for_deletion'] = false;
$rcmail_config['keep_alive'] = 60;
$rcmail_config['check_all_folders'] = false;
$rcmail_config['display_next'] = false;
$rcmail_config['autoexpand_threads'] = 0;
$rcmail_config['top_posting'] = false;
$rcmail_config['strip_existing_sig'] = true;
$rcmail_config['show_sig'] = 1;
$rcmail_config['sig_above'] = false;
$rcmail_config['force_7bit'] = false;
$rcmail_config['search_mods'] = NULL;
$rcmail_config['addressbook_search_mods'] = NULL;
$rcmail_config['delete_always'] = false;
$rcmail_config['delete_junk'] = false;
$rcmail_config['mdn_requests'] = 0;
$rcmail_config['mdn_default'] = 0;
$rcmail_config['dsn_default'] = 0;
$rcmail_config['reply_same_folder'] = false;
$rcmail_config['forward_attachment'] = false;
$rcmail_config['default_addressbook'] = NULL;
$rcmail_config['spellcheck_before_send'] = false;
$rcmail_config['autocomplete_single'] = false;
$rcmail_config['default_font'] = '';

It means dovecot is not running.
run sudo dovecot
this was the solution I got after spending hours in frustration

Try turning all the debugging options on and talk to the IMAP server directly without involving RoundCube, see this guide. That way you can be sure that your IMAP server is working before trying to get RoundCube working.

edit 15-mailboxes.conf by running
nano /etc/dovecot/conf.d/15-mailboxes.conf
add following text inside namespace inbox {} block:
namespace inbox {
inbox = yes
...
save the file and run:
service dovecot restart
and you are done..!

One possible cause is that your Dovecot installation is not working. This happened to me after changing mysql version. I had to do:
sudo apt-get install dovecot-mysql
sudo service dovecot restart
Then it worked.

I was able to solve this issue by referring to Dovecot Status.
First of all, make sure you don't use an incognito browser window, then Check Dovecot Status by running this command
service dovecot status
it will show you that:
● dovecot.service - Dovecot IMAP/POP3 email server
Loaded: loaded (/lib/systemd/system/dovecot.service; enabled; vendor preset: enabled)
Active: **inactive** (dead) since Mon 2020-03-30 21:03:32 UTC; 29min ago
Docs: man:dovecot(1)
http://wiki2.dovecot.org/
Main PID: 910 (code=exited, status=0/SUCCESS)
Then run service dovecot start

Some Devcot config files had been corrupted. So you need to fix by recreate new config file and remove existing one. Login to root by SSH through putty software
Execute these code
cd /home
/etc/init.d/dovecot stop
rm -f */imap/*/*/Maildir/dovecot*
rm -f */imap/*/*/Maildir/.*/dovecot*
rm -f */Maildir/dovecot*
rm -f */Maildir/.*/dovecot*
/etc/init.d/dovecot restart
Now you can Login into your webmail app. No error will appear.
Source

I had this issue when upgrading from Debian Jessie to Stretch. I looked in the log:
/var/log/syslog
and found that the problem was that I was disabling protocol SSLv2 explicitly, and it was not supported anymore. I removed it from the list of protocols and everything worked fine.

remove below file and login.
/etc/dovecot/conf.d/15-mailboxes.conf
or use
sudo rm -rf nano /etc/dovecot/conf.d/15-mailboxes.conf

I had the same problem after migrating to a new server, I thorough check of the config show that my IMAP and IMAPS were disabled, I simply enabled both service and restart the server.

This is how you fix it:
Check the log:
tail /var/log/dovecot.log
if you see:
Fatal: Unknown database driver 'mysql'
Meaning missing package! Dovecot requires the dovecot-mysql package to run mysql authentication. This problem is simply cured by installing it with yum:
yum install dovecot-mysql

I had same problem recently after successful installation of roundcube
first I tried these two command lines:
netstat -tulpn | grep :143
telnet localhost 143
I got connection refused error messages.
so I have to install telnet
apt-get install telnetd
After installation successful then run Restarts
/etc/init.d/openbsd-inetd restart
/etc/init.d/dovecot restart
Then again run
netstat -tulpn | grep :143
Result
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 13439/dovecot
tcp6 0 0 :::143 :::* LISTEN 13439/dovecot
Try Second test run
telnet localhost 143
Result
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE START TLS AUTH=PLAIN AUTH=LOGIN] Dovecot (Ubuntu) ready.

I had faced same issue and I found solution by following.
I had checked log by following command.
tail /var/log/dovecot.log
By using above command , I found following error in log.
Sep 01 10:39:50 imap(mail#yourdomain.com): Error: user
mail#yourdomain.com: Initialization failed: Initializing mail storage
from mail_location setting failed:
mkdir(/var/vmail/yourdomain.com/mail) failed: Permission denied
(euid=101(vmail) egid=12(mail) missing +w perm: /var/vmail, dir owned
by 4325:4319 mode=0751)
so I noticed that server is unable to create the directory with name "yourdomain.com" and it require "+w" permission. I have also noticed that "yourdomain.com" directory requires ownership "vmail:mail".
Finally, Directory had been created using following command .
cd /var/vmail/;
mkdir yourdomain.com;
chown vmail:mail yourdomain.com -R;
chmod +w yourdomain.com;
That's it.
I hope this answer might help you.

I had a similar issue when setting up iRedMail dockerized version on Ubuntu 20.04.
The issue was that Dovecot was not running in the container when I checked using the command - service dovecot status. And when I tried starting the service using the command - service dovecot start I got the error
root#mail:/var/spool/postfix# service dovecot start
* Starting IMAP/POP3 mail server dovecot
Error: bind(/var/spool/postfix/private/dovecot-auth) failed: No such file or directory
Fatal: Failed to start listeners
I also ran the command below to confirm that my dovecot configuration was fine:
dovecot -n
And yes the output from the command showed that it was fine.
Here's how I fixed it:
The issue was caused by Postfix not being installed/running on the in my container which I discovered when I checked the docker logs for the container using - docker logs container-id. The file /var/spool/postfix/private/dovecot-auth which Dovecot was referencing was supposed to be created by Postfix, however, since the script to install Postfix failed because the correct path to the script was not picked when building the iRedMail image, this issue then came up as Dovecot could not find the file /var/spool/postfix/private/dovecot-auth:
[iRedMail] [Entrypoint] /docker/entrypoints/postfix.sh
/docker/entrypoints/functions.sh: line 113: /docker/entrypoints/postfix.sh: No such file or directory
[iRedMail] [Entrypoint] /docker/entrypoints/mlmmj.sh
[iRedMail] [Entrypoint] /docker/entrypoints/mlmmjadmin.sh
[iRedMail] [Entrypoint] /docker/entrypoints/iredapd.sh
[iRedMail] [Entrypoint] /docker/entrypoints/antispam.sh
mail: cannot send message: Process exited with a non-zero status
All I had to do was to pull the docker repository for iRedMail using git clone -b stable https://github.com/iredmail/dockerized, rebuilt the image in my local using docker build . --tag iredmail:latest -f dockerized/Dockerfiles/Dockerfile, and then run it. This time the correct location of my Postfix install script was picked, and the Postfix installation and setup ran fine.
And when I checked Dovecot service again using:
service dovecot start
It showed me that it was running fine.
That's all

You should remove to dovecot mail server and Use another mail services, Two services could be conflitcs therefore You must remove a mail services, I've tried to this error for 2 days.
CODE : yum remove dovecot
If you had used this code Dovecot would have remove from your server and There is not conflitcs

Related

.NET Core execute OS Command in Container problem

i want to execute OS Command both windows and docker container (linux). When i control on windows every command which i entered work well because i can see output. When i build Dockerfile and run my app with container, send a few command i didn't take output what i expected.
My function is bellow.
public string RunCommand(string arguments)
{
var argsPrepend = "-c ";
var shellName = "/bin/sh";
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
shellName = #"C:\Windows\System32\cmd.exe";
argsPrepend = "/c ";
}
try
{
Process process = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = shellName,
Arguments = argsPrepend + arguments,
RedirectStandardOutput = true,
RedirectStandardError = true,
UseShellExecute = false,
}
};
process.Start();
string output = process.StandardOutput.ReadToEnd();
process.WaitForExit();
return output;
}
catch (Exception ex)
{
return ex.ToString();
}
}
When i send pwd and ls command it works well.
swagger-pwd
swagger-ls
When i want to execute "ls -la /" or "cat /etc/passwd" i didn't get right output.
swagger-ls-la
swagger-cat-etc-passwd
How can i execute OS Command over Docker Container ?
What's the problem which i make or i face ?
1 - If you can access the directories you are running your file in and not other root directories, then there is the problem of not being able to read the file. You may need to check if the user you are running the file from has access.
2 - You may need to take a look at the "SecurityContext" configurations. I don't know about container structures. Maybe it's hardening in itself as a precaution. You may need to give permission yourself.
Link : https://techcommunity.microsoft.com/t5/azure-developer-community-blog/hardening-an-asp-net-container-running-on-kubernetes/ba-p/2542224
Best Regards.
Thanks for your helping. After gave my all 2 days's time :) i solved at the end. After i changed function likes bellow, everything works well.
public string RunCommand(string arguments)
{
var shellName = "/bin/bash";
var argsPrepend = "-c ";
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
shellName = #"C:\Windows\System32\cmd.exe";
argsPrepend = "/c ";
}
try
{
Process process = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = shellName,
Arguments = argsPrepend + "\"" + arguments + "\"",
RedirectStandardOutput = true,
RedirectStandardError = true,
UseShellExecute = false,
}
};
process.Start();
string output = process.StandardOutput.ReadToEnd();
process.WaitForExit();
return output;
}
catch (Exception ex)
{
return ex.ToString();
}
}

Globally override package virtualbox guest additions (even in NixOS modules)

Adding virtualisation.virtualbox.guest.enable = true; to the /etc/nixos/configuration.nix adds the VirtualBox Guest Additions to the resulting NixOS system, and creates a systemd service to run the VBoxService executable.
I want to use a different version of the guest additions than the one which "ships" with the current channel / nixpkgs.
So I tried to overwrite the package in configuration.nix using nixpkgs.config.packageOverwrites:
nixpkgs = {
config = {
allowUnfree = true;
packageOverrides = xpkgs: {
linuxPackages = xpkgs.linuxPackages //
(
let vbox = xpkgs.callPackage ./vbox-guest.nix { kernel = xpkgs.linuxPackages.kernel; };
in
{
virtualboxGuestAdditions = vbox;
kernel = xpkgs.linuxPackages.kernel // {virtualboxGuestAdditions = vbox;};
}
);
};
};
};
This builds the new Guest Additions package, but does not use it in any way (nix-store --query --referrers /nix/store/NEW-VBOX-GUEST-ADDS-PATH shows no referrers); the "shipped" version is still used by both the systemd service as well as the environment packages.
Even providing the "overwrite" directly when selecting the boot.kernelPackages does not work:
boot.kernelPackages = pkgs.linuxPackages //
(
let vbox = pkgs.callPackage ./vbox-guest.nix { kernel = pkgs.linuxPackages.kernel; };
in
{
virtualboxGuestAdditions = vbox;
kernel = pkgs.linuxPackages.kernel // {virtualboxGuestAdditions = vbox;};
}
);
Putting the overwrite into ~/.nixpkgs/config.nix or /root/.nixpkgs/config.nix doesn't help either.
How can I change which package is used without manually "rewriting" the nixos module which provides this ...guest.enable setting?

Enable Seamless mode using AxInterop.MSTSCLib

I have an application that use AxInterop.MSTSCLib activeX to create remote connection to another PC similar to the following application:
http://www.codeproject.com/Articles/43705/Remote-Desktop-using-C-NET
My question, is there an option that I can config to connect the PC in seamless mode?
I know this is over a year old but I am assuming this is what you want to do:
rdp.Server = "Server";
rdp.UserName = "Username";
rdp.Domain = "Domain";
IMsTscNonScriptable secured = (IMsTscNonScriptable)rdp.GetOcx();
secured.ClearTextPassword = User.Password;
rdp.AdvancedSettings8.ConnectionBarShowMinimizeButton = false;
rdp.AdvancedSettings8.ConnectionBarShowPinButton = false;
rdp.AdvancedSettings8.ConnectionBarShowRestoreButton = false;
rdp.AdvancedSettings8.EnableWindowsKey = 0;
rdp.AdvancedSettings8.RedirectClipboard = true;
rdp.AdvancedSettings8.RedirectDrives = true;
rdp.AdvancedSettings8.RedirectPrinters = true;
rdp.AdvancedSettings8.SmartSizing = true;
rdp.SecuredSettings3.StartProgram = "LaunchApp Path";
rdp.Connect();
In addition follow what #Hans Passant suggested above..

Creating a process in ASP.NET MVC controller

I have a requirement to run an application through my MVC controller. To get the installation path I used following link (I used answer provided by Fredrik Mörk). It worked and I could able to run the exe through a process. The problem occurred when I deployed this solution on IIS where it did not create the process as it was creating in local dev environment. Can anybody tell me how to create a windows process through a solution which is hosted on IIS ?
private string GetPathForExe(string fileName)
{
private const string keyBase = #"SOFTWARE\Wow6432Node\MyApplication";
RegistryKey localMachine = Registry.LocalMachine;
RegistryKey fileKey = localMachine.OpenSubKey(string.Format(#"{0}\{1}", keyBase, fileName));
object result = null;
if (fileKey != null)
{
result = fileKey.GetValue("InstallPath");
}
fileKey.Close();
return (string)result;
}
public void StartMyApplication()
{
Process[] pname = Process.GetProcessesByName("MyApplication");
if (pname.Length == 0)
{
string appDirectory = GetPathForExe("MyApplication");
Directory.SetCurrentDirectory(appDirectory);
ProcessStartInfo procStartInfo = new ProcessStartInfo("MyApplication.exe");
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Process proc = new Process();
proc.StartInfo = procStartInfo;
proc.Start();
}
}

How do I forward request to another proxy server using TIdHTTPProxyServer (proxy chain)

currently I want to make my indy proxy server forward the request to another proxy server. I have found this link and made a try by myself. But my code does not work without any error message as if I had made no change. My code is as below in C++ XE2.
void __fastcall TForm3::MyProxyHTTPBeforeCommand(TIdHTTPProxyServerContext *AContext)
{
TIdIOHandlerStack* tempIO = new TIdIOHandlerStack(NULL);
TIdConnectThroughHttpProxy* tempProxy = new TIdConnectThroughHttpProxy(NULL);
tempProxy->Enabled = true;
tempProxy->Host = "localhost";
tempProxy->Port = 8181 ;
tempIO->TransparentProxy = tempProxy;
AContext->OutboundClient->IOHandler = tempIO;
}
Finally I found I did something stupid. The correct code should be as follow...
void __fastcall TForm3::MyProxyHTTPBeforeCommand(TIdHTTPProxyServerContext *AContext)
{
TIdIOHandlerStack* tempIO = new TIdIOHandlerStack(AContext->OutboundClient);
TIdConnectThroughHttpProxy* tempProxy = new TIdConnectThroughHttpProxy(AContext->OutboundClient);
tempProxy->Enabled = true;
tempProxy->Host = "localhost";
tempProxy->Port = 8181 ;
tempIO->TransparentProxy = tempProxy;
AContext->OutboundClient->IOHandler = tempIO;

Resources