mirror of
https://github.com/syssecfsu/witty.git
synced 2024-11-25 13:29:26 +01:00
Update docs
This commit is contained in:
parent
f60f65ec24
commit
8f771fc8e0
@ -13,7 +13,7 @@
|
|||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
<style>.not-found{text-align:center}.not-found h1{margin:.25em 0 0;opacity:.25;font-size:40vmin}</style>
|
<style>.not-found{text-align:center}.not-found h1{margin:.25em 0 0;opacity:.25;font-size:40vmin}</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/categories/index.xml title="WiTTY: Web-based interactive TTY">
|
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/categories/index.xml title="WiTTY: Web-based interactive TTY">
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
@ -24,7 +24,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -33,21 +33,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
|
@ -12,12 +12,13 @@ The program has been tested on Linux, WSL2, Raspberry Pi 3B (Debian), and MacOSX
|
|||||||
Most icons were provided by fontawesome under this license.">
|
Most icons were provided by fontawesome under this license.">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/about/"><meta property="article:section" content="docs">
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/about/"><meta property="article:section" content="docs">
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T20:15:40-05:00">
|
||||||
<title>About | WiTTY: Web-based interactive TTY</title>
|
<title>About | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -27,7 +28,7 @@ Most icons were provided by fontawesome under this license.">
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -36,21 +37,12 @@ Most icons were provided by fontawesome under this license.">
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/ class=active>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/ class=active>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -84,6 +76,11 @@ window (xterm.js) and creates a websocket with the server, which relays the data
|
|||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/acce7b514f3f5fc0796bdbef318863e7707934fd title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/docs/index.xml title="WiTTY: Web-based interactive TTY">
|
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/docs/index.xml title="WiTTY: Web-based interactive TTY">
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
@ -24,7 +24,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -33,21 +33,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -71,6 +62,11 @@
|
|||||||
<article class=markdown></article>
|
<article class=markdown></article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/cff6bb968e067e1c82a63ab27fefb6b6346a819e title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -18,12 +18,13 @@ tar -xzvf witty_vx.x.x_xxx.tar.gz
|
|||||||
For example, use tar -xzvf witty_v1.">
|
For example, use tar -xzvf witty_v1.">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/install/"><meta property="article:section" content="docs">
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/install/"><meta property="article:section" content="docs">
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T20:15:40-05:00">
|
||||||
<title>Installation | WiTTY: Web-based interactive TTY</title>
|
<title>Installation | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -33,7 +34,7 @@ tar -xzvf witty_vx.x.x_xxx.tar.gz
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -42,21 +43,12 @@ tar -xzvf witty_vx.x.x_xxx.tar.gz
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/ class=active>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/ class=active>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -169,12 +161,17 @@ Example Use Case
|
|||||||
<script>mermaid.initialize({flowchart:{useMaxWidth:!0},theme:"default"})</script>
|
<script>mermaid.initialize({flowchart:{useMaxWidth:!0},theme:"default"})</script>
|
||||||
<p class=mermaid>
|
<p class=mermaid>
|
||||||
graph LR
|
graph LR
|
||||||
A[user on a phone] -- browser --> B[RPI: 192.168.1.1 <br> runs WiTTY]
|
A[user on a phone] -- browser --> B[RPI: 192.168.1.2 <br> runs WiTTY]
|
||||||
B -- ssh --> C[Windows: 192.168.1.2 <br> runs SSH server ]
|
B -- ssh --> C[Windows: 192.168.1.3 <br> runs SSH server ]
|
||||||
</p>
|
</p>
|
||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/acce7b514f3f5fc0796bdbef318863e7707934fd title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -12,12 +12,13 @@ Recorded sessions will be listed in the main window of WiTTY. You can click the
|
|||||||
WiTTY provides two sub-commands to merge and replay recorded sessions.">
|
WiTTY provides two sub-commands to merge and replay recorded sessions.">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/record/"><meta property="article:section" content="docs">
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/record/"><meta property="article:section" content="docs">
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T13:48:21-05:00">
|
||||||
<title>Record Sessions | WiTTY: Web-based interactive TTY</title>
|
<title>Record Sessions | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -27,7 +28,7 @@ WiTTY provides two sub-commands to merge and replay recorded sessions.">
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -36,21 +37,12 @@ WiTTY provides two sub-commands to merge and replay recorded sessions.">
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/ class=active>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/ class=active>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -96,6 +88,11 @@ All the recorded sessions are located under the <code>records</code> directory.
|
|||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/cff6bb968e067e1c82a63ab27fefb6b6346a819e title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -10,12 +10,13 @@
|
|||||||
Sub-command Description adduser Add/update an authenticated user with their password deluser Delete an authenticated user listusers List all the authenticated users replay Replay a recorded session (set your terminal to 120x36 first) merge Merge several recorded sessions into one session run Run a specified CLI program when user connects with browser Some sub-commands have options.">
|
Sub-command Description adduser Add/update an authenticated user with their password deluser Delete an authenticated user listusers List all the authenticated users replay Replay a recorded session (set your terminal to 120x36 first) merge Merge several recorded sessions into one session run Run a specified CLI program when user connects with browser Some sub-commands have options.">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/ui/"><meta property="article:section" content="docs">
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/ui/"><meta property="article:section" content="docs">
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T20:15:40-05:00">
|
||||||
<title>User Interface | WiTTY: Web-based interactive TTY</title>
|
<title>User Interface | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -25,7 +26,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -34,21 +35,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/ class=active>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/ class=active>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -146,11 +138,16 @@ Web Interface (witty run)
|
|||||||
<p><img src=https://syssecfsu.github.io/witty/static/img/interactive.png alt=img></p>
|
<p><img src=https://syssecfsu.github.io/witty/static/img/interactive.png alt=img></p>
|
||||||
<p>After a session has been recorded, the main window’s <code>Recorded Sessions</code> will list the records, as shown below. You can replay <img src=https://syssecfsu.github.io/witty/static/img/play.svg width=16px>, download <img src=https://syssecfsu.github.io/witty/static/img/download.svg width=16px>, rename <img src=https://syssecfsu.github.io/witty/static/img/edit.svg width=16px>, and delete <img src=https://syssecfsu.github.io/witty/static/img/delete.svg width=16px> recorded sessions.</p>
|
<p>After a session has been recorded, the main window’s <code>Recorded Sessions</code> will list the records, as shown below. You can replay <img src=https://syssecfsu.github.io/witty/static/img/play.svg width=16px>, download <img src=https://syssecfsu.github.io/witty/static/img/download.svg width=16px>, rename <img src=https://syssecfsu.github.io/witty/static/img/edit.svg width=16px>, and delete <img src=https://syssecfsu.github.io/witty/static/img/delete.svg width=16px> recorded sessions.</p>
|
||||||
<p><img src=https://syssecfsu.github.io/witty/static/img/main3.png alt=img></p>
|
<p><img src=https://syssecfsu.github.io/witty/static/img/main3.png alt=img></p>
|
||||||
<p>Here is a screencast where we replay a recorded session that updates the <a href=https://pi-hole.net/>pi-hole</a> system. You can fully control the playback using the progress bar. Clicking on the progress bar stops the replay and fast-forwards (or fast-backwards) the screen to that location. You can scroll the screen to view the history when replay is stopped or resume the replay.</p>
|
<p>Here is a screencast where we replay a recorded session that updates the <a href=https://pi-hole.net/>pi-hole</a> system. You can fully control the playback using the progress bar. Clicking on the progress bar stops the replay and fast-forwards (or fast-backwards) the screen to that location. You can scroll the screen to view the history when replay is stopped and resume the replay.</p>
|
||||||
<p><img src=https://syssecfsu.github.io/witty/static/img/replay.gif width=720px> </p>
|
<p><img src=https://syssecfsu.github.io/witty/static/img/replay.gif width=720px> </p>
|
||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/acce7b514f3f5fc0796bdbef318863e7707934fd title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -10,12 +10,13 @@ By default, the SEED VM uses only NAT-based network, which means that the VM can
|
|||||||
By default, the SEED VM uses only NAT-based network, which means that the VM can access the Internet but not the host machine (i.e., the machine that runs VirtualBox is called the host, and the VM is often called the guest.">
|
By default, the SEED VM uses only NAT-based network, which means that the VM can access the Internet but not the host machine (i.e., the machine that runs VirtualBox is called the host, and the VM is often called the guest.">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/vm/"><meta property="article:section" content="docs">
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/docs/vm/"><meta property="article:section" content="docs">
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T20:15:40-05:00">
|
||||||
<title>VirtualBox | WiTTY: Web-based interactive TTY</title>
|
<title>VirtualBox | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -25,7 +26,7 @@ By default, the SEED VM uses only NAT-based network, which means that the VM can
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -34,21 +35,12 @@ By default, the SEED VM uses only NAT-based network, which means that the VM can
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/ class=active>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/ class=active>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -79,13 +71,18 @@ Use WiTTY with SEED VM
|
|||||||
<img src=https://syssecfsu.github.io/witty/static/img/host.png alt=img></p>
|
<img src=https://syssecfsu.github.io/witty/static/img/host.png alt=img></p>
|
||||||
<p>Then, open the setting for the SEED VM, go to the Network setting, and enable the second adaptor, choose the <code>host-only</code> adaptor. Leave the first adaptor as is.</p>
|
<p>Then, open the setting for the SEED VM, go to the Network setting, and enable the second adaptor, choose the <code>host-only</code> adaptor. Leave the first adaptor as is.</p>
|
||||||
<p><img src=https://syssecfsu.github.io/witty/static/img/adapter2.png alt=img></p>
|
<p><img src=https://syssecfsu.github.io/witty/static/img/adapter2.png alt=img></p>
|
||||||
<p>After this, start the VM and list all the adaptors using the command <code>ifconfig</code> in a terminal. Look for the adaptor with an IP address starting with <code>192.168.</code>. You should be able to ssh into the guest using this IP address from the host.</p>
|
<p>After this, start the VM and list all the adaptors using the command <code>ifconfig</code> in a terminal. Look for the adaptor with an IP address starting with <code>192.168.</code>. You should be able to ssh into the guest using this IP address from the host. Follow the instruction <a href=https://syssecfsu.github.io/witty/docs/install/>here</a> to install and use WiTTY.</p>
|
||||||
<blockquote class="book-hint info">
|
<blockquote class="book-hint info">
|
||||||
If the host runs Windows, make sure virtualbox host adapter is not disabled in the Windows network settings if VirtualBox cannot find the host-only Ethernet adapter.
|
If the host runs Windows, make sure virtualbox host adapter is not disabled in the Windows network settings if VirtualBox cannot find the host-only Ethernet adapter.
|
||||||
</blockquote>
|
</blockquote>
|
||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/acce7b514f3f5fc0796bdbef318863e7707934fd title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
|||||||
'use strict';(function(){const g='/en.search-data.min.cf01fda4defd8544061a2e23337262b5b8a853e9fa51a19761487bcf875291ac.json',h=Object.assign({cache:!0},{doc:{id:'id',field:['title','content'],store:['title','href','section']}}),a=document.querySelector('#book-search-input'),b=document.querySelector('#book-search-results');if(!a)return;a.addEventListener('focus',c),a.addEventListener('keyup',d),document.addEventListener('keypress',e);function e(b){if(b.target.value!==void 0)return;if(a===document.activeElement)return;const c=String.fromCharCode(b.charCode);if(!f(c))return;a.focus(),b.preventDefault()}function f(b){const c=a.getAttribute('data-hotkeys')||'';return c.indexOf(b)>=0}function c(){a.removeEventListener('focus',c),a.required=!0,fetch(g).then(a=>a.json()).then(a=>{window.bookSearchIndex=FlexSearch.create('balance',h),window.bookSearchIndex.add(a)}).then(()=>a.required=!1).then(d)}function d(){while(b.firstChild)b.removeChild(b.firstChild);if(!a.value)return;const c=window.bookSearchIndex.search(a.value,10);c.forEach(function(a){const c=i('<li><a href></a><small></small></li>'),d=c.querySelector('a'),e=c.querySelector('small');d.href=a.href,d.textContent=a.title,e.textContent=a.section,b.appendChild(c)})}function i(b){const a=document.createElement('div');return a.innerHTML=b,a.firstChild}})()
|
'use strict';(function(){const g='/en.search-data.min.3fdbc2f09c3f796e7eeb937af60ce50fb50da8cd74d7080f3079316ffa006c1b.json',h=Object.assign({cache:!0},{doc:{id:'id',field:['title','content'],store:['title','href','section']}}),a=document.querySelector('#book-search-input'),b=document.querySelector('#book-search-results');if(!a)return;a.addEventListener('focus',c),a.addEventListener('keyup',d),document.addEventListener('keypress',e);function e(b){if(b.target.value!==void 0)return;if(a===document.activeElement)return;const c=String.fromCharCode(b.charCode);if(!f(c))return;a.focus(),b.preventDefault()}function f(b){const c=a.getAttribute('data-hotkeys')||'';return c.indexOf(b)>=0}function c(){a.removeEventListener('focus',c),a.required=!0,fetch(g).then(a=>a.json()).then(a=>{window.bookSearchIndex=FlexSearch.create('balance',h),window.bookSearchIndex.add(a)}).then(()=>a.required=!1).then(d)}function d(){while(b.firstChild)b.removeChild(b.firstChild);if(!a.value)return;const c=window.bookSearchIndex.search(a.value,10);c.forEach(function(a){const c=i('<li><a href></a><small></small></li>'),d=c.querySelector('a'),e=c.querySelector('small');d.href=a.href,d.textContent=a.title,e.textContent=a.section,b.appendChild(c)})}function i(b){const a=document.createElement('div');return a.innerHTML=b,a.firstChild}})()
|
@ -15,7 +15,7 @@
|
|||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/index.xml title="WiTTY: Web-based interactive TTY">
|
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/index.xml title="WiTTY: Web-based interactive TTY">
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -35,21 +35,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -74,7 +65,7 @@
|
|||||||
Introduction
|
Introduction
|
||||||
<a class=anchor href=#introduction>#</a>
|
<a class=anchor href=#introduction>#</a>
|
||||||
</h1>
|
</h1>
|
||||||
<p>WiTTY is a cross-platform, open-source, web-based terminal emulator. It exports the terminal interface on the server (i.e., where WiTTY runs) to the browser. Simply run WiTTY on a computer and give it the command to execute when users connect via the browser. WiTTY has the following features that distinguish itself from other similar tools:</p>
|
<p><a href=https://github.com/syssecfsu/witty>WiTTY</a> is a cross-platform, open-source, web-based terminal emulator. It exports the terminal interface on the server (i.e., where WiTTY runs) to the browser. Simply run WiTTY on a computer and give it the command to execute when users connect via the browser. WiTTY has the following features that distinguish itself from other similar tools:</p>
|
||||||
<ol>
|
<ol>
|
||||||
<li>
|
<li>
|
||||||
<p>WiTTY allows users to <strong>easily record, replay, and share console sessions</strong> with just a few clicks.</p>
|
<p>WiTTY allows users to <strong>easily record, replay, and share console sessions</strong> with just a few clicks.</p>
|
||||||
@ -99,6 +90,11 @@ Instructors can also record their demos in WiTTY and send them to students. Stud
|
|||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/cff6bb968e067e1c82a63ab27fefb6b6346a819e title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -9,4 +9,4 @@ Recorded sessions will be listed in the main window of WiTTY. You can click the
|
|||||||
WiTTY provides two sub-commands to merge and replay recorded sessions.</description></item><item><title>VirtualBox</title><link>https://syssecfsu.github.io/witty/docs/vm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/docs/vm/</guid><description>Use WiTTY with SEED VM # The SEED labs provides a number of security hands-on labs. It is a popular security lab course taught at many universities. The SEED labs use VirtualBox to run its VMs (because VirtualBox is cross-platform.)
|
WiTTY provides two sub-commands to merge and replay recorded sessions.</description></item><item><title>VirtualBox</title><link>https://syssecfsu.github.io/witty/docs/vm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/docs/vm/</guid><description>Use WiTTY with SEED VM # The SEED labs provides a number of security hands-on labs. It is a popular security lab course taught at many universities. The SEED labs use VirtualBox to run its VMs (because VirtualBox is cross-platform.)
|
||||||
By default, the SEED VM uses only NAT-based network, which means that the VM can access the Internet but not the host machine (i.e., the machine that runs VirtualBox is called the host, and the VM is often called the guest.</description></item><item><title>About</title><link>https://syssecfsu.github.io/witty/docs/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/docs/about/</guid><description>About WiTTY # WiTTY is written in the go programming language, using the Gin web framework, gorilla/websocket, pty, and the wonderful xterm.js! The workflow is simple, the client initiates a terminal window (xterm.js) and creates a websocket with the server, which relays the data between pty and xterm.
|
By default, the SEED VM uses only NAT-based network, which means that the VM can access the Internet but not the host machine (i.e., the machine that runs VirtualBox is called the host, and the VM is often called the guest.</description></item><item><title>About</title><link>https://syssecfsu.github.io/witty/docs/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/docs/about/</guid><description>About WiTTY # WiTTY is written in the go programming language, using the Gin web framework, gorilla/websocket, pty, and the wonderful xterm.js! The workflow is simple, the client initiates a terminal window (xterm.js) and creates a websocket with the server, which relays the data between pty and xterm.
|
||||||
The program has been tested on Linux, WSL2, Raspberry Pi 3B (Debian), and MacOSX using Google Chrome, Firefox, and Safari.
|
The program has been tested on Linux, WSL2, Raspberry Pi 3B (Debian), and MacOSX using Google Chrome, Firefox, and Safari.
|
||||||
Most icons were provided by fontawesome under this license.</description></item><item><title/><link>https://syssecfsu.github.io/witty/menu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/menu/</guid><description> Manual Installation UI Record VM About</description></item></channel></rss>
|
Most icons were provided by fontawesome under this license.</description></item><item><title/><link>https://syssecfsu.github.io/witty/menu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://syssecfsu.github.io/witty/menu/</guid><description> Installation User Interface Record Sessions VirtualBox About</description></item></channel></rss>
|
@ -2,18 +2,19 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset=utf-8>
|
<meta charset=utf-8>
|
||||||
<meta name=viewport content="width=device-width,initial-scale=1">
|
<meta name=viewport content="width=device-width,initial-scale=1">
|
||||||
<meta name=description content=" Manual Installation UI Record VM About ">
|
<meta name=description content=" Installation User Interface Record Sessions VirtualBox About ">
|
||||||
<meta name=theme-color content="#FFFFFF">
|
<meta name=theme-color content="#FFFFFF">
|
||||||
<meta name=color-scheme content="light dark"><meta property="og:title" content>
|
<meta name=color-scheme content="light dark"><meta property="og:title" content>
|
||||||
<meta property="og:description" content=" Manual Installation UI Record VM About ">
|
<meta property="og:description" content=" Installation User Interface Record Sessions VirtualBox About ">
|
||||||
<meta property="og:type" content="article">
|
<meta property="og:type" content="article">
|
||||||
<meta property="og:url" content="https://syssecfsu.github.io/witty/menu/"><meta property="article:section" content>
|
<meta property="og:url" content="https://syssecfsu.github.io/witty/menu/"><meta property="article:section" content>
|
||||||
|
<meta property="article:modified_time" content="2022-02-06T13:48:21-05:00">
|
||||||
<title>Index | WiTTY: Web-based interactive TTY</title>
|
<title>Index | WiTTY: Web-based interactive TTY</title>
|
||||||
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
<link rel=manifest href=https://syssecfsu.github.io/witty/manifest.json>
|
||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
<input type=checkbox class="hidden toggle" id=menu-control>
|
<input type=checkbox class="hidden toggle" id=menu-control>
|
||||||
@ -23,7 +24,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -32,21 +33,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
@ -68,17 +60,21 @@
|
|||||||
</aside>
|
</aside>
|
||||||
</header>
|
</header>
|
||||||
<article class=markdown><ul>
|
<article class=markdown><ul>
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/>Manual</a></li>
|
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>UI</a></li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record</a></li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VM</a></li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
<br></li>
|
<br></li>
|
||||||
</ul>
|
</ul>
|
||||||
</article>
|
</article>
|
||||||
<footer class=book-footer>
|
<footer class=book-footer>
|
||||||
<div class="flex flex-wrap justify-between">
|
<div class="flex flex-wrap justify-between">
|
||||||
|
<div><a class="flex align-center" href=https://github.com/syssecfsu/witty-docs/commit/cff6bb968e067e1c82a63ab27fefb6b6346a819e title="Last modified by Zhi Wang | February 6, 2022" target=_blank rel=noopener>
|
||||||
|
<img src=https://syssecfsu.github.io/witty/svg/calendar.svg class=book-icon alt=Calendar>
|
||||||
|
<span>February 6, 2022</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
<script>(function(){function a(c){const a=window.getSelection(),b=document.createRange();b.selectNodeContents(c),a.removeAllRanges(),a.addRange(b)}document.querySelectorAll("pre code").forEach(b=>{b.addEventListener("click",function(c){a(b.parentElement),navigator.clipboard&&navigator.clipboard.writeText(b.parentElement.textContent)})})})()</script>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -1 +1 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://syssecfsu.github.io/witty/docs/install/</loc></url><url><loc>https://syssecfsu.github.io/witty/docs/</loc></url><url><loc>https://syssecfsu.github.io/witty/docs/ui/</loc></url><url><loc>https://syssecfsu.github.io/witty/docs/record/</loc></url><url><loc>https://syssecfsu.github.io/witty/docs/vm/</loc></url><url><loc>https://syssecfsu.github.io/witty/docs/about/</loc></url><url><loc>https://syssecfsu.github.io/witty/menu/</loc></url><url><loc>https://syssecfsu.github.io/witty/categories/</loc></url><url><loc>https://syssecfsu.github.io/witty/</loc></url><url><loc>https://syssecfsu.github.io/witty/tags/</loc></url></urlset>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://syssecfsu.github.io/witty/docs/install/</loc><lastmod>2022-02-06T20:15:40-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/docs/</loc><lastmod>2022-02-06T13:48:21-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/docs/ui/</loc><lastmod>2022-02-06T20:15:40-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/docs/record/</loc><lastmod>2022-02-06T13:48:21-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/docs/vm/</loc><lastmod>2022-02-06T20:15:40-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/docs/about/</loc><lastmod>2022-02-06T20:15:40-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/menu/</loc><lastmod>2022-02-06T13:48:21-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/categories/</loc></url><url><loc>https://syssecfsu.github.io/witty/</loc><lastmod>2022-02-06T13:48:21-05:00</lastmod></url><url><loc>https://syssecfsu.github.io/witty/tags/</loc></url></urlset>
|
@ -13,7 +13,7 @@
|
|||||||
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
<link rel=icon href=https://syssecfsu.github.io/witty/favicon.png type=image/x-icon>
|
||||||
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
<link rel=stylesheet href=https://syssecfsu.github.io/witty/book.min.97cfda4f5e3c9fa49a2bf8d401f4ddc0eec576c99cdcf6afbec19173200c37db.css integrity="sha256-l8/aT148n6SaK/jUAfTdwO7Fdsmc3PavvsGRcyAMN9s=" crossorigin=anonymous>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
<script defer src=https://syssecfsu.github.io/witty/flexsearch.min.js></script>
|
||||||
<script defer src=https://syssecfsu.github.io/witty/en.search.min.d94cd9e9271fd6c7ba798461e1fbda7c357c43fe43568c26463af5c34e1cc416.js integrity="sha256-2UzZ6Scf1se6eYRh4fvafDV8Q/5DVowmRjr1w04cxBY=" crossorigin=anonymous></script>
|
<script defer src=https://syssecfsu.github.io/witty/en.search.min.28bcb0d34997b542e09ca609614fe8df7743a461230c57511923615abac30b55.js integrity="sha256-KLyw00mXtULgnKYJYU/o33dDpGEjDFdRGSNhWrrDC1U=" crossorigin=anonymous></script>
|
||||||
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/tags/index.xml title="WiTTY: Web-based interactive TTY">
|
<link rel=alternate type=application/rss+xml href=https://syssecfsu.github.io/witty/tags/index.xml title="WiTTY: Web-based interactive TTY">
|
||||||
</head>
|
</head>
|
||||||
<body dir=ltr>
|
<body dir=ltr>
|
||||||
@ -24,7 +24,7 @@
|
|||||||
<div class=book-menu-content>
|
<div class=book-menu-content>
|
||||||
<nav>
|
<nav>
|
||||||
<h2 class=book-brand>
|
<h2 class=book-brand>
|
||||||
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><span>WiTTY: Web-based interactive TTY</span>
|
<a class="flex align-center" href=https://syssecfsu.github.io/witty/><img src=https://syssecfsu.github.io/witty/static/img/logo.svg alt=Logo><span>WiTTY: Web-based interactive TTY</span>
|
||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<div class=book-search>
|
<div class=book-search>
|
||||||
@ -33,21 +33,12 @@
|
|||||||
<ul id=book-search-results></ul>
|
<ul id=book-search-results></ul>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/install/>Installation</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a></li>
|
||||||
</li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a></li>
|
||||||
<li>
|
<li><a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a></li>
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/ui/>User Interface</a>
|
<li><a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
||||||
</li>
|
<br></li>
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/record/>Record Sessions</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/vm/>VirtualBox</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href=https://syssecfsu.github.io/witty/docs/about/>About</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
<script>(function(){var a=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(b){localStorage.setItem("menu.scrollTop",a.scrollTop)}),a.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
|
||||||
|
Loading…
Reference in New Issue
Block a user