Update : syarat untuk authorize key nya adalah menggunakan username yang sama dengan username di NS nya
Pertama generate ssh key dari server agar bisa bypass login ke ns dengan perintah$ ssh-keygen -t rsa
enter terus saja dan kosongi passphrase sampai proses selesai
untuk mendownload key nya bisa lewat login sftp default ada di /home/user/.ssh/ dengan nama id_rsa dan id_rsa.pub
Kemudian masukkan public ssh ke tiap NS nya dengan cara :
Login ke NS nya, masuk ke menu service, kemudian klik edit pada Authorized Keys SSH Server
Pilih Public key yg sudah digenerate tadi, kemudian klik import lalu save kemudian close
Klik change kemudian klik apply
jangan lupa lakukan percobaan akses ssh ke NS yang sudah di import ssh key tadi agar tahu apakah sudah bisa masuk atau belum, serta agar server linux kita menyimpan tanda perkenalan dengan si NS$ ssh 10.0.0.1 -l admin -p 22
baru kemudian buat file shell di server linux yang nanti akan dieksekusi dengan cron$ cd ~
kemudian isikan pada file reboot_ap dengan :
$ nano reboot_ap#ssh [ip-address] -l [username] -p [port] reboot
isikan sesuai login ssh controllernya
# misal :
#ssh 10.0.0.1 -l admin -p 22 reboot
save lalu tambahkan hak akses execute$ chmod +x reboot_ap
buat cron agar script untuk reboot tersebut berjalan setiap waktu$ crontab -e
atur sesuai kebutuhan, untuk melihat panduan penjadwalan cron bisa dilihat di https://crontab.guru/
contoh mengisi pada crontab :$ 0 2 * * * /home/user/reboot_ap
maka cron akan mengeksekusi file reboot_ap dan cron berjalan sesuai waktu yang ditentukan (pada contoh di atas berjalan setiap jam 2 pagi), tapi sebelum itu alangkah baiknya jika memeriksa tanggal pada server kita agar sesuai$ date
Jika tanggal kurang pas / tidak sesuai dengan zona waktu, kita perlu mengecek ketersediaan timezone yang ada di server serta mengaturnya dengan :$ ls /usr/share/zoneinfo
$ sudo timedatectl set-timezone Asia/Jakarta
Jika tanggal telah sesuai maka cron akan berjalan sesuai dengan yang diharapkan
Untuk tambahan kita bisa menambahkan notif di telegram dengan membuat bot di Telegram, untuk tutorialnya bisa lihat disini
dan agar bot telegram dapat memberi notif kepada Anda, maka bot tersebut perlu mengirim ke id telegram ataupun grup telegram anda sebagai parameter chatId, untuk cara mengecek id / grup id telegram Anda dapat dilihat disini
selanjutnya kita buka lagi file reboot_ap nya$ cd ~
$ nano reboot_ap
Kemudian tambahkan script berikut di line paling bawahBOTTOKEN="your_token_bot"
atur BOTTOKEN dan CHATID sesuai dengan token bot anda dan id / grup id telegram anda, serta atur TEXT sesuai keinginan Anda
CHATID="your_chat_id"
TEXT="Test Cron untuk Reboot NS"
wget -q -O /dev/null -T 5 "https://api.telegram.org/bot$BOTTOKEN/sendMessage?chat_id=$CHATID&parse_mode=markdown&text=$TEXT"
dengan begitu bot telegram akan mengirimkan notif setiap file cron tersebut berhasil dieksekusi
sekian share tentang cara auto reboot NS ubiquiti kali ini. Terima kasih