<
From version < 5.1 >
edited by Edwin Chen
on 2022/05/02 09:07
To version < 8.2 >
edited by Xiaoling
on 2022/05/31 14:44
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Edwin
1 +XWiki.Xiaoling
Content
... ... @@ -2,15 +2,15 @@
2 2  {{toc/}}
3 3  {{/box}}
4 4  
5 -= Monitor Gateway =
5 += 1. Monitor Gateway =
6 6  
7 -== Introduction ==
7 +== 1.1 Introduction ==
8 8  
9 9  This introduction shows how to use a script to monitor the gateway. The video link for this instruction is: [[https:~~/~~/youtu.be/8PieIwfSF_g>>url:https://youtu.be/8PieIwfSF_g]]
10 10  
11 -[[image:https://wiki.dragino.com/images/thumb/d/dc/Monitor_gateway.png/600px-Monitor_gateway.png||height="456" width="600"]]
11 +[[image:https://wiki.dragino.com/images/thumb/d/dc/Monitor_gateway.png/600px-Monitor_gateway.png||height="393" width="517"]]
12 12  
13 -== Steps ==
13 +== 1.2 Steps ==
14 14  
15 15  * Create account in ThingsSpeak and creat channel.
16 16  * Download script from dragino site and move it to properly directory
... ... @@ -34,10 +34,6 @@
34 34  (((
35 35  USER='xxxxx'             # user name in your thinkspeak ~-~-> Profile
36 36  PASS='xxxxx'     #MQTT_API_KEY in your thinkspeak ~-~-> Profile
37 -)))
38 -
39 -(% class="box infomessage" %)
40 -(((
41 41  CHAN_ID='xxxx'    #Channel ID   of the channel for this gateway
42 42  CHAN_KEY='xxxxx'   #Channel Write API  of the channel for this gateway
43 43  )))
... ... @@ -48,11 +48,7 @@
48 48  
49 49  (% class="box infomessage" %)
50 50  (((
51 - # For details see man 4 crontabs
52 -)))
53 -
54 -(% class="box infomessage" %)
55 -(((
47 +# For details see man 4 crontabs
56 56  # Example of job definition:
57 57  # .~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~- minute (0 - 59)
58 58  # | .~-~-~-~-~-~-~-~-~-~-~-~-- hour (0 - 23)
... ... @@ -61,15 +61,7 @@
61 61  # | | | | .~-~-~-~- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
62 62  # | | | | |
63 63  # * * * * * user-name command to be executed
64 -)))
65 -
66 -(% class="box infomessage" %)
67 -(((
68 68  #*/10 * * * *  checklog
69 -)))
70 -
71 -(% class="box infomessage" %)
72 -(((
73 73  ~* 23 * * *  /etc/init.d/auto_update start
74 74  */20 * * * *  /usr/bin/monitor_gateway.sh     
75 75  )))
... ... @@ -76,8 +76,10 @@
76 76  
77 77  * Reboot device.
78 78  
79 -== Monitor Public IP ==
80 80  
64 +
65 +== 1.3 Monitor Public IP ==
66 +
81 81  The monitor_gateway.sh has been updated to upload the public ip of the device as well.
82 82  
83 83  User can find the public ip in field7, the chart is not able to show the complete public ip, user can check that in the export.
... ... @@ -145,36 +145,31 @@
145 145  After doing above, please download and mail the public keys to Dragino support and wait for our mail for the valid host port. Input the valid host port got from our support and click connect so we can remote access to your gateway.
146 146  
147 147  
148 -Set Up RSSH Server
134 +=== Set Up RSSH Server ===
149 149  
136 +Advance administrator can config a SSH server to provide support their end user themselves., Steps as below
150 150  
151 -===== Step 1:Download the SSH service code =====
138 +==== Step 1:Download the SSH service code ====
152 152  
153 153  1).git clone [[https:~~/~~/github.com/dragino/rssh-server.git>>url:https://github.com/dragino/rssh-server.git]] rssh-server
154 154  
155 -[[~[~[image:https://wiki.dragino.com/images/thumb/d/d0/Git_clone.png/500px-Git_clone.png~|~|height="80" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Git_clone.png]]
142 +[[~[~[image:https://wiki.dragino.com/images/thumb/d/d0/Git_clone.png/500px-Git_clone.png~|~|height="89" width="555"~]~]>>url:https://wiki.dragino.com/index.php/File:Git_clone.png]]
156 156  
157 -git clone rssh-server
158 -
159 159  2).cd rssh-server; sudo make ~-~--> to Generate the execute file:rssh_serv
160 160  
161 -[[~[~[image:https://wiki.dragino.com/images/thumb/e/e3/Generate_the_execute_file.png/500px-Generate_the_execute_file.png~|~|height="103" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Generate_the_execute_file.png]]
146 +[[~[~[image:https://wiki.dragino.com/images/thumb/e/e3/Generate_the_execute_file.png/500px-Generate_the_execute_file.png~|~|height="114" width="554"~]~]>>url:https://wiki.dragino.com/index.php/File:Generate_the_execute_file.png]]
162 162  
163 -Generate the execute file
164 164  
165 165  **Debug** :
166 166  
167 167  {{{ if you git fail. --> sudo: git: command not found.
168 168   please install git. --> yum install git -y or apt-get install git -y.
169 -}}}
170 -
171 -{{{ if you make error 127,it lack of gcc.
153 + if you make error 127,it lack of gcc.
172 172   please install gcc. -->yum install gcc.
173 173  }}}
174 174  
175 175  [[~[~[image:https://wiki.dragino.com/images/d/d7/Lack_of_gcc.png~|~|height="174" width="434"~]~]>>url:https://wiki.dragino.com/index.php/File:Lack_of_gcc.png]]
176 176  
177 -lack of gcc
178 178  
179 179  {{{ if you make a fatal error : sqlite3.h,it lack of sqlite3.
180 180   please insatell sqlite3.
... ... @@ -182,28 +182,135 @@
182 182  
183 183  [[~[~[image:https://wiki.dragino.com/images/thumb/9/93/Lack_of_sqlite3.png/500px-Lack_of_sqlite3.png~|~|height="137" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Lack_of_sqlite3.png]]
184 184  
185 -lack of sqlite3
186 186  
187 -How to install Sqlit3
167 +**How to install Sqlit3**
188 188  
189 -{{{ Step1:Download the SQLit3 installation package
190 - sudo wget
191 - Step2:tar the SQLit3 installation package
169 +(% class="box infomessage" %)
170 +(((
171 + Step1:Download the SQLit3 installation package
172 + sudo wget
173 +Step2:tar the SQLit3 installation package
192 192   sudo tar -zxvf sqlite-autoconf-3350300.tar.gz
193 - Step3:Generate the makefile
175 +Step3:Generate the makefile
194 194   cd sqlite-autoconf-3350300/;./configure
195 - Step4:Compile makefile
177 +Step4:Compile makefile
196 196   sudo make
197 - Step5:Install makefile
179 +Step5:Install makefile
198 198   sudo make install
199 - Check:
200 - cd /usr/local/bin;ls -al --> Check to see if there is a file for sqlite3
201 - cd sqlite-autoconf-3350300/;./sqlite3 test.db --> Test whether the sqlite3 was installed successfully
202 - debug:
181 +Check:
182 + cd /usr/local/bin;ls -al                             ~-~->    Check to see if there is a file for sqlite3
183 + cd sqlite-autoconf-3350300/;./sqlite3 test.db        ~-~->    Test whether the sqlite3 was installed successfully
184 +debug:
203 203   If you get the imformation that is SQLite header and source version mismatch, when you execute./sqlite3 test.db.
204 204   Please execute the command /sbin/ldconfig.
205 205   After that execute the command ./sqlite3 test.db again.
188 +)))
189 +
190 +===== =====
191 +
192 +==== Step 2 :Install and run the RSS service ====
193 +
194 +1):install database for /var/rsshdb.sqlite3 and Server development port for 3721(The default is 3721)
195 +
196 +user must enter the root account and run the following commands
197 +
198 +(% class="box infomessage" %)
199 +(((
200 + $ ./create_sqlite3_db.sh
201 +$ ./rssh_serv -p  3721 2>&1 &
202 +$ ps -ef | grep rssh_serv check 3721 port
203 +)))
204 +
205 +[[~[~[image:https://wiki.dragino.com/images/thumb/c/cb/Intall_database_and_server_development_port.png/500px-Intall_database_and_server_development_port.png~|~|height="70" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Intall_database_and_server_development_port.png]]
206 +
207 +
208 +**Debug:**
209 +
210 +{{{ Check /var/rsshdb.sqlite3 --> ls /var/rsshdb.sqlite3
211 + Check ls /var/rsshdb.sqlite3 --> sudo chmod 777 rssh_serv
206 206  }}}
207 207  
214 +{{{ if fail to open dpvlry or to bind to it
215 + please kill rssh_serv,and run ./rssh_serv -p 3721 2>&1 & again
216 +}}}
208 208  
209 -
218 +===== =====
219 +
220 +===== =====
221 +
222 +==== Step 3 :Create a minimal SSH user (reverse SSH proxy for the gateway) ====
223 +
224 +(% class="box infomessage" %)
225 +(((
226 +1):sudo useradd XXXXX (custom user name)
227 +2):sudo passwd xxxxxx
228 +3):cp /bin/bash /bin/rbash
229 +4):sudo nano /etc/passwd ~-~-> Change /bin/bash to /bin/rbash
230 +5):sudo nano /home/xxxxx/.bashrc **empty it,and input export PATH=$HOME/bin**
231 +6):sudo nano /home/xxxxx/.bash_profile **empty it,and input export PATH=$HOME/bin**
232 +)))
233 +
234 +**Now user "XXXXX" is the user with limited permissions of the current system**
235 +
236 +
237 +==== Step4:Create an authorization key file ====
238 +
239 +1):sudo mkdir /home/xxxxx/.ssh; sudo touch /home/xxxxx/.ssh/authorizedkey
240 +
241 +**Debug:**
242 +
243 +{{{ check: sudo ls /home/xxxxx/.ssh/authorizedkey}}}
244 +
245 +
246 +
247 +=== How does user get the gateway to connect to a user's private server ===
248 +
249 +==== Step1: Come back the gateway web UI to get the gateway Public key ====
250 +
251 +1)in the system ~-~-> Remote Mgmt/span>
252 +
253 +[[~[~[image:https://wiki.dragino.com/images/thumb/8/8f/Remote_Mgmt.png/500px-Remote_Mgmt.png~|~|height="367" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Remote_Mgmt.png]]
254 +
255 +
256 +==== Step2: Authorization server ====
257 +
258 +Input the Gateway Publickey into user's private server "/home/XXXXX/.ssh/authorized_keys" file.
259 +
260 +[[~[~[image:https://wiki.dragino.com/images/thumb/4/49/Publickey.png/500px-Publickey.png~|~|height="81" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Publickey.png]]
261 +
262 +
263 +===== Step3: Connect private server =====
264 +
265 +This is same as connect Dragino Support Server but just change the server address to customize server address.
266 +
267 +[[~[~[image:https://wiki.dragino.com/images/thumb/0/04/Gateway_web_UI.png/500px-Gateway_web_UI.png~|~|height="389" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Gateway_web_UI.png]]
268 +
269 +
270 +
271 +===== Step 4 :Check Connection =====
272 +
273 +Rssh Host connection Ok
274 +
275 +[[~[~[image:https://wiki.dragino.com/images/thumb/6/6f/Rssh_Host_connection_Ok.png/500px-Rssh_Host_connection_Ok.png~|~|height="225" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Rssh_Host_connection_Ok.png]]
276 +
277 +
278 +User can use common ps | grep ssh to check it in the gateway.
279 +
280 +[[~[~[image:https://wiki.dragino.com/images/thumb/a/ad/Check_the_gateway.png/500px-Check_the_gateway.png~|~|height="47" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Check_the_gateway.png]]
281 +
282 +
283 +==== Step5:Access the gateway from customized server ====
284 +
285 +Check what gateways link to server.
286 +
287 +$ ./connect-gw.sh -l
288 +
289 +[[~[~[image:https://wiki.dragino.com/images/thumb/e/ee/Check_gateway_link_server.png/500px-Check_gateway_link_server.png~|~|height="157" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Check_gateway_link_server.png]]
290 +
291 +
292 +
293 +Access the gateway
294 +
295 +$ ./connect-gw.sh <GWID>
296 +
297 +[[~[~[image:https://wiki.dragino.com/images/thumb/b/b7/Reverse_ssh_access_the_gateway1.png/500px-Reverse_ssh_access_the_gateway1.png~|~|height="230" width="500"~]~]>>url:https://wiki.dragino.com/index.php/File:Reverse_ssh_access_the_gateway1.png]]
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0