Komunikasi jarak jauh dengan server rumah

8

Saya membuat mikro-server rumah (berdasarkan Raspberry Pi). Memiliki Internet dan berfungsi 24/7. Server membuat beberapa otomatisasi rumah, pemantauan, dan kontrol. Tidak memiliki alamat IP publik statis (ditugaskan melalui DHCP).

Saya memerlukan cara untuk berkomunikasi dari server dari jarak jauh: Saya ingin mengirim perintah pendek ke server dan terkadang mendapatkan balasan.

Apa cara terbaik untuk melakukannya? Saya tahu beberapa cara:

  1. Email . Saya dapat mendaftarkan alamat email dengan akses pop3 / smtp untuk server dan menggunakannya untuk komunikasi. Tetapi ada masalah: itu tidak instan, jadi sulit untuk melakukan transaksi instan, laporan kritis kepada saya, dll.

  2. SMS . Saya dapat menghubungkan modul GSM-ponsel atau GSM-lama ke server saya dan menggunakan SMS untuk komunikasi. Ini instan dan sepertinya baik-baik saja, tetapi saya tidak pernah bekerja dengan GSM dan tidak tahu semua masalah yang mungkin terjadi.

Tolong bantu saya dengan saran. Jika Anda sudah menyelesaikan masalah untuk server Anda sendiri, jelaskan saya, mohon komunikasinya.


sumber
Email, IM, Twitter, facebook, Telnet, SSH, HTTP, server LAMP (Linux, Apache, MySQL, PHP atau Perl), semuanya cukup instan. Surel seringkali sama, terutama jika Anda menggunakan perusahaan surel yang sama (seperti ucapkan gmail untuk pengiriman dan penerimaan). Tapi ini bukan pertanyaan Elektronik. Lihat Superuser atau Raspberry PI Stack Exchange.
cde
7
Anda dapat berlangganan layanan DNS dinamis (ada banyak, ada yang gratis) - Anda menjalankan aplikasi di server Anda yang memperbarui layanan DNS ketika alamat IP eksternal router berubah. Dengan begitu Anda selalu dapat menghubungi pi Raspberry internal Anda menggunakan nama tetap (mis. RossPi.dynamicdns.example.com). Anda juga harus mengatur port-forwarding (atau yang setara) pada router Anda untuk memungkinkan koneksi masuk dialihkan ke raspberry pi. Kemudian Anda dapat menggunakan web (HTTP) atau soket TCP dll.
RedGrittyBrick

Jawaban:

3

Buat akun di situs web server Dynamic DNS APA PUN. Saya menggunakan dnsdynamic.com sebagai contoh untuk kesederhanaan

Buka terminal di Raspberry Pi Anda dan instal layanan pembaruan:

sudo apt-get install ddclient

Anda dapat mengetik pengaturan selama wizard atau cukup tekan enter. Kami akan mengedit file konfigurasi dengan cara apa pun.

Edit file konfigurasi /etc/ddclient.conf dan ganti semua yang ada di dalamnya dengan ini:

#
# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf
daemon=60                          # check every 60 seconds
syslog=yes                         # log update msgs to syslog
mail=root                          # mail all msgs to root
mail-failure=root                  # mail failed update msgs to root
pid=/var/run/ddclient.pid          # record PID in file.
ssl=yes                            # use ssl-support.
use=web, web=myip.dnsdynamic.com   # get ip from server.
server=www.dnsdynamic.org          # default server
login=[LOGIN]                      # your login
password=[PASSWORD]                # your password
server=www.dnsdynamic.org,         \
protocol=dyndns2                   \
[DOMAIN]

Ganti [LOGIN] berikut, [KATA SANDI] dan [DOMAIN] dengan pengaturan yang Anda gunakan.

Simpan perubahan yang dibuat ke file konfigurasi, dan mulai ulang Raspberry Pi.

Ingatlah untuk mengkonfigurasi router Anda untuk meneruskan port yang diperlukan ke Raspberry Pi Anda.

  1. 21 - FTP
  2. 80 - Server web
  3. 443 - SSL

Piotr Kula
sumber
OP tidak bertanya bagaimana cara mengkomunikasikan raspberry pi lewat lemah. Jawaban ini menekankan pada mengaktifkan komunikasi melalui WAN. OP hanya ingin berkomunikasi dengan pi raspberry-nya dari jarak jauh (bisa dalam jaringan yang sama tetapi secara fisik jauh).
Chetan Bhargava
Ya. Saya mengerti maksud Anda. Tapi pasti jawaban pertama (setelah mencari di web) akan membuatnya sadar bahwa dia dapat menggunakan SSH jika berada di dalam jaringan. Jadi asumsi saya adalah bahwa dia perlu meletakkan ini di lokasi yang jauh (karena dia menetapkan itu terhubung ke internet 24/7) dan berkomunikasi dengannya "secara remote", bukan "Lokal" Area Jaringan. Sayangnya tidak ada umpan balik dari OP sehingga tidak jelas.
Piotr Kula
0

Opsi lain adalah mengatur front-end Anda di server web internet (dan / atau aplikasi pada perangkat seluler Anda) dan menggunakan antrian pesan untuk berkomunikasi di antara mereka semua.

Antrian pesan memungkinkan redundansi dan abstraksi antara front-end dan back-end

MQTT dirancang untuk tugas dan gratis

https://en.wikipedia.org/wiki/MQ_Telemetry_Transport

sakit punggung
sumber