Artikel ini bukan tentang bagaimana
memakai Outlook, Thunderbird dan email client lainnya, bukan itu. Di
sini saya akan menjelaskan bagaimana email dikirimkan ke tujuan melalui
SMTP server Gmail secara anonymous maupun authenticated dengan
menggunakan OpenSSL. Ini adalah penjelasan apa yang sebenarnya terjadi
dibalik layar ketika outlook dan email client lainnya mengirim email
melalui smtp server gmail.
Anonymous vs Authenticated Sending
Email bisa dikirimkan melalui smtp
server secara anonymous maupun authenticated. Kalau kita mengirim email
secara anonymous memakai smtp server milik gmail, maka email tujuan
tidak bisa dari domain lain, harus dari domain yang sama atau domain
lain yang masuk dalam jaringan google apps. Bila smtp server gmail
mengijinkan pengiriman email ke lain domain secara anonymous itu berarti
smtp server gmail bersifat open relay, karena dia bersedia menjadi
titik relay pengiriman email ke domain lain. Saat ini jarang sekali ada
smtp server yang open relay karena dia akan menjadi sasaran spammer
mengirimkan email spamnya ke domain lain.
Jadi bila kita ingin mengirim email ke
domain lain (di luar google network), mau tidak mau harus secara
authenticated yaitu dengan memasukkan username dan password terlebih
dahulu. Dengan memasukkan username dan password, kini gmail bersedia
menjadi titik relay pengiriman email ke manapun. Mirip dengan ketika
kita login ke webmail gmail dengan sebelumnya memasukkan username dan
password. Setelah login, selanjutnya kita bisa mengirimkan email ke
manapun juga.
Sending Anonymously
Sebelum masuk ke pembahasan pengiriman
email authenticated dengan SSL (smtps), saya akan memulai dengan
mengirim email secara anonymous dengan smtp biasa. Pertama
saya harus tahu dulu smtp server yang akan saya gunakan. Untuk itu saya
harus mencari MX record dari domain gmail.com. Dengan perintah dig saya
bisa mengetahui bahwa MX record untuk gmail.com adalah:
$ dig -t MX gmail.com
;; QUESTION SECTION:
;gmail.com. IN MX
;; ANSWER SECTION:
gmail.com. 2878 IN MX 30 alt3.gmail-smtp-in.l.google.com.
gmail.com. 2878 IN MX 40 alt4.gmail-smtp-in.l.google.com.
gmail.com. 2878 IN MX 5 gmail-smtp-in.l.google.com.
gmail.com. 2878 IN MX 10 alt1.gmail-smtp-in.l.google.com.
gmail.com. 2878 IN MX 20 alt2.gmail-smtp-in.l.google.com.
;; AUTHORITY SECTION:
gmail.com. 207201 IN NS ns4.google.com.
gmail.com. 207201 IN NS ns1.google.com.
gmail.com. 207201 IN NS ns2.google.com.
gmail.com. 207201 IN NS ns3.google.com.
;; ADDITIONAL SECTION:
gmail-smtp-in.l.google.com. 174 IN A 209.85.143.114
alt1.gmail-smtp-in.l.google.com. 174 IN A 209.85.199.27
alt2.gmail-smtp-in.l.google.com. 174 IN A 216.239.59.27
alt3.gmail-smtp-in.l.google.com. 174 IN A 74.125.79.27
alt4.gmail-smtp-in.l.google.com. 174 IN A 209.85.218.43
ns1.google.com. 34378 IN A 216.239.32.10
ns2.google.com. 34378 IN A 216.239.34.10
ns3.google.com. 34378 IN A 216.239.36.10
ns4.google.com. 34378 IN A 216.239.38.10
Ada banyak mail server untuk domain gmail.com, silakan pilih yang mana
saja. Dalam contoh ini saya memakai gmail-smtp-in.l.google.com.
Selanjutnya saya akan mengirim email dari dan ke rizki.wicaksono a.t.
gmail.com. Saya akan membuat koneksi ke smtp server tersebut pada port
25 dan mengirimkan perintah smtp. Maaf alamat email saya ubah menjadi
rizki.wicaksono .a.t. gmail.com agar tidak jadi sasaran spam, seharusnya
dalam format email yang benar dengan karakter @.
$ telnet gmail-smtp-in.l.google.com 25
Trying 209.85.143.114...
Connected to gmail-smtp-in.l.google.com (209.85.143.114).
Escape character is '^]'.
220 mx.google.com ESMTP 22si3820758tim.24
ehlo gmail.com
250-mx.google.com at your service, [202.43.x.x]
250-SIZE 35651584
250-8BITMIME
250-ENHANCEDSTATUSCODES
250 PIPELINING
mail from:<rizki.wicaksono.a.t.gmail.com>
250 2.1.0 OK 22si3820758tim.24
rcpt to:<rizki.wicaksono.a.t.gmail.com>
250 2.1.5 OK 22si3820758tim.24
data
354 Go ahead 22si3820758tim.24
testing ajah...
.
250 2.0.0 OK 1236753091 22si3820758tim.24
quit
221 2.0.0 closing connection 22si3820758tim.24
Connection closed by foreign host.
Perintah SMTP yang saya kirimkan sederhana sekali, diawali dengan EHLO
sebagai salam pembuka. Kemudian diikuti dengan MAIL FROM, untuk mengisi
alamat email asal yang harus diapit dengan karakter < dan >.
Setelah itu baru masukkan email tujuan dengan perintah RCPT TO (juga
harus diapit dengan karater < dan >). Setelah itu perintah
berikutnya adalah DATA. Dengan mengirimkan perintah data ini, maka saya
bisa mulai menuliskan Subject dan body email, hingga diakhiri dengan
karakter DOT dalam satu baris sendiri.
Mari kita lihat email yang diterima dalam format header lengkap berikut ini:
Delivered-To: rizki.wicaksono.a.t.gmail.com
Received: by 10.115.106.13 with SMTP id i13cs348624wam;
Tue, 10 Mar 2009 23:31:32 -0700 (PDT)
Received: by 10.110.92.8 with SMTP id p8mr5461696tib.56.1236753091115;
Tue, 10 Mar 2009 23:31:31 -0700 (PDT)
Return-Path: <rizki.wicaksono.a.t.gmail.com>
Received: from gmail.com ([202.43.x.x])
by mx.google.com with ESMTP id 22si3820758tim.24.2009.03.10.23.31.17;
Tue, 10 Mar 2009 23:31:31 -0700 (PDT)
Received-SPF: neutral (google.com: 202.43.169.218 is neither permitted nor denied by domain of rizki.wicaksono.a.t.gmail.com) client-ip=202.43.169.218;
Authentication-Results: mx.google.com; spf=neutral (google.com: 202.43.169.218 is neither permitted nor denied by domain of rizki.wicaksono.a.t.gmail.com) smtp.mail=rizki.wicaksono.a.t.gmail.com
Date: Tue, 10 Mar 2009 23:31:31 -0700 (PDT)
Message-Id: <49b75ac3.160d6e0a.23a7.ffff842eSMTPIN_ADDED@mx.google.com>
testing ajah...
Pada header Received terlihat bahwa email pertama diterima oleh smtp
server mx.google.com (ini hostname alias dari
gmail-smtp-in.l.google.com). Kemudian smtp server ini merelay email ini
ke smtp server lain, yaitu 10.110.92.8, dan akhirnya dari sana di-relay
lagi ke smtp server terakhir yaitu 10.115.106.13. Smtp server
10.115.106.13 tersebut adalah smtp server yang terdekat dengan inbox
user sehingga tidak perlu lagi di-relay.
Sending via SMTP-Secure (SMTP over SSL)
Kelemahan dari pengiriman email secara anonymous yang saya tunjukkan di
atas adalah tidak bisa dipakai untuk mengirim email ke lain domain.
Karena smtp server gmail tidak rela dijadikan titik relay pengiriman
email ke domain lain. Yang dimaksud dengan domain lain adalah domain
selain gmail.com dan domain lain yang tergabung dalam google apps
network. Jadi kalau anda mempunyai email dengan domain sendiri di google
apps, anda bisa memakai smtp server ini.
Saya akan mencoba mengirim email ke rizki.a.t.ilmuhacking.com dengan
menggunakan smtp server gmail. Perhatikan bahwa saya bisa saja langsung
menggunakan smtp server ilmuhacking.com untuk mengirim email ke
ilmuhacking.com, namun dalam artikel ini saya akan menunjukkan
pengiriman email dari smtp server gmail. Gmail mempunyai smtp server
sendiri yang berbeda dengan smtp server dalam daftar MX record DNS. SMTP
server ini berlokasi di smtp.gmail.com. Pengiriman email dengan smtp
server ini harus dengan smtp secure, yaitu smtp over SSL pada port 465.
Mirip dengan http secure (http over SSL), pengiriman email dengan smtps
aman dari sniffing password dan serangan man-in-the-middle.
Oke, langsung saja ya. Saya gunakan perintah openssl command line berikut di Linux:
$ openssl s_client -connect smtp.gmail.com:465 -crlf -CAfile /etc/pki/tls/certs/ca-bundle.crt
Perintah tersebut adalah untuk membuka koneksi SSL ke smtp.gmail.com
pada port 465. Opsi -crlf ini sangat penting karena tanpa opsi ini gmail
akan diam seribu bahasa ketika kita selesai menulis body email dengan
perintah DOT sebab ternyata gmail hanya mau menerima line feed dalam
bentuk CRLF (0x0D+0x0A). Opsi -CAfile menunjukkan lokasi trusted
Certificate Authority yang kita miliki untuk memverfifikasi sertifikat
yang dimiliki server apakah valid atau tidak.
Setelah perintah ini dijalankan, maka openSSL akan menangani segala
komunikasi yang terjadi di layer SSL, mulai dari negosiasi hubungan
sampai mengakhiri hubungan. Berikut ini adalah tampilan setelah perintah
itu dijalankan.
CONNECTED(00000003)
depth=1 /C=ZA/ST=Western Cape/L=Cape Town/O=Thawte Consulting cc/OU=Certification Services Division/CN=Thawte Premium Server CA/emailAddress=premium-server@thawte.com
verify return:1
depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc/CN=smtp.gmail.com
verify return:1
---
Certificate chain
0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=smtp.gmail.com
i:/C=ZA/ST=Western Cape/L=Cape Town/O=Thawte Consulting cc/OU=Certification Services Division/CN=Thawte Premium Server CA/emailAddress=premium-server@thawte.com
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDYzCCAsygAwIBAgIQUR2EgGT4+hGKEhCgLMX2sjANBgkqhkiG9w0BAQUFADCB
zjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJ
Q2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UE
CxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhh
d3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNl
cnZlckB0aGF3dGUuY29tMB4XDTA3MDczMDAwMDAwMFoXDTEwMDcyOTIzNTk1OVow
aDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1v
dW50YWluIFZpZXcxEzARBgNVBAoTCkdvb2dsZSBJbmMxFzAVBgNVBAMTDnNtdHAu
Z21haWwuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD+RiG+G3Mo9Q9C
tcwDjpp6dJGifjiR5M2DbEbrsIOlth80nk5A7xstKCUfKobHkf/G9Y/DO24JP5yT
s3hWep05ybyiCmOzGL5K0zy3jIq0vOWy+4pLv2GsDjYi9mQBhobAAx3z38tTrTL+
WF4p0/Kl014+wnukIpj4MdF35rIkgQIDAQABo4GmMIGjMB0GA1UdJQQWMBQGCCsG
AQUFBwMBBggrBgEFBQcDAjBABgNVHR8EOTA3MDWgM6Axhi9odHRwOi8vY3JsLnRo
YXd0ZS5jb20vVGhhd3RlUHJlbWl1bVNlcnZlckNBLmNybDAyBggrBgEFBQcBAQQm
MCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnRoYXd0ZS5jb20wDAYDVR0TAQH/
BAIwADANBgkqhkiG9w0BAQUFAAOBgQBeNYOZwMVQ7bd6b4sueAkgm57Cyv2p1Xv1
52e8bLnWqd03mWgn/+TQtrwbE1E6pVuQaZJY33ILpt8IfzwVf2TGQI+M5yazZ2fC
xwArHo20iAss3MLQR8tDXWfBoH2Lk9BBsEKDRP4hp83yfpZgdY3pinHTCbqHpsiS
v97epiiFBA==
-----END CERTIFICATE-----
subject=/C=US/ST=California/L=Mountain View/O=Google Inc/CN=smtp.gmail.com
issuer=/C=ZA/ST=Western Cape/L=Cape Town/O=Thawte Consulting cc/OU=Certification Services Division/CN=Thawte Premium Server CA/emailAddress=premium-server@thawte.com
---
No client certificate CA names sent
---
SSL handshake has read 1017 bytes and written 315 bytes
---
New, TLSv1/SSLv3, Cipher is RC4-MD5
Server public key is 1024 bit
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : RC4-MD5
Session-ID: 2C94C746C92E5042C3B8FA92C765B21C5FC03147134A9B1998B89D25C18FD7C9
Session-ID-ctx:
Master-Key: 1F674A6B6ABB774873CB57B2E235138A83CF864071C674F781B2C51E7C67B5BB2487DCC07A2AA3F197494AE045BA9F13
Key-Arg : None
Krb5 Principal: None
Start Time: 1236755367
Timeout : 300 (sec)
Verify return code: 0 (ok)
---
220 mx.google.com ESMTP j5sm1016106tid.21
Dari situ terlihat bahwa gmail menggunakan sertifikat yang diterbitkan
oleh Thawte, algoritma cipher yang dipakai adalah RC4 128 bit, yang
merupakan algoritma stream cipher. Pada baris terakhir terlihat “220
mx.google.com ESMTP” yang menunjukkan bahwa itu adalah pesan yang
dikirim dari layer smtp dan pengguna kini siap berkomunikasi di layer
SMTP. Selanjutnya saya harus memasukkan perintah smtp seperti biasa,
tidak ada bedanya dengan perintah smtp pada pengiriman email secara
anonymous sebelumnya karena ini adalah pada layer SMTP, layer SSL semua
sudah ditangani oleh OpenSSL. Namun tidak seperti sebelumnya, kali ini
saya harus memasukkan perintah untuk authentication dengan perintah AUTH
LOGIN. Berikut adalah perintah smtp yang dikirimkan untuk melakukan
authentication.
220 mx.google.com ESMTP a14sm120617tia.27
ehlo gmail.com
250-mx.google.com at your service, [202.43.169.218]
250-SIZE 35651584
250-8BITMIME
250-AUTH LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250 PIPELINING
auth login
334 VXNlcm5hbWU6
cml6a2kud2ljYWtzb25vQGdtYWlsLmNvbQ==
334 UGFzc3dvcmQ6
aW5pcGFzc3dvcmQ=
235 2.7.0 Accepted
Seperti biasa saya mengawali dengan mengucapkan salam, dengan perintah
EHLO. Setelah itu saya mengirimkan perintah AUTH LOGIN. Jawaban dari
perintah AUTH LOGIN adalah “VXNlcm5hbWU6″ yang merupakan format base64
dari “Username:”. Kemudian saya menjawab dengan mengirimkan
“cml6a2kud2ljYWtzb25vQGdtYWlsLmNvbQ==” yang merupakan format base64 dari
username saya yaitu rizki.wicaksono.a.t.gmail.com (karakter @ saya
ganti .a.t.). Gmail menjawab dengan “UGFzc3dvcmQ6″ yang merupakan format
base64 dari “Password:”. Saya harus menjawab dengan password saya dalam
format base64 encoded. Bila authentication berhasil maka gmail akan
menjawab dengan “235 2.7.0 Accepted”.
235 2.7.0 Accepted
mail from:<rizki.wicaksono.a.t.gmail.com>
250 2.1.0 OK a14sm120617tia.27
rcpt to:<rizki.a.t.ilmuhacking.com>
250 2.1.5 OK a14sm120617tia.27
data
354 Go ahead a14sm120617tia.27
Setelah authentication berhasil saya bisa mulai mengirimkan email asal
dan tujuan dengan perintah mail from dan rcpt to, sama seperti pada
contoh pengiriman secara anonymous. Email tujuan saya kirim ke
rizki.a.t.ilmuhacking.com.
perintah RCPT harus dikirim dalam huruf kecil “rcpt” sebab huruf kapital
“R” dalam openSSL adalah perintah khusus untuk melakukan RENEGOTIATION.
Setelah memasukkan email asal dan tujuan, saya harus mengirimkan
perintah DATA untuk mulai menulis isi emailnya. Kemudian gmail menjawab
dengan “354 Go ahead a14sm120617tia.27″, itu artinya lampu hijau buat
saya untuk memasukkan isi pesannya.
data
354 Go ahead a14sm120617tia.27
Subject: ini contoh saja(subject tidak harus ada)
ini baru isi bodynya
.
250 2.0.0 OK 1236757718 a14sm120617tia.27
Perintah DATA harus diakhiri dengan sebuah karakter dot pada satu baris
sendiri. Kalau dalam binary hexa: 0x0D0A2E0D0A, atau dengan kata lain
karakter DOT (hex 2E), diapit dengan CRLF. Inilah gunanya opsi -crlf,
tanpa ada opsi -crlf, maka openSSL hanya akan mengirim 0x0A2E0A, atau
karakter DOT diapi dengan LF. Pada beberapa smtp server LF saja tidak
masalah, namun untuk server lain seperti gmail harus lengkap yaitu CRLF.
Tanpa opsi -crlf gmail tidak akan bereaksi apa-apa walaupun sudah
diberikan perintah DOT karena gmail menganggap perintah DATA belum
selesai karena gmail merasa belum menemukan “[CR][LF][.][CR][LF]” .
Setelah mengirim “CRLF.CRLF”, gmail membalas dengan “250 2.0.0 OK
1236757718 a14sm120617tia.27″. Itu artinya email kita telah diterima
oleh smtp server untuk disampaikan pada yang berhak menerima. String
“a14sm120617tia.27″ adalah ESMTP ID yang akan muncul pada header
“Received” nantinya. Setelah itu koneksi SSL harus diputus dengan
perintah QUIT.
Email Full Header
Sekarang saya akan tunjukkan email yang diterima oleh rizki.a.t.ilmuhacking.com beserta header lengkapnya.
Return-path: <rizki.wicaksono.a.t.gmail.com>
Envelope-to: rizki.a.t.ilmuhacking.com
Delivery-date: Wed, 11 Mar 2009 02:46:34 -0500
Received: from ti-out-0910.google.com ([209.85.142.184]:18796)
by gator669.hostgator.com with esmtp (Exim 4.69)
(envelope-from <rizki.wicaksono.a.t.gmail.com>)
id 1LhJ98-00072k-98
for rizki.a.t.ilmuhacking.com; Wed, 11 Mar 2009 02:46:34 -0500
Received: by ti-out-0910.google.com with SMTP id w4so2949271tib.9
for <rizki.a.t.ilmuhacking.com>; Wed, 11 Mar 2009 00:48:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=domainkey-signature:received:received:message-id:date:from:subject;
bh=J251llbniOU9frVh5JTTWTbFJ7hfNyC2+eoS+Apb5mw=;
b=MhRby2/7B1Wqvm3AuaVoN8rfMEgmNgQVn9dOaMvji3dBEJMxYJhmF0pTmO10Ax5a0N
xPPZyR73wf4B9WnOuegsrYQaXeJcJwuT3OBpilTWYQkJ+On9oMp9G6f3mL8v1fqHop7R
LLoq+sOzpP4hPSizgP7Ych3zkbOYsYCPTxhNs=
DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=gamma;
h=message-id:date:from:subject;
b=wkxbyGJZxZ0u3LlYgarzF9mOAZE/suPNKdCGtI7m4HUsQoIj2bqaRCVwa4h9Gl8fjh
Hz12rIg9HyDDXfqE0dc1bbL8IIjtjtppRV4DupwcKXz5qS769jEM6KJLm4rh0PsajxhI
yHhQEqDvokFNrii2I1toEdJB04Y847Bbw4Gi4=
Received: by 10.110.3.15 with SMTP id 15mr12547532tic.0.1236757718898;
Wed, 11 Mar 2009 00:48:38 -0700 (PDT)
Received: from gmail.com ([202.43.x.x])
by mx.google.com with ESMTPS id a14sm120617tia.27.2009.03.11.00.44.16
(version=SSLv3 cipher=RC4-MD5);
Wed, 11 Mar 2009 00:48:37 -0700 (PDT)
Message-ID: <49b76cd5.0e1b6e0a.7747.6163@mx.google.com>
Date: Wed, 11 Mar 2009 00:48:37 -0700 (PDT)
From: rizki.wicaksono.a.t.gmail.com
Subject: ini contoh saja(subject tidak harus ada)
ini baru isi bodynya
Untuk menelusuri email selalu dimulai dari header
Received paling bawah kemudian naik ke atas. Header Received yang paling
bawah menunjukkan bahwa email dikirimkan oleh IP 202.43.x.x melalui
smtp server mx.google.com. Informasi lain dari header itu adalah email
dikirimkan dengan SSL versi 3 dan cipher RC4-MD5. ESMTP id adalah
gabungan dari id yang didapatkan wahtu saya terkoneksi ke smtp server
gmail “a14sm120617tia” dengan tanggal dan jam.
Setelah itu email direlay ke smtp server 10.110.3.15. Dari situ masih
di-relay lagi ke smtp server ti-out-0910.google.com, yang merupakan smtp
server yang berada di ujung luar jaringan google. Smtp ini seperti
sebuah gateway untuk email yang ditujukan ke domain di luar jaringan
google. Dari smtp itu email direlay ke luar jaringan google melalui smtp
server gator669.hostgator.com. Google mengetahui alamat smtp
ilmuhacking dengan cara query MX record dari DNS. Berdasarkan MX record
DNS, smtp server untuk domain ilmuhacking.com ada di ilmuhacking.com.
Kalau MX servernya adalah ilmuhacking.com, kenapa kok disebut di header
sebagai gator669.hostgator.com? Perhatikan apa yang dikirimkan oleh
server ketika saya telnet ke MX server untuk ilmuhacking port 25.
$ telnet ilmuhacking.com 25
Trying 174.132.149.60...
Connected to 3c.95.84ae.static.theplanet.com (174.132.149.60).
Escape character is '^]'.
220-gator669.hostgator.com ESMTP Exim 4.69 #1 Wed, 11 Mar 2009 03:49:14 -0500
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.
Dari jawaban server, terlihat jelas bahwa server menyebut dirinya dengan
gator669.hostgator.com. Dari header email tidak ada lagi Received
header setelah email direlay melalui gator669 ini. Artinya smtp server
itu adalah yang paling dekat dengan email tujuan (memang smtp server itu
berada di host yang sama dengan ilmuhacking, jadi email account berada
di localhost).
Sending via Gmail Webmail
Mengirim email dengan webmail gmail lebih anonoymous
daripada dengan email client karena IP address pengirim email akan
tersembunyi
Sebagai pembanding saya ingin menunjukkan bedanya mengirim email
menggunakan email client seperti outlook dengan mengirim email
menggunakan webmail gmail.com. Mengirim email dengan webmail gmail lebih
anonymous sebab ip address pengirim email akan tersembunyi dan tidak
akan muncul di header email penerima. Jadi ketika penerima membaca
headernya tidak akan bisa mengetahui pengirim email berasal dari IP
berapa.
Baiklah mari kita coba mengirim email ke rizki.a.t.ilmuhacking.com dari
gmail saya. Berikut adalah header email yang saya dapatkan di email saya
@ilmuhacking.com.
Return-path: <rizki.wicaksono ----- gmail.com>
Envelope-to: rizki ---- ilmuhacking.com
Delivery-date: Thu, 02 Apr 2009 23:47:05 -0500
Received: from qw-out-2122.google.com ([74.125.92.26]:39569)
by gator669.hostgator.com with esmtp (Exim 4.69)
(envelope-from <rizki.wicaksono ----- gmail.com>)
id 1LpbJ2-00081i-Ur
for rizki-----ilmuhacking.com; Thu, 02 Apr 2009 23:47:04 -0500
Received: by qw-out-2122.google.com with SMTP id 3so780828qwe.41
for <rizki ---- ilmuhacking.com>; Thu, 02 Apr 2009 21:47:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=domainkey-signature:mime-version:received:date:message-id:subject
:from:to:content-type:content-transfer-encoding;
bh=ttbLYGlNcclR26ajVmyhGBxUz1HjR3xNKI+RYgNoXXY=;
b=rdHYQ5fLAKmA5Lfvye1KomQ+LDL8zwk+Wn8uanvrlNAAIj13Wr4Z+iJtPPDw2VR+yY
6DmLM48sl33LoiOKLYTmSdZMNS5ukRT8DLnoT+SSCOclG0iMASLGbvRYF+b8AfAyewBM
Kp5Rkg36hEIOt1VPZq++vd5Gc+xaiGDWYw4Ew=
DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=gamma;
h=mime-version:date:message-id:subject:from:to:content-type
:content-transfer-encoding;
b=UFm0D96HyVkRONh3GEJt2OcDJF49NswjHv6X1hJnAxNvNY+fAyj/NqI7B7zs/2BWRP
qaKKf30jpr7qlTbPsPUZLWaFGlTA+2qIFXWlRrOI59pYS9gIpwoW0GNKc0oilGIG30FF
0rkqdz3BA+PqFCbWZuVyHxBWIW7j+Gnzorlak=
MIME-Version: 1.0
Received: by 10.220.46.147 with SMTP id j19mr1263200vcf.75.1238734022579; Thu,
02 Apr 2009 21:47:02 -0700 (PDT)
Date: Fri, 3 Apr 2009 11:47:02 +0700
Message-ID: <845a4b9c0904022147j1077174cnc277b9e82871820b@mail.gmail.com>
Subject: testing saja....
From: Rizki Wicaksono <rizki.wicaksono ----- gmail.com>
To: rizki --- ilmuhacking.com
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Perhtaikan bahwa header Received yang paling bawah tidak menunjukkan ip
address pengirimnya. Email pertama kali diterima oleh smtp server yang
ip addressnya 10.220.46.147. Itu adalah ip adderss private, di jaringan
internal gmail. Karena email dikirim dari webmail gmail sehingga email
langsung diterima oleh server internal gmail. Dengan begini ip address
pengirim tidak akan bisa diketahui oleh penerima email.
Comparison Regular SMTP vs SMTP over SSL vs Webmail
Oke, saya sudah tunjukkan 3 cara mengirim email melalui Gmail.
Masing-masing ada kelemahan dan kelebihannya. Di bawah ini adalah tabel
yang menunjukkan perbedaan dari ketiga cara tersebut dari sisi: ip
address pengirim, apakah tersembunyi? apakah ada header DKIM-Signature?
apakah untuk mengirim email harus login dulu? dan apakah bisa mengirim
email ke domain di luar gmail.com?
|
Sender Ip Address Hidden? |
Header DomainKey/DKIM-Signature? |
Must be Authenticated? |
Send to non-gmail domain? |
Regular SMTP |
No |
No |
No |
No |
SMTP over SSL |
No |
Yes |
Yes |
Yes |
Webmail |
Yes |
Yes |
Yes |
Yes |
No related posts.
Sumber :
here