ESP8266连接云服务器环境搭建

客户端:ESP8266 模块 +XCOM v2.0串口调试助手

服务器端:centos7服务器 + mysql5.7

一:服务器端设置

    1.CENTOS7系统安装图形界面(手动安装CentOS7 Gnome GUI包)

        先登入系统

               user: root (注:小写)   password:此处填密码  (注:linux系统密码不会显示,输入完点击enter即可)

        yum方法安装图形包

                # yum groupinstall "GNOME Desktop" "Graphical Administration Tools"

        更新系统的运行级别

                # ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

        重启

                 # reboot   

       重启后输入用户和密码进入系统,见如下图:

                (进入后建议关闭自动锁屏:application >system tool > settings > privacy > screen lock = off ; )

                (进入后建议关闭屏保:application >system tool > settings >power > blank screen = never ; )

       

      2.CENTOS7云服务器设置远程WINDOW系统MSTSC指令连接(搭建Xrdp服务器)

         安装epel库(需要在epel库内下载Xrdp资源)

             #  yum install epel-release 

        安装Xrdp并启动,并且设置成开机启动

            #  yum install xrdp    

        安装tigervnc-server(以便Xrdp自动启用VNC)

            #  yum install tigervnc tigervnc-server

        设置VNC密码(用户名默认:root

           vncpasswd root

        配置SELinux

          #  chcon -t bin_t /usr/sbin/xrdp 

          #  chcon -t bin_t /usr/sbin/xrdp-sesman

        启动Xrdp,并设置成开机启动

         #    systemctl start xrdp
         #    systemctl enable xrdp

        检查防火墙工作状态

        #    systemctl status firewalld   (若防火墙未开启则无需开放端口,若开启了防火墙,则需要开放3389端口以便远程访问)

 

        安装ufw防火墙管理工具(ufw设置防火墙指令比较简单,建议安装)

        #   wget https://launchpad.net/ufw/0.33/0.33/+download/ufw-0.33.tar.gz
        #   tar xzf ufw-0.33.tar.gz
        #   cd ufw-0.33
        #   sudo python ./setup.py install
        #   sudo chmod -R g-w /etc/ufw /lib/ufw /etc/default/ufw /usr/sbin/ufw

        检测防火墙状态并开启防火墙

        #   sudo ufw status     若关闭则开启: #    sudo ufw enable

        开放防火墙8080端口

        #  sudo ufw allow 3389/tcp   必须开放3389端口,才能被远程访问)(若关闭"allow"<>"deny")

        sudo ufw allow 8080/tcp   开放8080端口是为了传输数据)

        #  sudo ufw reload    重启防火墙)

        #  sudo ufw status    查看防火墙端口开放状态,需看到3389和8080端口处于开放状态)

 

        (若安装了ufw则跳过此步骤)firewall-cmd方法开放防火墙8080端口

        #    firewall-cmd --zone=public --add-port=3389/tcp --permanent  (permanent为永久开放,必须开放3389端口,才能被远程访问)(若关闭"add"<>"remove")

        #    firewall-cmd --zone=public --add-port=8080/tcp --permanent  (开放8080端口是为了传输数据)

        #    firewall-cmd --reload  (重启防火墙)

        #    firewall-cmd --list-port   (查看3389和8080端口是否打开)

 

        关闭运营商端连接的服务器,在本地windows系统中:win+r 进入run,输入:mstsc,远程连接串口输入与服务器绑定的公网IP,进入系统后出现如下登录界面:

         username:root ;   password:此处填写VNC密码

             

       3.以上设置完成后,进入运营商的云服务器管理界面,进入安全组设置,设置入方向规则,添加ICMP(为了测试能否PING通),添加TCP:8080端口,以便远程传输数据

           

 

     4.开启端口监控

        查看8080、3389端口状态(TCP:   0.0.0.0:8080  0.0.0.0:*  LISTEN 状态)

        #  netstat -an | grep 8080  

        #  netstat -an | grep 3389

        tcpdump方法打开端口监听(或者用ngrep方法监听,数据会比较工整;# ngrep port 8080

       #  sudo /usr/sbin/tcpdump -s 0 -X 'tcp dst port 8080'

 

二.ESP8266模块连接WIFI

ESP8266<-连接->TTL-USB模块 (硬件)

   GND         -           GND

   VCC         -            3V3

   TXD          -           RXD

   RXD         -           TXD

2.打开串口调试助手XCOM,设置连接,第一次用默认波特率:115200;停止位:1;数据位:8;无校验位。

3.发送AT指令:

    a:测试连接状态

          TX:AT     RX:OK

   b:连接WIFI(若未恢复出厂设置以后会自动连接)

          TX:AT+CWJAP="此处填WIFI名称","此处填WIFI密码"   (注:不能有中文符号)     RX:OK

   c:设置WIFI模式

          TX: AT+CWMODE=3 (注:1为AP模式,只接收,2位STA模式,只发送,3为AP+STA模式。任选) RX:OK

   d:重启模块

        TX: AT+RST    RX:ready   \ WIFI CONNECTED  \ WIFI GOT IP

   e:连接服务器

        TX: AT+CIPSTART="TCP","此处填写服务器弹性公网IP",8080       RX:CONNECT  \ OK   (若不成功查看服务器端口是否开放,安全组入规则是否开放,若设置OK,查看远程能否ping通云服务器)

   f:设置发送数据长度

        TX: AT+CIPSEND=15    RX:OK

   g:发送数据

        TX: youarebeauteful   RX:SEND OK   +IPD,15:youarebeauteful    (OK后面是服务器返回的数据(原数据返回))

        服务器端接收到ESP8266模块发来的数据:

        

 

 

end

   注:设置步骤不一定完全参照以上的,但必须要云端设置好环境才能远程连接。有较多冗余步骤,主要是为了防止出错。

 

posted @ 2020-05-12 17:04  远处是风景  阅读(48)  评论(0)    收藏  举报