Увод
Предуслови
Ажурирајте систем
Припрема заштитног зида
Инсталирање Графане
Омогућавање ХТТПС сертификата за Графану (опционо)
Увод
Графана је софтвер отвореног кода који трансформише више фидова из система као што су Грапхите, Телеграф и ИнфлукДБ у прелепе метрике на централизованој контролној табли.
Овај водич ће покрити процес инсталирања Графана веб интерфејса.
Предуслови
- Инстанца сервера Убунту 16.04 ЛТС к64.
- Судо (или роот налог) усер .
- Опционо: ДНС име (за коришћење са Лет'с Енцрипт сертификатима)
Ажурирајте систем
Ажурирајте свој систем пре инсталирања Графане.
apt-get update && apt-get upgrade
Припрема заштитног зида
Прво да мало ојачамо слику. Хајде да такође проверимо да ли је ufwомогућена слика која је обезбеђена .
root@vultr:~# ufw status
Status: inactive
Подразумевано је онемогућено, тако да ћемо морати да додамо неколико правила:
- Правило 1: ссх: ТЦП порт 22
- Правило 2: хттп: ТЦП порт 3000 (подразумевани Графана порт)
Извршите следеће команде једну по једну.
ufw allow 22/tcp
ufw allow 3000/tcp
Омогућите услуге заштитног зида.
ufw enable
Заштитни зид ће затражити дијалог за прихватање промена. Само притисните Y.
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Инсталирање Графане
Подразумевано, Графана није у репозиторијуму. Додајте репо кључ и пакете.
curl https://packagecloud.io/gpg.key | sudo apt-key add -
Затим додајте "пацкагецлоуд" спремиште у своја спремишта.
add-apt-repository "deb https://packagecloud.io/grafana/stable/debian/ stretch main"
Ажурирајте aptда бисте преузели најновије информације из нашег недавно додатог "пацкагецлоуд" репо.
apt-get update
Сада можемо да инсталирамо Графану.
apt-get install grafana
Када се Графана инсталира, почните је са systemctl.
systemctl start grafana-server
Ово ће показати радну услугу Графана.
systemctl status grafana-server
Покрените услугу Графана при покретању.
systemctl enable grafana-server
Онемогућавање Графана регистрација и анонимног приступа
Изван кутије, Графана омогућава посетиоцима да креирају корисничке налоге и прегледају контролне табле без регистрације. То значи да излажемо Графану јавном интернету. Али не брините, хајде да пронађемо и онемогућимо ова подешавања.
Прво отворите Графанину конфигурациону датотеку.
nano /etc/grafana/grafana.ini
Пронађите allow_sign_upподешавања испод [users]наслова.
[users]
# disable user signup / registration
;allow_sign_up = true
Подразумевано је постављено на true, па га промените у falseи скините коментар са линије.
[users]
# disable user signup / registration
allow_sign_up = false
Затим проверите да ли је анонимни приступ онемогућен. Ово се може наћи у [auth.anonymous]подешавањима.
[auth.anonymous]
# enable anonymous access
;enabled = false
Промените је у falseи скините коментар са линије.
[auth.anonymous]
enabled = false
Изађите nanoи сачувајте датотеку.
Да бисте активирали промене, поново покрените Графану.
systemctl restart grafana-server
Сада проверите да ли све функционише тако што ћете проверити статус услуге Графана.
systemctl status grafana-server
Демон Графана слуша порт 3000. Да бисте посетили Графана контролну таблу, усмерите свој претраживач на http://192.168.0.1:3000(замените ову ИП-у са стварном ИП-ом сервера) и користите подразумеване акредитиве за пријаву у наставку.
Username: admin
Password: admin
Омогућавање ХТТПС сертификата за Графану (опционо)
Ово је опциони корак. Ако имамо конфигурисано ДНС име, можемо користити Лет'с HTTPSенцрипт да омогућимо нашу нову Графана инсталацију.
Инсталација и конфигурација Нгинк-а
Да бисмо то постигли, користићемо Нгинк, пошто овај софтвер може да користи Лет'с Енцрипт сертификате.
Почните тако што ћете инсталирати Нгинк.
apt-get install nginx
Једном инсталиран, уредите подразумевану конфигурацију.
nano /etc/nginx/sites-available/default
Замените подразумевану конфигурацију следећом конфигурацијом.
server {
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Ово ће креирати прокси за веб локацију која ради на порту 80. Поново покрените Нгинк и омогућите га при покретању.
systemctl restart nginx
systemctl enable nginx
Уверите се да све ради.
systemctl status nginx
Онемогућите стари Графана порт 3000и дозволите саобраћај на порту 80.
ufw allow 80/tcp
ufw delete allow 3000/tcp
Инсталирање Лет'с Енцрипт
Пре него што будемо могли да користимо цертбот, морамо да додамо исправан ППА у систем који садржи наше цертбот пакете.
add-apt-repository ppa:certbot/certbot
Притисните ENTERда бисте прихватили промену конфигурације.
Ажурирајте aptда бисте прикупили нове пакете.
apt-get update
Затим инсталирајте Нгинк модул за доделу сертификата.
apt-get -y install python-certbot-nginx
Конфигурисање сертификата
Конфигуришите заштитни зид да бисте омогућили HTTPSпролаз кроз заштитни зид.
ufw allow 443/tcp
Пре него што можемо да затражимо нове сертификате, потребно нам је ДНС име.
nano /etc/nginx/sites-available/default
Додајте следећу server_nameпоставку. Ово је наше ДНС име.
server_name grafana.example.com;
Промените конфигурацију тако да одражава ово ново подешавање.
server {
server_name grafana.example.com;
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Уверите се да нисмо направили ниједну грешку и поново покрените Нгинк.
nginx -t
systemctl restart nginx
Сада затражите сертификат са цертботом.
certbot --nginx -d grafana.example.com
Наведите своју е-пошту и прихватите питања која поставља инсталатер. Можете безбедно да кажете „Не“ дељењу своје е-поште. Цертбот ће аутоматски питати шта да ради са HTTPS. Користићемо опцију 2: преусмеравање на ХТТПС.
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Аутоматско обнављање сертификата
Хајде да шифрујемо сертификате захтевају обнову. Срећом, можемо креирати црон посао за ово. Започните уређивањем цронтаб-а.
crontab -e
Додајте следећи ред.
05 2 * * * /usr/bin/certbot renew --quiet
Ово ће у 2:05 ујутру проверити да ли неки сертификати захтевају обнову и обновиће их.
Графана ће ићи даље HTTPS. Последња ствар је да промените администраторску лозинку. Посетите своју инсталацију на https://grafana.example.net. Подразумевано, акредитиви за пријављивање су 'админ/админ'.
Да бисте променили корисничко име администратора, кликните на икону зупчаника са леве стране, идите на „Конфигурација“, затим „Администратор сервера“ и кликните на корисничко име администратора.