Centos 系統中郵箱伺服器配置步驟詳解

來源:互聯網
上載者:User

上網翻郵箱伺服器配置的文章,被某文坑了一次之後,看到一篇文章對郵箱伺服器配置寫的很詳細。
看得出作者十分有耐心啊,轉過來做留檔參考,另外感謝原作者如此翔實的文章

##原文連結以及著作權資訊## [Noisy Guy >>終於完美的用SENDMAIL, DOVECOT, SASLAUTHD, DKIM-MILTER搭建了郵件伺服器][1]
##原文內容##
某天,偶爾看了一下我的VPS的進程,發現有個sendmail,好像曾經在哪見過。。。後來突然想到centos應該都內建了的,閑著蛋疼,就弄一個郵件伺服器吧。但這條路真的是好艱辛,在一個莫名其妙的地方卡了我一晚上,最後還是給我用暴力法過去了。我可憐的VPS,你快被我榨乾了,什麼時候才這麼折騰到頭。

下邊我說一下我折騰的過程,憑記憶寫一下,希望對各位有用。雖然我也是查了很多資料,但是這些資料都不全面,我在這就相當於匯總一下,你來到這裡就對了,一條龍服務。

首先,確認安裝了必要的軟體

rpm -qa | grep sendmail    #發信伺服器
rpm -qa | grep dovecot      #imap pop3 伺服器
rpm -qa | grep cyrus          #sasl認證支援
如果以上都有返回資訊的話,恭喜你,這一步你省了。如果沒有,跟著一邊的做吧

#缺哪個就裝哪個,如果顯示已安裝了更新的版本,你就可以跳過了

yum install sendmail sendmail-cf
yum install dovecot
yum install cyrus-sasl
yum install cyrus-sasl-md5
yum install cyrus-sasl-plain
yum install cyrus-sasl-lib
現在我們可以來配置sendmail了。如果你不是自己編譯的,就會在/etc/mail/下有個sendmail.mc檔案,直接可以編譯這個檔案來配置sendmail,不然你就要看sendmail.cf這本天書了,我覺得和二進位碼沒什麼區別,反正就是看不通。

開啟sendmail.mc

vi /etc/mail/sendmail.mc
然後修改下邊這些東西。註:m4檔案內的右引號都是“1”旁邊那個,直接複製下邊的代碼請自行修改,因為它會自動轉換成html代碼,我就改成正常的右引號了。

#先把這兩行前面的dnl刪掉,也就是取消注釋

dnl TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
#改為

TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
#然後修改登陸SMTP的IP地址,在這我希望在任何地方都可以用這個SMTP伺服器來發信

