restructure

This commit is contained in:
JMARyA 2024-01-17 09:00:45 +01:00
parent ef7661245b
commit 598a10bc28
Signed by: jmarya
GPG key ID: 901B2ADDF27C2263
182 changed files with 342 additions and 336 deletions

View file

@ -7,7 +7,7 @@ flatpak-id: com.bitwarden.desktop
# Bitwarden
Bitwarden is a selfhosted password manager (like [KeePassXC](../utilities/KeePassXC.md)).
Vaultwarden is a alternative Bitwarden Server implementation rewritten in [Rust](../../programming/languages/Rust.md). Beside providing the ability to store sensitive information and passwords, bitwarden can share files and secrets securely with Bitwarden Send.
Vaultwarden is a alternative Bitwarden Server implementation rewritten in [Rust](../../dev/programming/languages/Rust.md). Beside providing the ability to store sensitive information and passwords, bitwarden can share files and secrets securely with Bitwarden Send.
![Screenshot][Screenshot]

View file

@ -4,4 +4,4 @@ website: https://frigate.video/
---
# Frigate
#wip #🐇 #notnow
#wip #🐇

View file

@ -17,7 +17,7 @@ The Gitea server can be configured with the `app.ini` file.
For a list of configuration options go [here](https://docs.gitea.com/administration/config-cheat-sheet).
## Gitea Actions
Gitea Actions are available as a built-in CI/CD solution. It works just like [GitHub Actions](../development/GitHub%20Actions.md). You put your actions into `.gitea/workflows` inside your repository.
Gitea Actions are available as a built-in CI/CD solution. It works just like [GitHub Actions](../../dev/GitHub%20Actions.md). You put your actions into `.gitea/workflows` inside your repository.
Just like other CI/CD solutions, Gitea doesn't run the jobs itself, but delegates the jobs to runners. The runner of Gitea Actions is called [act runner](https://gitea.com/gitea/act_runner), it is a standalone program and also written in Go. It is based on a [fork](https://gitea.com/gitea/act) of [nektos/act](http://github.com/nektos/act).
@ -108,7 +108,7 @@ DELETE https://gitea.example.com/api/packages/{owner}/generic/{package_name}/{pa
```
### Alpine Packages
To work with the Alpine registry, you need to use a [HTTP](../../internet/HTTP.md) client like [curl](../cli/curl.md) to upload and a package manager like apk to consume packages.
To work with the Alpine registry, you need to use a [HTTP](../../internet/HTTP.md) client like [curl](../cli/network/curl.md) to upload and a package manager like apk to consume packages.
To register the Alpine registry add the url to the list of known apk sources (`/etc/apk/repositories`):
```
@ -120,7 +120,7 @@ If the registry is private, provide credentials in the url. You can use a passwo
https://{username}:{your_password_or_token}@gitea.example.com/api/packages/{owner}/alpine/<branch>/<repository>
```
The Alpine registry files are signed with a [RSA](../../Cryptography/RSA.md) key which must be known to apk. Download the public key and store it in `/etc/apk/keys/`:
The Alpine registry files are signed with a [RSA](../../cryptography/RSA.md) key which must be known to apk. Download the public key and store it in `/etc/apk/keys/`:
```shell
curl -JO https://gitea.example.com/api/packages/{owner}/alpine/key
```

View file

@ -4,7 +4,7 @@ website: https://guacamole.apache.org
---
# Guacamole
Apache Guacamole is an open-source remote desktop gateway that provides access to desktop environments and server sessions through a web browser. It supports a variety of protocols such as VNC, RDP, [SSH](../SSH.md), and Telnet, allowing users to connect to remote systems with ease.
Apache Guacamole is an open-source remote desktop gateway that provides access to desktop environments and server sessions through a web browser. It supports a variety of protocols such as VNC, RDP, [SSH](../network/SSH.md), and Telnet, allowing users to connect to remote systems with ease.
![Screenshot][Screenshot]

View file

@ -4,7 +4,7 @@ os: web
website: https://ipfs.io
---
# IPFS
IPFS, or the InterPlanetary File System, is a peer-to-peer distributed file system designed to connect all computing devices with the same system of files. It works similiarly to [Torrents](../../tools/BitTorrent.md).
IPFS, or the InterPlanetary File System, is a peer-to-peer distributed file system designed to connect all computing devices with the same system of files. It works similiarly to [Torrents](../../internet/BitTorrent.md).
## Key Concepts
### 1. **Decentralization:**

View file

@ -4,7 +4,7 @@ os: web
website: https://radicale.org/v3.html
---
# Radicale
Radicale is a [WebDAV](../../tools/WebDAV.md) Server for CalDAV and CardDAV.
Radicale is a [WebDAV](../../internet/WebDAV.md) Server for CalDAV and CardDAV.
## Install
Based on [this repo](https://github.com/fphammerle/docker-radicale)

View file

@ -0,0 +1,216 @@
---
obj: application
website: https://goteleport.com
repo: https://github.com/gravitational/teleport
---
# Teleport
Teleport provides connectivity, authentication, access controls and audit for infrastructure.
It includes an identity-aware access proxy, a CA that issues short-lived certificates, a unified access control system and a tunneling system to access resources behind the firewall.
Teleport understands the [SSH](../network/SSH.md), HTTPS, RDP, Kubernetes API, MySQL, [MongoDB](development/MongoDB.md) and PostgreSQL wire protocols, plus many others. It can integrate with Single Sign-On providers and enables you to apply access policies using infrastructure-as-code and GitOps tools.
## Setup
You need a [domain](../../internet/Domain.md) pointing at your teleport proxy instance.
Docker-Compose:
```yml
version: '3'
services:
teleport:
image: public.ecr.aws/gravitational/teleport:14
restart: unless-stopped
hostname: <yourdomain.com>
ports:
- "3080:3080" # Web UI
- "3022:3022" # SSH
- "8443:8443" # HTTPS
volumes:
- ./config/teleport.yaml:/etc/teleport/teleport.yaml
- ./data:/var/lib/teleport
```
teleport.yml:
```yml
version: v3
teleport:
nodename: <yourdomain.com>
data_dir: /var/lib/teleport
log:
output: stderr
severity: INFO
format:
output: text
ca_pin: ""
diag_addr: ""
auth_service:
enabled: "yes"
listen_addr: 0.0.0.0:3025
proxy_listener_mode: multiplex
authentication:
type: local
second_factor: true
webauthn:
rp_id: <yourdomain.com>
connector_name: passwordless
ssh_service:
enabled: "no"
proxy_service:
enabled: "yes"
public_addr: <yourdomain.com>:443
https_keypairs: []
https_keypairs_reload_interval: 0s
acme: {}
```
## [SSH](../network/SSH.md) Agent Setup
1. Install teleport on your host:
```shell
curl https://goteleport.com/static/install.sh | bash -s 14.2.0
```
2. On your teleport proxy, create a join token:
```shell
tctl tokens add --type=node --format=text > token.file
```
3. Join the server to the cluster:
```shell
sudo teleport node configure \
--output=file:///etc/teleport.yaml \
--token=/path/to/token.file \
--proxy=tele.example.com:443
```
4. Enable Teleport Service
```shell
[Unit]
Description=Teleport Service
After=network.target
[Service]
Type=simple
Restart=on-failure
EnvironmentFile=-/etc/default/teleport
ExecStart=/usr/local/bin/teleport start --config /etc/teleport.yaml --pid-file=/run/teleport.pid
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/run/teleport.pid
LimitNOFILE=524288
[Install]
WantedBy=multi-user.target
```
## `tctl`
Admin tool for the Teleport Access Platform
Usage: `tctl [<flags>] <command> [<args> ...]`
### Commands
#### users add
Generate a user invitation token.
Usage: `tctl users add --roles=ROLES [<flags>] <account>`
##### Options
| Option | Description |
| -------- | ------------------------------------------- |
| --logins | List of allowed SSH logins for the new user |
#### users update
Update user account.
Usage: `tctl users update [<flags>] <account>`
##### Options
| Option | Description |
| -------------- | ---------------------------------------------------------------- |
| `--set-roles` | List of roles for the user to assume, replaces current roles |
| `--set-logins` | List of allowed SSH logins for the user, replaces current logins |
#### users ls
Lists all user accounts.
Usage: `tctl users ls`
#### users rm
Deletes user accounts.
Usage: `tctl users rm <logins>`
#### users reset
Reset user password and generate a new token.
Usage: `tctl users reset <account>`
#### nodes add
Generate a node invitation token.
Usage: `tctl nodes add [<flags>]`
##### Options
| Option | Description |
| --------- | -------------------------------------------------------- |
| `--roles` | Comma-separated list of roles for the new node to assume |
| `--ttl` | Time to live for a generated token |
#### nodes ls
List all active SSH nodes within the cluster.
Usage: `tctl nodes ls [<flags>] [<labels>]`
#### tokens add
Create a invitation token.
Usage: `tctl tokens add --type=TYPE [<flags>]`
##### Options
| Option | Description |
| ---------- | ------------------------------------------------------------ |
| `--type` | Type(s) of token to add, e.g. `--type=node,app,db,proxy,etc` |
| `--labels` | Set token labels, e.g. `env=prod,region=us-west` |
| `--ttl` | Set expiration time for token, default is 30 minutes |
| `--format` | Output format, 'text', 'json', or 'yaml' |
#### tokens rm
Delete/revoke an invitation token.
Usage: `tctl tokens rm [<token>]`
#### tokens ls
List node and user invitation tokens.
Usage: `tctl tokens ls`
#### status
Report cluster status.
Usage: `tctl status`
## `tsh`
Teleport Command Line client for interacting with your infrastructure.
Usage: `tsh [options...] <command> [<args> ...]`
### Options
| Option | Description |
| --------- | --------------------------------------------- |
| `--proxy` | Teleport proxy address |
| `--user` | Teleport user, defaults to current local user |
### Commands
#### ssh
Run shell or execute a command on a remote SSH node.
Usage: `tsh ssh [<flags>] <[user@]host> [<command>...]`
##### scp
Transfer files to a remote SSH node.
Usage: `tsh scp [<flags>] <from, to>...`
##### ls
List remote SSH nodes.
Usage: `tsh ls [<flags>] [<labels>]`
##### login
Log in to a cluster and retrieve the session certificate.
Usage: `tsh login [<flags>] [<cluster>]`
##### logout
Delete a cluster certificate.
Usage: `tsh logout`
##### status
Display the list of proxy servers and retrieved certificates.
Usage: `tsh status`
##### config
Print [SSH](../network/SSH.md) config details.
This allows you to use regular `ssh` command to connect to teleport servers.
```shell
tsh config >> ~/.ssh/config
```

View file

@ -4,7 +4,7 @@ repo: https://github.com/sigoden/dufs
---
# dufs
Dufs is a distinctive utility file server that supports static serving, uploading, searching, accessing control, [webdav](../../tools/WebDAV.md).
Dufs is a distinctive utility file server that supports static serving, uploading, searching, accessing control, [webdav](../../internet/WebDAV.md).
![Screenshot][Screenshot]
@ -16,8 +16,8 @@ Dufs is a distinctive utility file server that supports static serving, uploadin
- Partial responses (Parallel/Resume download)
- Access control
- Support https
- Support [webdav](../../tools/WebDAV.md)
- Easy to use with [curl](../cli/curl.md)
- Support [webdav](../../internet/WebDAV.md)
- Easy to use with [curl](../cli/network/curl.md)
## Usage
Usage: `dufs [OPTIONS] [serve-path]`

File diff suppressed because one or more lines are too long