Страница сети была переведена на единое меню
Этот коммит содержится в:
@@ -7,15 +7,17 @@
|
|||||||
<link rel="stylesheet" href="/static/app.css">
|
<link rel="stylesheet" href="/static/app.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="shell">
|
<div class="v-layout">
|
||||||
<header class="topbar">
|
{% include "_sidebar.html" %}
|
||||||
|
|
||||||
|
<main class="v-main">
|
||||||
|
<header class="v-topbar">
|
||||||
<div>
|
<div>
|
||||||
<div class="brand">Сеть</div>
|
<div class="v-title">Сеть</div>
|
||||||
<div class="muted">NAT Router для VPS, проброс одиночных портов и диапазонов к VM</div>
|
<div class="v-subtitle">NAT Router для VPS, проброс одиночных портов и диапазонов к VM</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="top-meta">
|
<div class="top-meta">
|
||||||
<span>user: {{ user }}</span>
|
<span>user: {{ user }}</span>
|
||||||
<a class="link-pill accent" href="/vm/create">+ Создать VM</a>
|
|
||||||
<a class="link-pill" href="/">← Дашборд</a>
|
<a class="link-pill" href="/">← Дашборд</a>
|
||||||
<form method="post" action="/logout" class="logout-form"><button class="ghost">Выйти</button></form>
|
<form method="post" action="/logout" class="logout-form"><button class="ghost">Выйти</button></form>
|
||||||
</div>
|
</div>
|
||||||
@@ -83,12 +85,10 @@
|
|||||||
<span>Описание</span>
|
<span>Описание</span>
|
||||||
<input type="text" name="note" placeholder="Например: сайт, SSH, SIP, RTP MikoPBX">
|
<input type="text" name="note" placeholder="Например: сайт, SSH, SIP, RTP MikoPBX">
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<label>
|
<label>
|
||||||
<span>Внешний порт или диапазон</span>
|
<span>Внешний порт или диапазон</span>
|
||||||
<input type="text" name="external_port" pattern="[0-9]{1,5}([:-][0-9]{1,5})?" placeholder="80, 443, 2222 или 10000-20000" required>
|
<input type="text" name="external_port" pattern="[0-9]{1,5}([:-][0-9]{1,5})?" placeholder="80, 443, 2222 или 10000-20000" required>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<label>
|
<label>
|
||||||
<span>Машина</span>
|
<span>Машина</span>
|
||||||
<select name="vm_name" required>
|
<select name="vm_name" required>
|
||||||
@@ -97,9 +97,7 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<input type="hidden" name="guest_ip" value="auto">
|
<input type="hidden" name="guest_ip" value="auto">
|
||||||
|
|
||||||
<label>
|
<label>
|
||||||
<span>Внутренний порт или диапазон</span>
|
<span>Внутренний порт или диапазон</span>
|
||||||
<input type="text" name="guest_port" list="standard-ports" pattern="[0-9]{1,5}([:-][0-9]{1,5})?" placeholder="Выбери стандартный или введи 10000-20000" required>
|
<input type="text" name="guest_port" list="standard-ports" pattern="[0-9]{1,5}([:-][0-9]{1,5})?" placeholder="Выбери стандартный или введи 10000-20000" required>
|
||||||
@@ -136,7 +134,6 @@
|
|||||||
<option value="10000-20000" label="RTP / VoIP media range"></option>
|
<option value="10000-20000" label="RTP / VoIP media range"></option>
|
||||||
</datalist>
|
</datalist>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<label>
|
<label>
|
||||||
<span>Протокол</span>
|
<span>Протокол</span>
|
||||||
<select name="protocol">
|
<select name="protocol">
|
||||||
@@ -144,11 +141,7 @@
|
|||||||
<option value="udp">udp</option>
|
<option value="udp">udp</option>
|
||||||
</select>
|
</select>
|
||||||
</label>
|
</label>
|
||||||
|
<div class="notice">Можно указать одиночный порт или диапазон. Для VoIP/RTP обычно: внешний 10000-20000 → внутренний 10000-20000, протокол udp. Длины диапазонов должны совпадать.</div>
|
||||||
<div class="notice">
|
|
||||||
Можно указать одиночный порт или диапазон. Для VoIP/RTP обычно: внешний 10000-20000 → внутренний 10000-20000, протокол udp. Длины диапазонов должны совпадать.
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button class="primary wide">Добавить и применить</button>
|
<button class="primary wide">Добавить и применить</button>
|
||||||
</form>
|
</form>
|
||||||
</article>
|
</article>
|
||||||
@@ -214,14 +207,8 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div class="grid two top-space">
|
<div class="grid two top-space">
|
||||||
<article>
|
<article><div class="label">Проверить входящий трафик</div><pre>{{ diagnostics.commands.watch_external }}</pre></article>
|
||||||
<div class="label">Проверить входящий трафик</div>
|
<article><div class="label">Проверить трафик к VM</div><pre>{{ diagnostics.commands.watch_internal }}</pre></article>
|
||||||
<pre>{{ diagnostics.commands.watch_external }}</pre>
|
|
||||||
</article>
|
|
||||||
<article>
|
|
||||||
<div class="label">Проверить трафик к VM</div>
|
|
||||||
<pre>{{ diagnostics.commands.watch_internal }}</pre>
|
|
||||||
</article>
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -255,9 +242,7 @@
|
|||||||
<input type="hidden" name="protocol" value="{{ item.protocol }}">
|
<input type="hidden" name="protocol" value="{{ item.protocol }}">
|
||||||
<button>Диагностика</button>
|
<button>Диагностика</button>
|
||||||
</form>
|
</form>
|
||||||
<form method="post" action="/network/forward/{{ item.id }}/delete">
|
<form method="post" action="/network/forward/{{ item.id }}/delete"><button class="danger">Удалить</button></form>
|
||||||
<button class="danger">Удалить</button>
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -275,6 +260,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<pre>{{ ctx.nft_rules }}</pre>
|
<pre>{{ ctx.nft_rules }}</pre>
|
||||||
</section>
|
</section>
|
||||||
|
</main>
|
||||||
</div>
|
</div>
|
||||||
|
<script src="/static/panel.js" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user