Как вы защищаете панель инструментов сервера Deployd?
Как вы защищаете развернутую серверную панель? в идеале с аутентификацией.
3 ответа
Из документов Deployd:
Чтобы настроить панель мониторинга на своем сервере, введите
dpd keygen
в командной строке вашего сервера, чтобы создать ключ удаленного доступа. Типdpd showkey
получить ключ; Вы должны хранить это где-нибудь в безопасности.Затем вы можете перейти к
/dashboard
маршрут на сервере и введите этот ключ, чтобы получить доступ.
Смотрите здесь: http://docs.deployd.com/docs/server/your-server.md#s-Dashboard%20Access-2728
Кстати, документация на docs.deployed.com содержит больше подробностей, чем документация на github.
Надеюсь это поможет.
- Изменить каталог (
cd
) в корень вашего проекта Deployd. - Бежать
dpd keygen
, - Бежать
dpd showkey
и сохранить ключ где-нибудь. - Перезапустите dpd с помощью
--environment production
опция, в противном случае не требуется ключ при доступе/dashboard
, - Перейти к вашему API
/dashboard
и вставьте ключ в диалог.
Кроме того, я ограничиваю его только пользователями ввода данных. Это не идеально (я также хочу удалить кнопку удаления ресурса), но здесь идет:
env.sh
# this makes deployd require key for /dashboard
export NODE_ENV=production
.production.patch (отключает события-конфиг-редакторы)
--- node_modules/deployd/lib/resources/dashboard/index.ejs 2016-11-21 16:10:05.406025488 +0100
+++ node_modules/deployd/lib/resources/dashboard/index.ejs.new 2016-11-21 16:09:51.009794524 +0100
@@ -65,7 +65,7 @@
<a href="#" class="options"><span class="caret"></span></a>
<% if (type && type.dashboardPages) { %>
<ul class="nav pages type-icons <%= isCurrent ? '' : 'hide' %>">
- <% type.dashboardPages.forEach(function(p) { %>
+ <% type.dashboardPages.forEach(function(p) { if( p.match(/Config|Events|Properties/) != null ) return %>
<li <%- isCurrent && (Context.page || '').toLowerCase() === p.toLowerCase() ? 'class=active' : ''%> ><a href="/dashboard/<%= resource.id %>/<%= p.toLowerCase() %>/"><i class="icon-white icon-custom <%= p.toLowerCase() %>"></i> <%= p %></a></li>
<% }); %>
</ul>
.git / hooks / post-merge (автоматически вызывается при git pull)
#!/bin/bash
# disallow users from changing resource schema's, event-code and config.json
patch -Np0 < .production.patch
[[ ! -n $NO_NPM ]] && npm update