<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM的嵌入式SMTP遠(yuǎn)程控制設(shè)計(jì)

          基于ARM的嵌入式SMTP遠(yuǎn)程控制設(shè)計(jì)

          作者: 時(shí)間:2009-06-18 來源:網(wǎng)絡(luò) 收藏

          編碼模塊的功能是:設(shè)備發(fā)送郵件時(shí),將設(shè)備參數(shù)及狀態(tài)轉(zhuǎn)變成標(biāo)準(zhǔn)的適合在Internet上傳輸?shù)泥]件格式。
          一個(gè)完整的報(bào)文包括包封、報(bào)頭和報(bào)體。包封是用命令MAIL FROM和RCPT TO來定義。報(bào)頭信息包括:收件人(To:),發(fā)件人(Sender:),抄送者(CC:),發(fā)送日期(Date:),主題(Subject:),MIME版本(Mime-version:)等。在報(bào)體中信息包括:內(nèi)容類型(Content-Type:),內(nèi)容傳輸編碼類型(Content-Transfer-Encoding:),邊界定義(Boundary:)及信息內(nèi)容等。郵件信息每行之間都以CR/LF(回車換行符)作為結(jié)尾。可以通過這些郵件頭信息的關(guān)鍵詞,解析出收件人、發(fā)件人、抄送人、發(fā)送日期,MIME版本號(hào)等[4]。
          報(bào)體信息包括郵件的正文和附件。正文開始的標(biāo)記是郵件頭信息結(jié)束后的兩個(gè)回車換行符,即兩個(gè)CR/LF。郵件結(jié)束的標(biāo)志是CR/LF>.CR/LF>。模塊中提供了對(duì)MIME(Multipurpose Internet Mail Extensions)1.0格式郵件的處理。實(shí)現(xiàn)了MIME內(nèi)容傳輸編碼,包括:7-bit,8-bit, quoted-printable,Base64編解碼。
          2.4 /E協(xié)議模塊
          SMTP/ESMTP是一種命令/應(yīng)答模式的鎖步協(xié)議??蛻魴C(jī)給出字符串命令,服務(wù)器給出數(shù)字代碼應(yīng)答,實(shí)現(xiàn)郵件的鎖步傳輸。
          在TCP連接基礎(chǔ)上(端口號(hào)25),本模塊實(shí)現(xiàn)SMTP/E的最小命令集。作為客戶發(fā)送郵件時(shí),實(shí)現(xiàn)的客戶連接命令包括: ELHO(或者HELO)、AUTH LOGIN、USER、PASS、MAIL FROM、RCPT TO、DATA、RSET、NOOP、QUIT。作為服務(wù)器接收郵件時(shí),響應(yīng)的數(shù)字代碼包括:220(服務(wù)就緒)、221(服務(wù)關(guān)閉)、250(要求的郵件操作完成)、354(開始郵件輸入,以CR/LF>.CR/LF>結(jié)束)、500(命令不識(shí)別)[4][5]。
          發(fā)送者的用戶名和密碼必須經(jīng)過Base64編碼后,發(fā)送到SMTP/ESMTP服務(wù)器端,認(rèn)證才能成功。實(shí)現(xiàn)過程見圖3。

          本文引用地址:http://www.ex-cimer.com/article/152450.htm

          圖3:SMTP/E模塊基本流程
          2.5 解析模塊
          遠(yuǎn)端設(shè)備在收到郵件指令時(shí),應(yīng)能從郵件中正確析取出指令并做出響應(yīng)。
          系統(tǒng)中的E-mail解析模塊通過查找E-mail中的主題來知道命令類型。其在E-mail報(bào)體中查找字符串Subject來發(fā)現(xiàn)E-mail的主題,并從中找到規(guī)定類型的命令字頭。如無相應(yīng)主題,返回-1,將郵件丟棄。根據(jù)主題命令字的不同,完成設(shè)備的相關(guān)動(dòng)作控制或相應(yīng)狀態(tài)的郵件報(bào)告。對(duì)于數(shù)據(jù)塊的更新,使用附件解析模塊來得到附件中的數(shù)據(jù)。
          3. 安全性問題
          由于SMTP技術(shù)的開放性和標(biāo)準(zhǔn)性,其開發(fā)的簡(jiǎn)單便利也帶來很多缺點(diǎn)。設(shè)備的必須對(duì)訪問者有所區(qū)分,否則系統(tǒng)的安全將不可預(yù)料。
          特別是,在發(fā)送郵件信息,甚至是用戶名和密碼的時(shí)候采用的是明文發(fā)送。通過常見的抓包工具,就可以輕易獲得正在接收或發(fā)送郵件的用戶的所有信息,包括用戶名和密碼以及郵件信息,這給設(shè)備的正常操控帶來了極大的威脅。即使ESMTP協(xié)議在發(fā)送用戶名和密碼的時(shí)候采用的是base64編碼,但其解碼也是輕而易舉,因此其安全性也有限。
          對(duì)于安全問題,可根據(jù)不同的控制環(huán)境使用不用的策略[6]。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          tcp/ip相關(guān)文章:tcp/ip是什么




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();