DAEMON_OPTIONS('Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
#改為

DAEMON_OPTIONS('Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
然後組建組態,也就是剛才說的用這個模版產生sendmail.cf

m4 /etc/mail/sendmail.mc > /etc/sendmail.cf

#***************************
#如果出現:sendmail.mc:10: m4: cannot open `/usr/share/sendmail-cf/m4/cf.m4': No such file or directory
#說明需要安裝sendmail-cf
#yum install sendmail-cf
#***************************
其實,現在你就可以發信了,但是只能發,不能收,而且就算你現在用這個來發郵件,也不會有任何一個郵箱敢收,因為都會被當作垃圾郵件的。

現在開始設定dovecot,這就是管收郵件的,這樣你用郵件用戶端登陸的時候,就會自動下載郵件到本地了。

vi /etc/dovecot/dovecot.conf
#去掉下面一行前面的注釋

#protocols =imap imaps pop3 pop3s
#改為

protocols =imap pop3 lmtp
然後添加網域名稱到local-host-names

vi /etc/mail/local-host-names
#然後添加你的網域名稱,每行一個,例如你的VPS有多個網域名稱,在這我只有一個,就添加
noisyguy.com
然後修改認證方式,我是用saslauthd來認證的,聽說這個安全點。首先編輯/usr/lib/sasl2/Sendmail.conf,如果沒有的話就自己建立一個,注意這檔案開頭是大寫的

vi /usr/lib/sasl2/Sendmail.conf
#添加

pwcheck_method:saslauthd
然後再編輯/usr/lib/sasl2/smtpd.conf.rpmsave,同樣,如果沒有也建立一個

vi /usr/lib/sasl2/smtpd.conf.rpmsave
#把內容改成以下的

log_level: 3
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
然後再編輯/etc/sysconfig/saslauthd

vi /etc/sysconfig/saslauthd

# Directory in which to place saslauthd's listening socket, pid file, and so
# on.  This directory must already exist.
SOCKETDIR=/var/run/saslauthd
# Mechanism to use when checking passwords.  Run "saslauthd -v" to get a list
# of which mechanism your installation was compiled with the ablity to use.
MECH=shadow  #把這玩意改成這樣
# Additional flags to pass to saslauthd on the command line.  See saslauthd(8)
# for the list of accepted flags.
FLAGS=
現在基本搞定了,就是把以上這幾個程式設定開機啟動再重啟就好了

#設定開機啟動

chkconfig sendmail on
chkconfig dovecot on
chkconfig saslauthd on
#重啟

service sendmail restart
service dovecot restart
service saslauthd restart
現在可以添加一個帳戶了,千萬不要用support這個帳號,我開始就是建了這個,然後發信的時候總收不到。看日誌發現都被root帳號給截了,我研究了一個晚上還是沒搞明白,也不知道在哪裡可以設定。最好我只好相信root是support的老婆,support的郵件都讓root看了。重建立了一個別的帳號後,一切正常,眼淚都想出來了!

groupadd mailuser    #添加一個組
adduser -g mailuser -s /sbin/nologin testmail    #添加一個nologin帳號
passwd testmail       #設定密碼
好了,現在測試一下testmail能通過saslauthd驗證嗎

testsaslauthd -u testmail -p password   #password為密碼
#如果返回OK "Success."說明成功
現在先測試一下SMTP啟動沒有

[root@mail]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 centos5 ESMTP Sendmail 8.13.8/8.13.8; Apri, 25 Tue 2012 06:21:29 +0800
helo localhost
250 centos5 Hello localhost.localdomain [127.0.0.1], pleased to meet you
mail from:<testmail@noisyguy.com>
250 2.1.0 <testmail@noisyguy.com>... Sender ok
rcpt to:<xxx@163.com>       (要測試向外發送郵件就填寫網路上存在的郵件地址)
250 2.1.5 <xxx@163.com>... Recipient ok
data
354 Enter mail, end with "." on a line by itself
From: alin
To: alin
Subject: Hello
test
.
250 2.0.0 o45MLTcH005157 Message accepted for delivery
quit
221 2.0.0 centos5 closing connection
Connection closed by foreign host.
#高亮的部分都是要你輸入的地方,如果沒有問題,xxx@163.com這個郵箱就會收到郵件了
下一步你就可以去設定你的DNS了,添加一個mail.noisyguy.com網域名稱,然後再添加一條MX記錄。

現在就增加一個用於smtp發信的帳戶

saslpasswd2 -u noisyguy.com -c testmail
#然後設定密碼
但是,現在你還不能用用戶端來登陸你的郵箱收信,又但是,你可以用用戶端來發信了,你可以試試, 在SMTP那填上你的地址,然後帳號用testmail@noisyguy.com,密碼就是你剛剛用saslpasswd2設定的密碼,不要使用SSL,因為我們還沒有為SMTP添加認證。

要實再收信,我們要設定一下dovecot,讓在任何地方的IP都可以登陸到你的imap帳戶,編輯/etc/dovecot/dovecot.conf

vi /etc/dovecot/dovecot.conf
#找到login_trusted_network,改為

login_trusted_network = 0.0.0.0/0
然後修改一下/etc/dovecot/conf.d/10-mail.conf

vi /etc/dovecot/conf.d/10-mail.conf
#找到mail_location設定郵箱的路徑

mail_location = mbox:~/mail:INBOX=/var/mail/%u
#然後找到mail_privileged_group,給dovecot正確的郵箱目錄使用者組許可權,可以到/var/mail看一下目錄是哪個使用者組的,我的是mail,所以這樣改

mail_privileged_group = mail
基本上沒問題了,現在你可以發一封郵件到testmail@noisyguy.com,看看用用戶端能不能接收。記住,收信郵箱的帳號是用testmail,也就是linux裡的帳號。如果有問題,就看一下/var/log/maillog這個日誌,裡面很詳細的出了什麼問題。

如果一切OK,恭喜你,你有了自己的企業郵箱,再也不忍受用別人的郵箱發信時附帶的廣告了。但是,我們還想再完美一點,弄個SSL認證吧,這樣我就不用怕國寶看我的郵件了,也不怕我的密碼泄漏了,也不怕007了。因為沒有SSL的郵件都是明文傳輸的,弄個SSL加密吧,和銀行網站一樣的東西,你也能做到高端的。

首先,我們先弄imap的認證,這個是收件用的,這樣你也可以在收件伺服器那開啟SSL了。dovecot有一個產生認證的指令碼,我們就用他吧,不然要自己去買的。先下dovecot網站把這個指令碼下載來,最好是到/etc/pki/dovecot裡下載,因為這個指令碼要用到這個目錄下的dovecot-openssl.cnf檔案

cd /etc/pki/dovecot
wget http://dovecot.org/doc/mkcert.sh
在執行指令碼之前,我們先修改一下這個指令碼,就是設定一下產生認證的路徑

vi mkcert.sh
#找到SSLDIR=修改為

SSLDIR=${SSLDIR-/etc/pki/dovecot/keys}
然後,把原來內建的測試認證改個名,就在/etc/pki/dovecot/keys/這個目錄下面,cert/和private/下各有一個,然後就可以修改dovecot-opssl.cnf來設定,你就把你的資訊弄進去就好了。

[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no
#以上都不用改,預設的就行

[ req_dn ]
# country (2 letter code)
#C=FI       國家,兩個字母,中國就寫CN

# State or Province Name (full name)
#ST=       你是哪個省的

# Locality Name (eg. city)
#L=Helsinki      城市

# Organization (eg. company)
#O=Dovecot     公司

# Organizational Unit Name (eg. section)
OU=IMAP server  這個認證用於什麼

# Common Name (*.example.com is also possible)
CN=imap.example.com    你的郵箱伺服器位址,例如我的mail.noisyguy.com

# E-mail contact
emailAddress=postmaster@example.com    你的e-mail

[ cert_type ]
nsCertType = server
改後以後運行mkcert.sh

/etc/pki/dovecot/mkcert.sh
然後你就可以在/etc/pki/dovecot/keys/cert和/etc/pk/dovecot/keys/private下看到產生的認證了,OK,這樣我們設定一下dovecot,讓它使認證來登陸,開啟/etc/dovecot/dovecot.conf,主要就改這幾項

ssl = yes    #啟用SSL
# Preferred permissions: root:root 0444
ssl_cert = </etc/ssl/certs/dovecot.pem    #憑證路徑
# Preferred permissions: root:root 0400
ssl_key = </etc/ssl/private/dovecot.pem  #密鑰路徑
這樣就好了,其他的進階選項你還用不上,除非你真的為企業做郵箱伺服器,有這需要的話就去看一下dovecot的官網吧。重啟dovecot,然後測試一下是否成功了

service dovecot restart

openssl s_client -connect mail.noisyguy.com:imaps

#如果出現下邊的資訊,就說明成功了
CONNECTED(00000003)
depth=2 /O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org
verify error:num=19:self signed certificate in certificate chain
verify return:0
---
Certificate chain
 0 s:/CN=mail.example.com
   i:/O=CAcert Inc./OU=http://www.CAcert.org/CN=CAcert Class 3 Root
 1 s:/O=CAcert Inc./OU=http://www.CAcert.org/CN=CAcert Class 3 Root
   i:/O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org
 2 s:/O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org
   i:/O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIE1DCCArygAwIBAgIDAMBPMA0GCSqGSIb3DQEBBAUAMFQxFDASBgNVBAoTC0NB
Y2VydCBJbmMuMR4wHAYDVQQLExVodHRwOi8vd3d3LkNBY2VydC5vcmcxHDAaBgNV
BAMTE0NBY2VydCBDbGFzcyAzIFJvb3QwHhcNMTAxMjIwMTM1NDQ1WhcNMTIxMjE5
MTM1NDQ1WjAmMSQwIgYDjksadnjkasndjksandjksandjksandj5YXJlYS5vcmcw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3jOX3FC8wVqnb2r65Sfvk
cYUpJhlbhCfqPdN41c3WS0y1Jwwum1q4oMAJvdRnD5TMff1+fqTFy3lS1sYxIXiD
kBRo478eNqzXHMpBOqbvKjYp/UZgWUNA9ebI1nQtwd7rnjmm/GrtyItjahCsgzDS
qPAie+mXYzuT49ZoG+Glg7/R/jDcLMcJY0d5eJ7kufB1RLhvRitZD4FEbJVehqhY
aevf5bLk1BNFhzRBfLXmv6u/kfvWf2HjGAf0aFhaQyiAldDgnZrvaZOFjkToJk27
p9MguvwGmbciao0DmMjcJhQ0smclFwy8Kj98Tz+nTkfAlU8jJdb1J/tIatJdpSRh
AgMBAAGjgdwwgdkwDAYDVR0TAQH/BAIwADA0BgNVHSUELTArBggrBgEFBQcDAgYI
KwYBBQUHAwEGCWCGSAGG+EIEAQYKKwYBBAGCNwoDAzALBgNVHQ8EBAMCBaAwMwYI
KwYBBQUHAQEEJzAlMCMGCCsGAQUFBzABhadodHRwOi8vb2NzcC5jYWNlcnQub3Jn
LzBRBgNVknsadkjasnjdksandjksandjsnNlY3VyaXR5YXJlYS5vcmegKQYIKwYB
BQUHCAWgHQwbbWFpbC5qb2ludC5zZWN1cml0eWFyZWEub3JnMA0GCSqGSIb3DQEB
BQUAA4ICAQAX8ceObvUZNKYTlNQ/cv0BiA1XweRsVNca1ILACNLdVPR9mvf+aXCh
ODkHaZAmGngj1DfD4fJsTbaydGWSPeVH91Qi9F+Pi6szhsxylI83NKbuXihcenuG
twnte8aIb5FelVHttLQPSKRR62E8YmDWk3KYivuFAuZqDaGnWc5yeneTBpsGter/
4awqsgymBK2YEg1HIWMPaRBvwzCVN/yUyWhFH9Nj11f/xgZE87VXrjLHWT/73i2Z
S4uIZ2KHQUYuxMGldgpXm+QxFM8DGA6z1T1oPCVfW85cezlfr8QVvX6SXZrAUNL0
3D5YPzQuevW+5CrqnGA+F5ff4mBMl8R8Sg0+0LoLqt5PbpGyTt9vS1INZCdfvtIA
/d7Ae7Xp9W8FVRqd7tvNMIy3ZA0/wNMDUczkhC/YtvHfMELpjtMJAGF15OtO7Vik
V+FZnBP1Yd7760dtEmd6bF8vjcXCvDdxwGtcAehAUpIgAWvkHHOt8+H56tkFENAP
/ZpJ+Wr+K3lxkkG+BN1bucxMuAdVyTpFyZfKDHRXIO/5e0hpPOaTO+obD3kifzdh
yy7KmdKvDclHTiPuonJBzEXeM3JQBjcDHbMSyA6+38yBcso27h9VqCQJB2cZmSlW
ArS/9wt2X21KgeuGHlTZ/8z9gXAjQKXhDYECWWd6LkWl98ZDBihslQ==
-----END CERTIFICATE-----
subject=/CN=mail.example.com
issuer=/O=CAcert Inc./OU=http://www.CAcert.org/CN=CAcert Class 3 Root
---
No client certificate CA names sent
---
SSL handshake has read 5497 bytes and written 293 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: zlib compression
Expansion: zlib compression
SSL-Session:
    Protocol  : TLSv1
    Cipher    : DHE-RSA-AES256-SHA
    Session-ID: 114A22BE4625B33F6893124ACF640AE0628B48B5039E90B3B9A20ADF7FA691F3
    Session-ID-ctx:
    Master-Key: B8A55EC91A060575CFB29503FBF7160C2DC8BCBFE02D20A7F704882F72D8D00272D8D002CE5CCC4B94A492F43ED8F
    Key-Arg   : None
    TLS session ticket:
    0000 - 86 c7 46 63 a5 b6 48 74-16 d8 e0 a7 e2 64 e8 89   ..Fc..Ht.....d..
    0010 - 97 90 59 4b 57 f3 e2 b3-e2 d2 88 90 a8 aa b4 44   ..YKW..........D
    0020 - ea 24 08 5e b4 14 7f e1-2a 1a 1c 40 ca 85 e7 41   .$.^....*..@...A
    0030 - 9d 0d a8 4c f7 e3 db 1e-ef da 53 9c fe 43 cc 62   ...L......S..C.b
    0040 - 79 b6 ad ea 9d cf ca b2-37 41 b7 0f ea 7d 59 e8   y.......7A...}Y.
    0050 - 10 01 a0 eb dc c2 63 66-56 54 6a e8 3a 4b 93 49   ......cfVTj.:K.I
    0060 - 77 da e4 4b 21 e8 30 7e-bf 10 91 3a 2c f9 59 80   w..K!.0~...:,.Y.
    0070 - 01 1f 36 0b 92 85 67 55-c8 86 1d 44 b1 6f 0d ae   ..6...gU...D.o..
    0080 - 15 36 b6 49 3a ef 94 9a-ef 6d 27 f0 80 20 43 09   .6.I:....m'.. C.
    0090 - be 70 c5 30 15 3b 93 c6-c1 4c e9 7f 5c 34 98 dd   .p.0.;...L..4..

    Compression: 1 (zlib compression)
    Start Time: 1292857721
    Timeout   : 300 (sec)
    Verify return code: 19 (self signed certificate in certificate chain)
---
+OK Dovecot ready.
就這樣,你可以在用戶端設定用SSL登陸了。

下邊,我們就來設定一下用帶SSL的SMTP來發信吧

我們還是自已來簽認證,誰叫我沒錢買正版的認證呢。

cd /etc/pki/tls/certs
make sendmail.pem
輸入以上命令後,就會要求你輸入一些資訊,其實就是和上一步驟一樣的。然後配置一下/etc/mail/sendmail.mc檔案

vi /etc/mail/sendmail.mc
#然後找到這一行,把前邊的dnl刪了

dnl DAEMON_OPTIONS ('Port=smtps, Name=TLSMTA, M=s')dnl
#然後找到下面這幾行,把你的憑證路徑弄進去,記得把dnl刪了

dnl define(`confCACERT_PATH', `/etc/pki/tls/certs')dnl
dnl define(`confCACERT', `/etc/pki/tls/certs/ca-bundle.crt')dnl
dnl define(`confSERVER_CERT', `/etc/pki/tls/certs/sendmail.pem')dnl
dnl define(`confSERVER_KEY', `/etc/pki/tls/certs/sendmail.pem')dnl
#重建sendmail.cf並重啟sendmail

m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf
service sendmail restart
我們來測試一下是否成功了

telnet localhost 25
EHLO localhost
#如果看到

250-STARTTLS
#恭喜你,成功了
似乎到這裡一切就結束了,發吧,收吧,一切正常。但是,如果對方的郵箱是Gmail之類的牛X郵箱,是不是把你的郵件當垃圾郵件了呢。之前好像一切正常的,但是用了SSL驗證後,就成這樣了,莫非是我用了自簽署的認證的緣故?誰叫我沒錢!誰叫我沒錢!誰叫這東西要錢!

不過老子有辦法,就是弄一個DKIM來給我們的伺服器發出的郵件添加一個數字驗證。如果你的網域名稱可以添加SPF記錄,那你不用往下看了,因為添加SPF記錄就能很簡單的解決這個問題。

首先我們先安裝dkim-milter

rpm -ivh http://dl.fedoraproject.org/pub/epel/5/i386/dkim-milter-2.8.3-8.el5.i386.rpm
安裝好後,隨便在哪個地方都行,不過最好在一個你熟悉的地方,執行以下命令

dkim-genkey -r -d noisyguy.com
#把noisyguy.com換成你的網域名稱
然後會在當前的目錄下產生一個default.private和default.txt檔案,default.txt是公開金鑰部分,開啟它會看到如下的東西

default._domainkey IN TXT “v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2ubSRHUKzL4ucfzuMKEHyy6rx/WlrZB5SKYKrCsSJWUpQstNqjcaLntaQtmKEnDgDr5rMvklaByf8vE5guqZerZ8UWeBx5joIwuohjkapgM/R6lFmI9VUj8N/c5O9AxQAOQLgnDNPl5OQamUuOp9c5W0jLbYd/hrymPYBSKEi0wIDAQAB” ; —– DKIM default for noisyguy.com
現在你可以到你的網域名稱解析中添加一條TXT記錄,名字就寫default._domainkey,值就是上面雙引號中的那一串看不懂的東西。下一步,我們來配置dkim-milter,開啟/etc/mail/dkim-milter/dkim-filter.conf,修改以下的幾項就行了

Domain                  noisyguy.com   ## 設定網域名稱
KeyFile                         /etc/mail/dkim/keys/default.private ##就是密鑰的儲存位置
#如果設定了keylist的話,這條就會被忽略了,如果只有一個密鑰的話,就把keylist注釋掉
Selector                mail1 ##本機使用的selector的名字,比如mail1
Socket                  local:/var/run/dkim-milter/dkim.sock
接下來,我們配置一下sendmail,開啟/etc/mail/sendmail.mc

vi /etc/mail/sendmail.mc
#然後添加以下兩行

INPUT_MAIL_FILTER('dkim-milter', 'S=local:/var/run/dkim-milter/dkim-milter.sock')dnl
define('confMILTER_MACROS_ENVFROM', 'i, {auth_type}, {auth_authen}, {auth_ssf}, {auth_author}, {mail_mailer}, {mail_host}, {mail_addr}')dnl
#重建sendmail.cf

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
然後啟動dkim並重啟sendmail

service dkim-milter start
service sendmail restart
到這,真的是一切都完了。。。。試試發幾封看看,應該不會再被當作垃圾了吧,同時你可以在信頭的位置看到dkim的簽名

DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=noisyguy.com;
    s=default; t=1335321913;
    bh=vhGcrWEOzdLzyNBO5N2CRkI2e6xSCoIb8v7XqSpD+Rc=;
    h=From:Content-Type:Content-Transfer-Encoding:Subject:Date:
     Message-Id:To:Mime-Version;
    b=LPFwdhKTx2UNdRFaSruV35Dl3StNqSu9/BRdyje/wJvt6mK9HjXYdLdNXfncTJPtR
     daYtSoes7nQyHBHacpEvNBaErdb+8Y7eUNp6ZN/w9qFS5UT1JKK/UWnjG7FkAB2nmr
     m0i1Swt5wHjFS1xzijmegXx+bDJt65//atKyxYAE=
是不是,一切都完美了?

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.