Mailsnurr med Loopia och egna servrar

Tänkte skriva en rad om en begränsning med Loopia's webbhotell-paket som jag fick erfara för ett tag sen. Det står ingenting i deras kunskapsdatabas om detta, så jag vill hjälpa andra som försöker göra samma sak i framtiden, genom att ge lite råd.

Det jag försökte var att genom deras LoopiaDNS peka ett domännamn till våra egna namnservrar. Detta fungerade mycket bra och hemsidan kördes fint.

Men vi ville även kunna använda Loopia's e-postsystem för samma domän och det var här problemen började.

Jag la till följande två MX-pekare i DNS-inställningarna på våra servrar:

Mailforward1.loopia.se
Mailforward2.loopia.se

När jag sedan försökte skicka mail till det konton fick jag tillbaks följande felmeddelande (mailadresserna är påhittade):

Hi. This is the qmail-send program at s20.loopia.se.

I'm afraid I wasn't able to deliver your message to the following addresses.
This is a permanent error; I've given up. Sorry it didn't work out.

<reciever@website.domain>:
194.9.94.245 failed after I sent the message.
Remote host said: 554 too many hops, this message is looping (#5.4.6)

--- Below this line is a copy of the message.

Return-Path: <sender@website.domain>
Received: (qmail 99621 invoked from network); 17 Aug 2007 01:43:41 -0000
Received: from s4.loopia.se ([194.9.94.245])
(envelope-sender <sender@website.domain>)
by s20.loopia.se (qmail-ldap-1.03) with SMTP
for <reciever@website.domain>; 17 Aug 2007 01:43:41 -0000
Received: (qmail 52798 invoked from network); 17 Aug 2007 01:43:41 -0000
Received: from s20.loopia.se (194.9.94.3)
by s4.loopia.se with SMTP; 17 Aug 2007 01:43:41 -0000
Received: (qmail 99305 invoked from network); 17 Aug 2007 01:43:39 -0000
Received: from s4.loopia.se ([194.9.94.245])
(envelope-sender <sender@website.domain>)
by s20.loopia.se (qmail-ldap-1.03) with SMTP
for <reciever@website.domain>; 17 Aug 2007 01:43:39 -0000
Received: (qmail 52791 invoked from network); 17 Aug 2007 01:43:39 -0000
Received: from s20.loopia.se (194.9.94.3)
by s4.loopia.se with SMTP; 17 Aug 2007 01:43:39 -0000
Received: (qmail 98985 invoked from network); 17 Aug 2007 01:43:36 -0000
Received: from s4.loopia.se ([194.9.94.245])
(envelope-sender <sender@website.domain>)
by s20.loopia.se (qmail-ldap-1.03) with SMTP
for <reciever@website.domain>; 17 Aug 2007 01:43:36 -0000
....

Detta är bara början på meddelandet det fortsätter i ca 100 hopp, i en slags evighetsloop.

Vid kontakt med supporten fick jag detta svar.

Domänen måste peka mot våra namnservrar för att du ska få vidarebefordringen att fungera genom att det är en konfiguration på vår namnserver som gör att det är vi som måste "hosta" domännamnet.

Så därför vill jag klargöra för andra som tänker försöka sig på samma sak. Det går INTE att använda Loopias e-post om du väljer att använda egna namnservrar.

By Jesper Lind

Emailkonton till 100 ambassader publiceras

Inloggningsuppgifter till 100 ambassaders emailkonton har publicerats på nätet av en (modig) svensk säkerhetskonsult vid namn Dan Egerstad. DN och Computer Sweden skriver mer och har intervjuat honom. Den kommer nog inte dröja länge innan resten av världen snappar upp denna nyhet. Computer Sweden har vart smarta och även skrivit artikeln på engelska (nog första gången jag ser detta på IDG-nätverket). Den kommer nog bli rätt friskt länkad under morgondagen.

Han meddelar att han kommit över denna information genom en säkerhets-labb han gjorde för ett tag sen. Sedan dess har han funderat på vad han skulle göra med den, och beslutade sig till sist för att publicera den publikt och meddela media.

Klokt eller ej får framtiden utvisa men man kan förstå problemet han brottats med. Att kontakta alla 100 ambassader skulle väldigt tidskrävande och det skulle nog kunnas tas emot på fel sätt av myndigheterna. Att överlämna uppgifterna till Säpo vore ett spioneribrott.

Läs själva hans meddelande på bloggen där uppgifterna publicerats, Deranged Security.

Förhoppning om säkrare e-postsystem

Förhoppningsvis kan något gott komma ur detta, det är ju uppenbart att vi behöver säkrare e-postsystem. Än så finns inga uppgifter på hur informationen har läckt och det är det nog många som vill ha svar på.

Första problemet med nuvarande email-system är att man kan skicka mail från vilken adress som helst, med lite programmeringskunskaper. Spam hade varit mycket svårare att skicka ifall detta inte var fallet.

Att det nu visar sig finnas brister, som gör att man kan komma över inloggningsuppgifter och läsa epost, borde sätta igång en utveckling mot säkrare system. Låt oss hoppas på det i alla fall.

Uppdateringar

(2007-08-31) Indiska tidningar har loggat in på e-postkonton för den indiska ambassaden i Kina med hjälp av inloggningsuppgifterna som läckt ut. Dessa har sedan publicerats på deras nätupplaga,som innehåller bland annat lista på inköp gjorda av det indiska försvaret

(2007-09-07) Amerikanska lagstiftare beslutar att stänga ner DEranged Security's hemsida. Sidan är nu återställd, på annan hosting kan man anta. Den enda effekten av nedtagandet är att alla intressanta kommentarer är borta. Iran har där emot visat på större förståelse till avslöjandet av säkerhetsbristerna och Dan tackar dem för detta.

By Jesper Lind

Skicka mail med IIS på din lokala maskin

Har ägnat nån timme åt att försöka skicka mail med SMTP-servern i IIS 5.1 och nu lyckats få iväg några mail. Här går jag igenom de steg jag fick göra för att få det att fungera.

Mailkoden

Själva mailkoden jag använder i applikationen använder System.Net.Mail och ser ut ungefär så här:

SmtpClient smtpClient = new SmtpClient("localhost");
//smtpClient.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
MailAddress from = new MailAddress("from@dummysite.domain", "Alias from name");
MailAddress to = new MailAddress("to@dummysite.domain");
MailMessage mail = new MailMessage(from, to);
mail.IsBodyHtml = true;

mail.Subject = "From my local computer";
mail.Body = "Testing, testing";

smtpClient.Send(mail);

"SmtpDeliveryMethod.PickupDirectoryFromIis" var något jag trodde behövdes ett tag, eftersom jag läste om det på ett forum, men det visade sig att det gick bra att skicka även utan.

Ställa in SMTP-Server

Det problemet kom i form av ett felmeddelandet som såg ut så här:

Mailbox unavailable. The server response was: 5.7.1 Unable to relay for ...

Lösningen till detta hittade jag på CodeBetter och innebar att lägga till 127.0.0.1 som giltigt IP-nummer för att skicka mail från SMTP-server. (Egenskaper / Åtkomst / Anslutning / Endast datorer i listan nedan)

När detta var klart så försökte jag skicka igen, nu fungerade det i applikationen men mailen fastnade i C:\Inetpub\mailroot\Queue.

Lösningen på detta fann jag på Velocityreviews där medlemmarna förklarade att man behövde lägga till en giltigt SMTP från sin ISP. (Egenskaper / Leverans / Avancerat / Smart värd)

Hoppas detta kan hjälpa någon som vill kunna skicka mail från sin egen dator med ASP.NET.

By Jesper Lind

Billigt webbhotell med lite mailstrul

Vi har tyvärr haft lite problem med att ta emot email den senaste veckan, fast bara på vår engelska domän (codeodyssey.com). Kontaktformuläret har dock inte fungerat på någon av våra två sajter, så har ni försökt ta kontakta det senaste så ber vi er försöka igen.

Det hela verkar bero på att vårt webbhotell, Web10.se, har en del problem när de genomfört ett byte av mailservrar. De har fortfarande inte löst det helt.

Men jag kan konstatera att det nya webbmail som är baserad på Sun Java System Communications Express 6 2005Q4 verkar riktigt bra. Förhoppningsvis ska mailen leveraras lite snabbare nu också. Innan har vi märkt en fördröjning på 10-20 minuter.

Sen verkar det som att vi äntligen fått en spamfilter på mailservern. Har sett att jobbiga mail markeras med [!RBLs] i ämnesraden. Har inte kollat något mer ingående på detta men ett spamfilter är verkligen uppskattat.

Om de även kan installera ASP.NET AJAX på servrarna, så kommer vi nog ligga kvar där ett tag till.

Kan verkligen rekommendera Web10.se för er som letar efter ett lite billigare webbhotell men ändå med väldigt bra support.

By Jesper Lind

HTML i Outlook och sjukt jobbiga radbryt

Detta är ett irriterande problem som jag har haft ett tag utan att riktigt förstå varför. När jag skickar ut html-formaterade email så händer det ofta att bilder inte visas. Nu har jag forskat lite mer i det hela och börjat förstå lite mer vad som händer. Det hela verkar bero på att outlook klipper av rader lite här och var och lägger in mellanslag. Man kan läsa lite om det här och det finns en inställning i outlook:

Verktyg/Alternativ/E-postalternativ/"Ta bort extra radbrytningar i meddelande med oformaterad text"

Denna är som standard ikryssad men jag kunde inte se någon skillnad när jag kryssade ur den. Och detta är ju inget man kan kräva att användarna ska göra heller.

Men nu tillbaks till problemet. I nyhetsbreven anger jag länkade bilder som har relativ lång url. Dessa klipps av och ett extra mellanrum läggs på först på nästa rad. Ungfär så här:

<a href='http://someaddress.somedomain/product.aspx?pid=12><img src='http://www.someaddress.somedomain/images/someimage.JPG' bord
[här bryts koden mitt i ett html-attribut]er='0'></a>

Jag har testat mängder av ideer, försökt hårdkodat radbryten precis innan länkarna men inte kommit på den bästa lösningen (om det finns någon).

En lösning (nästan)
Det tips jag kan ge är att förkorta html koden så mycket som möjligt och använda kortformerna i CSS. En grej som kan hjälpa är att lägga in massor av space innan de html-taggar som bryts felaktigt. Typ 40-50 stycken space brukar lösa det mesta. Det hela känns väldigt slumpmässigt och minst sagt irriterande. Mailklienterna nu för tiden är helt enkelt inte riktigt redo för html.

Radbryt i maillänk
I mitt frenetiska sökande efter hur man kunde rundgå radbryten hittade jag en en sida med relaterad information. Tänkte jag sparar den här för den kan bli användbar. Det handlar om hur man gör radbryt i en "email länk", en sån som fyller i ämne och body själv. Då använder man ascii tecknena (%0D)=a carriage return och (%0A)=line feed.

<a href="mailto:someaddress@somedomain.com?cc=someotheraddress@somedomain.com&subject=some subject&body=Some body text.%0D%0ASome new line.">create email</a>

By Jesper Lind
1