I recently built a flask app that run on my raspberry pi. Then I turned it down. Why? In order to access the app from outside the home internet, I had to expose my pi to public. After only one day of exposure, my pi received several attack attempts and the flask app then always replied 301. Here are some attack logs:
126.96.36.199 - "GET / HTTP/1.1" 404 -
188.8.131.52 - "GET / HTTP/1.0" 404 -
184.108.40.206 - "GET / HTTP/1.0" 404 -
220.127.116.11 - code 400, message Bad HTTP/0.9 request type ('\x03\x00\x00/*à\x00\x00\x00\x00\x00Cookie:')
18.104.22.168 - "/*àCookie: mstshash=Administr" HTTPStatus.BAD_REQUEST -
22.214.171.124 - "GET http://www.baidu.com/ HTTP/1.1" 404 -
126.96.36.199 - "GET / HTTP/1.1" 404 -
To be more precise, the flask app was still running, but the home router seemed not forwarding the requests to my pi. Anyway, I have no idea of what have happened. I just shut the app down, flashed a fresh new image to my pi.
I want a way to communicate with my pi without exposing it. That is the motivation I start the project chapi, which means "chat with pi".