Why are you trying to redirect the mail from ‘webmas...@mydomain.com’ to ‘a.randome.u...@mydomain.com’ anyhow? Isn’tthere an alias set up? I was just configuring postfix on another machine, not my james server, and I noted a virtualiases configuration for that purpose. I am recalling an aliases file in the conf directory. Maybe I am wrong or getting my versions mixed up (if not, maybe it should be that way). I think the rewrite you are trying to do is for sending from ‘webmas...@mydomain.com’ to ‘my.other.em...@otherdomain.com’ and is actually overkill for what you are doing.
Sent from my iPhone > On May 26, 2019, at 3:18 PM, cryptearth <cryptea...@cryptearth.de> wrote: > > Well, seems it doesn't work in the real world. > > The way I mentioned worked in a VM so far - but after I upgraded my > root-server and did the same I know get this issue: > > INFO | jvm 1 | 2019/05/26 20:58:02 | INFO 20:58:02,242 | > org.apache.james.protocols.netty.BasicChannelUpstreamHandler | Connection > established from 127.0.0.1 > INFO | jvm 1 | 2019/05/26 20:58:02 | INFO 20:58:02,300 | > org.apache.james.domainlist.lib.AbstractDomainList | Local host is: 127.0.0.1 > INFO | jvm 1 | 2019/05/26 20:58:02 | INFO 20:58:02,423 | > org.apache.james.smtpserver.SendMailHandler | Successfully spooled mail > Mail1558897082344-b3644bc7-10c4-46a7-b670-75cf4dc9fd94 from > MaybeSender{mailAddress=Optional[cryptea...@root1.cryptearth.de]} on > localhost/127.0.0.1 for [cryptea...@root1.cryptearth.de] > INFO | jvm 1 | 2019/05/26 20:58:02 | INFO 20:58:02,507 | > org.apache.james.protocols.netty.BasicChannelUpstreamHandler | Connection > closed for 127.0.0.1 > INFO | jvm 1 | 2019/05/26 20:58:03 | ERROR 20:58:03,024 | > org.apache.james.mailetcontainer.impl.camel.CamelProcessor | Exception > calling Redirect: Unable to create a new message name: too long. Possible > loop in config.xml. > INFO | jvm 1 | 2019/05/26 20:58:03 | javax.mail.MessagingException: > Unable to create a new message name: too long. Possible loop in config.xml. > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.server.core.MailImpl.detectPossibleLoop(MailImpl.java:344) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.server.core.MailImpl.deriveNewName(MailImpl.java:321) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.server.core.MailImpl.duplicate(MailImpl.java:103) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.transport.mailets.redirect.ProcessRedirectNotify.process(ProcessRedirectNotify.java:49) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.transport.mailets.Redirect.service(Redirect.java:475) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.impl.camel.CamelProcessor.process(CamelProcessor.java:81) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.impl.camel.CamelMailetProcessor$MailetContainerRouteBuilder.handleMailet(CamelMailetProcessor.java:178) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.impl.camel.CamelMailetProcessor$MailetContainerRouteBuilder.lambda$configure$0(CamelMailetProcessor.java:155) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:63) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:715) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:638) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:248) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.Splitter.process(Splitter.java:130) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.Pipeline.process(Pipeline.java:138) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.Pipeline.process(Pipeline.java:101) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.component.direct.DirectBlockingProducer.process(DirectBlockingProducer.java:53) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:186) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:86) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:541) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:506) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:369) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:506) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.ProducerCache.send(ProducerCache.java:229) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:144) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:161) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:168) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.impl.camel.CamelMailetProcessor.service(CamelMailetProcessor.java:68) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.lib.AbstractStateCompositeProcessor.service(AbstractStateCompositeProcessor.java:84) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > org.apache.james.mailetcontainer.impl.JamesMailSpooler.lambda$run$0(JamesMailSpooler.java:163) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > INFO | jvm 1 | 2019/05/26 20:58:03 | at > java.lang.Thread.run(Thread.java:748) > INFO | jvm 1 | 2019/05/26 20:58:03 | > INFO | jvm 1 | 2019/05/26 20:58:03 | INFO 20:58:03,025 | > org.apache.james.transport.mailets.ToRepository | Storing mail > fd94-!5647419-!8598886-!8671760-!8516799-!7948334-!6362370-!1064056-!8846222 > in MailRepositoryUrl{value=file://var/mail/error/} > > This is the content of the filtered message: > > cryptearth@localhost:~/james-server-app-3.3.0/var/mail/error> cat > 666439342D21353634373431392D21383539383838362D21383637313736302D21383531363739392D21373934383333342D21363336323337302D21313036343035362D2138383436323232.Repository.FileStreamStore > To: local-serv...@cryptearth.de > Message-ID: <201905261858.x4qiw2wp003...@root1.cryptearth.de> > MIME-Version: 1.0 > Received: from localhost (EHLO root1.cryptearth.de) ([127.0.0.1]) > by localhost (JAMES SMTP Server ) with ESMTP ID -1238704049 > for <cryptea...@root1.cryptearth.de>; > Sun, 26 May 2019 20:58:02 +0200 (CEST) > Received: (from cryptearth@localhost) > by root1.cryptearth.de (8.15.2/8.15.2/Submit) id x4QIw2wp003888; > Sun, 26 May 2019 20:58:02 +0200 > Date: Sun, 26 May 2019 20:58:02 +0200 > From: "(Cron Daemon)" <cryptea...@root1.cryptearth.de> > Subject: Cron <cryptearth@root1> /home/cryptearth/bin/test.sh > Content-Type: text/plain; charset=UTF-8 > Auto-Submitted: auto-generated > Precedence: bulk > X-Cron-Env: <XDG_SESSION_ID=4> > X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/1000> > X-Cron-Env: <DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus> > X-Cron-Env: <LANG=de_DE.UTF-8> > X-Cron-Env: <SHELL=/bin/sh> > X-Cron-Env: <HOME=/home/cryptearth> > X-Cron-Env: <PATH=/usr/bin:/bin> > X-Cron-Env: <LOGNAME=cryptearth> > X-Cron-Env: <USER=cryptearth> > > test > cryptearth@localhost:~/james-server-app-3.3.0/var/mail/error> > > So, the redirect seems to work as far to change the recipient, but then it > can't be sent to the local user account. I'm unsure if it's maybe some DNS/IP > error as the way I re-installed the system isn't supported by OVH. So maybe I > made an error somewhere. What's bothering me that the hostname sometimes keep > change back to localhost although it's correctly set anywhere. > > Maybe I get in touch with OVH support > > Matt > >> Am 24.05.2019 um 01:58 schrieb cryptearth: >> Hey there, Matt here again. >> >> Long time since my last update on this topic, but now I got a pretty easy >> solution. >> >> On May 22nd OpenSUSE 15.1 was released, and with this new update I again >> looked at my "problem" about how to deal with apache and other local mail. >> Instead of my initial thoughts I hadn't to implement any myself, but james >> also comes with anything needed. The two keywords here are the >> CompositeMatcher and the Redirect mailet. >> >> To recap: basically I want to filter any local mail to a special service >> user except those from authed smtp and apache (wich is set to >> webmas...@cryptearth.de in php.ini). >> >> CompositeMatcher offers a way to easy implement this filter rule: >> >> <matcher name="local-service" >> match="org.apache.james.mailetcontainer.impl.matchers.And"> >> <matcher match="RemoteAddrInNetwork=127.0.0.0/8" /> >> <matcher match="org.apache.james.mailetcontainer.impl.matchers.Not"> >> <matcher match="SMTPAuthSuccessful" /> >> </matcher> >> <matcher match="org.apache.james.mailetcontainer.impl.matchers.Not"> >> <matcher match="SenderIs=webmas...@cryptearth.de" /> >> </matcher> >> </matcher> >> >> I guess this speaks for itself, at least I guess anyone subscribed to this >> mailing-list should understand what this basic logic does. >> One side-note: on start up the code that creates the config only looks for >> Matchers and Mailets in org.apache.james.transport.matchers.* - so any other >> classes has to be referenced by its FQN. >> >> As I now have all those mails I want to filter into the special mailbox an >> easy Redirect does the trick about rewriting the recipient: >> >> <mailet match="local-service" class="Redirect"> >> <to>local-serv...@cryptearth.de</to> >> </mailet> >> >> The very convenient thing for apache is that every outgoing mail is also >> saved automatic in SENT as for any existing local user. >> >> I only came up with this as I started to dig my way around the github and >> wasn't satisfied with this compilcated way of looking up the API. So I >> quickly asked google about creating a complete javadoc - mvn >> javadoc:aggregate-jar did it. So I got an easy browsable api-doc. >> About placement I inserted it right at top of root processor, even above the >> postmaster mailet. As it works it can't be that wrong, but if there is a >> better spot than right at top please tell me. >> >> So, this concludes my question about how to combine james with sendmail in a >> way sendmail is only the dumb nullclient forwarding all local generated mail >> to james. As the Redirect mailet also offers other rewrites of the headers I >> guess it could be used to do a bit more with a bit more work on the configs. >> >> Thanks for anyone helped about this topic - a huge help was the last reply >> from Benoit about using the RemoteAddrInNetwork class. >> >> >> So long, >> >> Matt >> <truncated> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org > For additional commands, e-mail: server-user-h...@james.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org For additional commands, e-mail: server-user-h...@james.apache.org