วันนี้นั่งลง Grafana ใหม่ลงแล้วอยากจะใส่ DNS ให้ใช้ได้บน internet เพราะปกติใช้แต่ในกลุ่มของตัวเอง เลยมาจดขั้นตอนการ secure grafana ไว้หน่อย เดี๋ยวคราวหน้าจะลืม
step 1 - Certbot
sudo apt-get install cerbot
sudo certbot certonly -d www.domain.com
step 2 - permission
sudo groupadd sslcerts
user chown -R root:sslcerts /etc/letsencrypt/
sudo usermod -G sslcerts -a grafana
sudo chmod 755 /etc/letsencrypt/live
sudo chmod 755 /etc/letsencrypt/archive
step 3 - config
[server]
protocol = https
http_port = 443
domain = your.grafana.url
root_url = https://your.grafana.url
cert_file = /etc/letsencrypt/live/your.grafana.url/fullchain.pem
cert_key = /etc/letsencrypt/live/your.grafana.url/privkey.pem
step 4 - allow https port for grafana user to bind
sudo apt-get install libcap2-bin
sudo setcap 'cap_net_bind_service=+ep' /usr/sbin/grafana-server
sudo systemctl restart grafana-server.service
step 5 - checking logs
sudo tail -f /var/log/grafana/grafana.log