I might be dumb but I'm confused by what LDAP attribute SOGO uses for web interface login credentials VS what LDAP attribute SOGO uses to show folders once logged in. It appears that the login credentials use the "uid" attribute and once logged in, sogo uses the ldap attribute of "mail" for displaying folders for the currently logged in user. I believe that I know that the attributes sogo uses can be changed by modifying values in the /home/sogo/GNUstep/Defaults/.GNUstepDefaults file, by changing the UIDFieldName, IMAPHostFieldName, and IDFieldName configuration values but I'm not really clear on how this should be setup.
If sogo uses the mail attribute when logged in it doesn't show any of the folders that should be there inbox, drafts, etc and I'm not able to use the cyradm utility to add the folders to the user's email address. Trying a cyrus administration command like: cm users.pmec...@rvscapes.com.inbox<mailto:users.pmec...@rvscapes.com.inbox> cm users.pmec...@rvscapes.com.drafts<mailto:users.pmec...@rvscapes.com.drafts> etc. I wondered if I had to change my host name on my machine? I'm just confused and the documentation doesn't seem very clear about what attribute is used where when sogo is rendering the default web interface. Any guidance would be appreciated. Paul I think my setup may have something to do with my problem of getting a 500 http error when I go to save a draft. From: Paul Mecham [mailto:pmec...@proapphosting.com] Sent: Tuesday, December 13, 2011 1:40 PM To: users@sogo.nu Subject: RE: [SOGo] I just came on board and I'm having some minor issues with my first SOGO install. Hi Julian, do you have any other recommendations to get rid of the HTTP 500 error when saving a draft from the SOGO web interface. Could it have something to do with LDAP? Does SOGO require that the LDAP server have a predefined directory structure or does it build it. It seems like SOGO builds it automatically because when I try to create a mail box INBOX.Drafts using the cm command in cyradm utility I get an error statusing that I don't have rights to do it even though I'm using the cyrus admin user. It's just not real clear what LDAP sub/folders have to be created in order for SOGO to work. As far as I can tell, SOGO is building these directories automatically. If I add folders I can see them in the interface. I'm at a loss. I think I may grab the code and see what's up. Is the code available for the 2.0 stuff? Paul From: Julian Robbins [mailto:julian.robb...@q-par.com]<mailto:[mailto:julian.robb...@q-par.com]> Sent: Monday, December 12, 2011 10:43 AM To: users@sogo.nu<mailto:users@sogo.nu> Subject: Re: [SOGo] I just came on board and I'm having some minor issues with my first SOGO install. On 12/12/11 17:44, Paul Mecham wrote: Awesome, just to be clear about what we're talking about I'm setting the, SOGoMailSpoolPath property, it that correct? If so, it does seem to change where it puts the drafts but I still get the 500 error. I may just grab the code and debug to see what's up but I was hoping there was a simpler fix. Just for kicks I set it to /home/pmecham/sogomail and tried to save a new message. The program did create a directory named newDraft1323711135-1 but it did not contain any files. Yes you have the right property with SOGoMailSpoolPath. Sorry if a bit vague earlier, but thought it would at least get you in the right direction. Have you checked that your MTA is supported? Most are .. You can increase the debugging in SOGo greatly by looking at http://www.sogo.nu/english/nc/support/faq/article/how-to-enable-more-verbose-logging-in-sogo.html. This may help esp the SOGoMailKeepDraftsAfterSend it mentions that you can set. Julian Paul From: Julian Robbins [mailto:julian.robb...@q-par.com] Sent: Monday, December 12, 2011 9:51 AM To: users@sogo.nu<mailto:users@sogo.nu> Subject: Re: [SOGo] I just came on board and I'm having some minor issues with my first SOGO install. On 12/12/11 16:39, Paul Mecham wrote: Thank you for the quick response. I did try your suggestion earlier on and it did not solve my issue. By default I believe the program uses the /tmp/pmecham directory when I don't specify one. I can see my drafts messages when I vim them through the file system and they appear to contain directories that are named in this fashion, newDraft1323500244-1, and these directories contain drafts. Best to check the Installation manual, but I believe you really should set the config anyway; I don't think SOGo behaves too well if if its not set at all. I think there was a similar thread quite recently on this list about this too. Julian Paul From: Julian Robbins [mailto:julian.robb...@q-par.com] Sent: Monday, December 12, 2011 9:11 AM To: users@sogo.nu<mailto:users@sogo.nu> Subject: Re: [SOGo] I just came on board and I'm having some minor issues with my first SOGO install. On 12/12/11 15:53, Paul Mecham wrote: I'm not sure if this is the correct place for this type of question or not so pleas forgive and direct me if it's not. I've installed SOSO 2.0 because and everything seems to work except when I save a draft of an email I get a HTTP 500 error back from the server. I can see the draft email file in my spool directory so I don't believe it's a directory/file rights thing and I've tried adding various folders using the cyradm utility but still no luck. I'm sort of stuck on this right now and any guidance would be appreciated. I've haven't checked all your config, but believe there is a particular piece of the config that you have to declare where the filesystsem uses to store draft emails, ie /tmp probably Perhaps you are missing this in your .GNUStelp file ? Julian This is the error message I'm getting in the sogo log: 67.2.80.238 - - [11/Dec/2011:19:47:18 GMT] "POST /SOGo/so/pmecham/Mail/0/folderINBOX/folderDrafts/newDraft1323650830-1/save HTTP/1.1" 500 191/2258 0.256 - - 0 Here is my .GNUSTEPdefaults file <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//GNUstep//DTD plist 0.9//EN" "http://www.gnustep.org/plist-0_9.xml"<http://www.gnustep.org/plist-0_9.xml>> <plist version="0.9"> <dict> <key>NSGlobalDomain</key> <dict> </dict> <key>sogod</key> <dict> <key>SOGoSharedFolderName</key> <string>INBOX/shared</string> <key>SOGoSpecialFoldersInRoot</key> <string>NO</string> <key>OCSFolderInfoURL</key> <string>postgresql://sogo:sogo@localhost:5432/sogo/sogo_folder_info</string> <key>OCSSessionsFolderURL</key> <string>postgresql://sogo:sogo@localhost:5432/sogo/sogo_sessions_folder</string> <key>SOGoACLsSendEMailNotifications</key> <string>YES</string> <key>SOGoAppointmentSendEMailNotifications</key> <string>YES</string> <key>SOGoDraftsFolderName</key> <string>INBOX/Drafts</string> <key>SOGoFoldersSendEMailNotifications</key> <string>YES</string> <key>SOGoIMAPServer</key> <string>localhost</string> <key>SOGoLanguage</key> <string>English</string> <key>SOGoMailDomain</key> <string>rvscapes.com</string> <key>SOGoMailingMechanism</key> <string>smtp</string> <key>SOGoProfileURL</key> <string>postgresql://sogo:sogo@localhost:5432/sogo/sogo_user_profile</string> <key>SOGoSMTPServer</key> <string>localhost</string> <key>SOGoSentFolderName</key> <string>INBOX/Sent</string> <key>SOGoTimeZone</key> <string>America/Montreal</string> <key>SOGoTrashFolderName</key> <string>INBOX/Trash</string> <key>SOGoUserSources</key> <array> <dict> <key>CNFieldName</key> <string>cn</string> <key>IDFieldName</key> <string>uid</string> <key>IMAPHostFieldName</key> <string></string> <key>UIDFieldName</key> <string>uid</string> <key>baseDN</key> <string>ou=users,dc=rvscapes,dc=com</string> <key>bindDN</key> <string>dc=rvscapes,dc=com</string> <key>bindPassword</key> <string>qwerty</string> <key>canAuthenticate</key> <string>YES</string> <key>displayName</key> <string>Shared Addresses</string> <key>hostname</key> <string>127.0.0.1</string> <key>id</key> <string>public</string> <key>isAddressBook</key> <string>YES</string> <key>port</key> <string>389</string> </dict> </array> </dict> </dict> </plist> And here's my my cyradm lm dump: IMAP Password:localhost.localdomain> lm Drafts (\HasNoChildren) pmecham.folderDrafts (\HasNoChildren) crap2 (\HasNoChildren) pmecham.test (\HasNoChildren) pmecham (\HasChildren) trash (\HasNoChildren) pmecham.Drafts (\HasNoChildren) users.pmecham.crap1 (\HasNoChildren) Here is my imapd.conf configdirectory: /var/lib/imap partition-default: /var/spool/imap admins: cyrus sievedir: /var/lib/imap/sieve sendmail: /usr/sbin/sendmail hashimapspool: true sasl_pwcheck_method: saslauthd sasl_mech_list: PLAIN tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt allowplaintext: yes And my RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-port" "443" RequestHeader set "x-webobjects-server-name" "mail.rvscapes.com" RequestHeader set "x-webobjects-server-url" "http://mail.rvscapes.com"<http://mail.rvscapes.com> Alias /SOGo.woa/WebServerResources/ \ /usr/lib/GNUstep/SOGo/WebServerResources/ Alias /SOGo/WebServerResources/ \ /usr/lib/GNUstep/SOGo/WebServerResources/ AliasMatch /SOGo/so/ControlPanel/Products/(.*)/Resources/(.*) \ /usr/lib/GNUstep/SOGo/$1.SOGo/Resources/$2 <Directory /usr/lib/GNUstep/SOGo/> AllowOverride None Order deny,allow Allow from all </Directory> <LocationMatch "^/SOGo/so/ControlPanel/Products/.*UI/Resources/.*\.(jpg|png|gif|css|js)"> SetHandler default-handler </LocationMatch> ## Uncomment the following to enable proxy-side authentication, you will then ## need to set the "SOGoTrustProxyAuthentication" SOGo user default to YES and ## adjust the "x-webobjects-remote-user" proxy header in the "Proxy" section ## below. #<Location /SOGo> # AuthType XXX # Require valid-user # SetEnv proxy-nokeepalive 1 # Allow from all #</Location> ProxyRequests Off SetEnv proxy-nokeepalive 1 ProxyPreserveHost On # When using CAS, you should uncomment this and install cas-proxy-validate.py # in /usr/lib/cgi-bin to reduce server overloading # # ProxyPass /SOGo/casProxy http://localhost/cgi-bin/cas-proxy-validate.py # <Proxy http://localhost/app/cas-proxy-validate.py> # Order deny,allow # Allow from your-cas-host-addr # </Proxy> ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0 <Proxy http://127.0.0.1:20000/SOGo> ## adjust the following to your configuration # RequestHeader set "x-webobjects-server-port" "443" # RequestHeader set "x-webobjects-server-name" "yourhostname" # RequestHeader set "x-webobjects-server-url" "https://yourhostname"<https://yourhostname> RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-name" "rvscapes.com" RequestHeader set "x-webobjects-server-url" "http://mail.rvscapes.com"<http://mail.rvscapes.com> ## When using proxy-side autentication, you need to uncomment and ## adjust the following line: # RequestHeader set "x-webobjects-remote-user" "%{REMOTE_USER}e" RequestHeader set "x-webobjects-server-protocol" "HTTP/1.0" RequestHeader set "x-webobjects-remote-host" %{REMOTE_HOST}e env=REMOTE_HOST AddDefaultCharset UTF-8 Order allow,deny Allow from all </Proxy> ## We use mod_rewrite to pass remote address to the SOGo proxy. # The remote address will appear in SOGo's log files and in the X-Forward # header of emails. RewriteEngine On RewriteRule ^/SOGo/(.*)$ /SOGo/$1 [env=REMOTE_HOST:%{REMOTE_ADDR},PT] Thank you for any guidance you can provide. I hope to become a code contributor once I have a clue about how this all fits together. Nice work to everyone that's worked on this. Paul Mecham pmec...@proapphosting.com<mailto:pmec...@proapphosting.com> -- users@sogo.nu https://inverse.ca/sogo/lists