restructure
This commit is contained in:
parent
ef7661245b
commit
598a10bc28
182 changed files with 342 additions and 336 deletions
|
@ -1,5 +1,5 @@
|
|||
# community.mongodb.mongodb
|
||||
The [MongoDB](../../../applications/MongoDB.md) lookup runs the *find()* command on a given *collection* on a given *MongoDB* server.
|
||||
The [MongoDB](../../../applications/development/MongoDB.md) lookup runs the *find()* command on a given *collection* on a given *MongoDB* server.
|
||||
|
||||
The result is a list of jsons, so slightly different from what PyMongo returns. In particular, *timestamps* are converted to epoch integers.
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ This module will insert/update/remove a block of multi-line text surrounded by c
|
|||
## Parameter
|
||||
| Parameter | Type | Default | Description |
|
||||
| ---------------- | --------------- | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **backup** | boolean | false | Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly. |
|
||||
| **block** | string | "" | The text to insert inside the marker lines. If it is missing or an empty string, the block will be removed as if state were specified to absent. |
|
||||
| **create** | boolean | false | Create a new file if it does not exist. |
|
||||
|
|
|
@ -4,7 +4,7 @@ The `copy` module copies a file from the local or remote machine to a location
|
|||
## Parameter
|
||||
| Parameter | Type | Default | Description |
|
||||
| ---------------- | --------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **backup** | boolean | false | Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly. |
|
||||
| **checksum** | string | - | SHA1 checksum of the file being transferred. Used to validate that the copy of the file was successful. If this is not provided, ansible will use the local calculated checksum of the src file. |
|
||||
| **content** | string | - | When used instead of src, sets the contents of a file directly to the specified value. Works only when dest is a file. Creates the file if it does not exist. For advanced formatting or if content contains a variable, use the ansible.builtin.template module. |
|
||||
|
|
|
@ -4,7 +4,7 @@ This module ensures a particular line is in a file, or replace an existing line
|
|||
## Parameter
|
||||
| Parameter | Type | Default | Description |
|
||||
| ----------------- | ------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **backup** | boolean | false | Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly. |
|
||||
| **create** | boolean | false | Create a new file if it does not exist. |
|
||||
| **firstmatch** | boolean | false | Used with `insertafter` or `insertbefore`. If set, `insertafter` and `insertbefore` will work with the first line that matches the given [regular expression](../../Regex.md). |
|
||||
|
|
|
@ -9,7 +9,7 @@ Replace all instances of a particular string in a file using a back-referenced r
|
|||
| **path** | path / required | - | The file to modify. |
|
||||
| **regexp** | string / required | - | The regular expression to look for in the contents of the file. |
|
||||
| **replace** | string | "" | The string to replace regexp matches. May contain backreferences that will get expanded with the regexp capture groups if the regexp matches. If not set, matches are removed entirely. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **backup** | boolean | false | Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly. |
|
||||
| **follow** | boolean | false | This flag indicates that filesystem links in the destination, if they exist, should be followed. |
|
||||
| **force** | boolean | true | Influence whether the remote file must always be replaced. If `true`, the remote file will be replaced when contents are different than the source. If `false`, the file will only be transferred if the destination does not exist. |
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# ansible.builtin.systemd_service
|
||||
Controls [systemd](../../../linux/Systemd.md) units (services, timers, and so on) on remote hosts.
|
||||
Controls [systemd](../../../linux/systemd/Systemd.md) units (services, timers, and so on) on remote hosts.
|
||||
|
||||
## Parameter
|
||||
| Parameter | Type | Default | Description |
|
||||
|
|
|
@ -6,7 +6,7 @@ Template a file out to a target host using Jinja Template Engine.
|
|||
| -------------- | --------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **dest** | path / required | - | Location to render the template to on the remote machine. |
|
||||
| **src** | path / required | - | Path of a Jinja2 formatted template on the Ansible controller. This can be a relative or an absolute path. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **backup** | boolean | false | Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly. |
|
||||
| **follow** | boolean | false | This flag indicates that filesystem links in the destination, if they exist, should be followed. |
|
||||
| **force** | boolean | true | Influence whether the remote file must always be replaced. If `true`, the remote file will be replaced when contents are different than the source. If `false`, the file will only be transferred if the destination does not exist. |
|
||||
|
|
|
@ -4,7 +4,7 @@ Interacts with HTTP and HTTPS web services and supports Digest, Basic and WSSE H
|
|||
## Parameter
|
||||
| Parameter | Type | Default | Description |
|
||||
| ------------------ | -------------------------------------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **attributes** | string | - | The attributes the resulting filesystem object should have. To get supported flags look at the man page for [chattr](../../../applications/cli/system/chattr.md) on the target system. The = operator is assumed as default, otherwise + or - operators need to be included in the string. |
|
||||
| **body** | any | - | The body of the http request/response to the web service. If `body_format` is set to ‘json’ it will take an already formatted JSON string or convert a data structure into JSON. |
|
||||
| **body_format** | "form-urlencoded"<br>"json"<br>"raw"<br>"form-multipart" | "raw" | The serialization format of the body. When set to `json`, `form-multipart`, or `form-urlencoded`, encodes the body argument, if needed, and automatically sets the Content-Type header accordingly. |
|
||||
| **creates** | path | - | A filename, when it already exists, this step will not be run. |
|
||||
|
|
|
@ -8,7 +8,7 @@ Manage user accounts and user attributes.
|
|||
| **create_home** | boolean | true | Unless set to `false`, a home directory will be made for the user when the account is created or if the home directory does not exist. |
|
||||
| **expires** | float | - | An expiry time for the user in epoch, it will be ignored on platforms that do not support this. Currently supported on GNU/[Linux](../../../linux/Linux.md), [FreeBSD](../../../bsd/FreeBSD.md), and DragonFlyBSD. Since Ansible 2.6 you can remove the expiry time by specifying a negative value. Currently supported on GNU/[Linux](../../../linux/Linux.md) and [FreeBSD](../../../bsd/FreeBSD.md) |
|
||||
| **force** | boolean | false | This only affects `state=absent`, it forces removal of the user and associated directories on supported platforms. The behavior is the same as `userdel --force`, check the man page for `userdel` on your system for details and support. When used with `generate_ssh_key=yes` this forces an existing key to be overwritten. |
|
||||
| **generate_ssh_key** | boolean | false | Whether to generate a [SSH](../../../applications/SSH.md) key for the user in question. This will **not** overwrite an existing [SSH](../../../applications/SSH.md) key unless used with `force=yes`. |
|
||||
| **generate_ssh_key** | boolean | false | Whether to generate a [SSH](../../../applications/network/SSH.md) key for the user in question. This will **not** overwrite an existing [SSH](../../../applications/network/SSH.md) key unless used with `force=yes`. |
|
||||
| **group** | string | - | Optionally sets the user’s primary group (takes a group name). |
|
||||
| **groups** | list / elements=string | - | List of groups user will be added to. By default, the user is removed from all other groups. Configure `append` to modify this. When set to an empty string `''`, the user is removed from all groups except the primary group. |
|
||||
| **home** | path | - | Optionally set the user’s home directory. |
|
||||
|
@ -17,11 +17,11 @@ Manage user accounts and user attributes.
|
|||
| **password** | string | - | If provided, set the user’s password to the provided encrypted hash ([Linux](../../../linux/Linux.md)) or plain text password ([macOS](../../../macos/macOS.md)). You can generate the encrypted hash with the `mkpasswd` command. |
|
||||
| **remove** | boolean | false | This only affects `state=absent`, it attempts to remove directories associated with the user. The behavior is the same as `userdel --remove`, check the man page for details and support. |
|
||||
| **shell** | string | - | Optionally set the user’s [shell](../../../applications/cli/Shell.md). |
|
||||
| **ssh_key_bits** | integer | - | Optionally specify number of bits in [SSH](../../../applications/SSH.md) key to create. The default value depends on ssh-keygen. |
|
||||
| **ssh_key_comment** | string | "ansible-generated on $HOSTNAME" | Optionally define the comment for the [SSH](../../../applications/SSH.md) key. |
|
||||
| **ssh_key_file** | path | .ssh/id_rsa | Optionally specify the [SSH](../../../applications/SSH.md) key filename. If this is a relative filename then it will be relative to the user’s home directory. |
|
||||
| **ssh_key_passphrase** | string | - | Set a passphrase for the [SSH](../../../applications/SSH.md) key. If no passphrase is provided, the [SSH](../../../applications/SSH.md) key will default to having no passphrase. |
|
||||
| **ssh_key_type** | string | "rsa" | Optionally specify the type of [SSH](../../../applications/SSH.md) key to generate. |
|
||||
| **ssh_key_bits** | integer | - | Optionally specify number of bits in [SSH](../../../applications/network/SSH.md) key to create. The default value depends on ssh-keygen. |
|
||||
| **ssh_key_comment** | string | "ansible-generated on $HOSTNAME" | Optionally define the comment for the [SSH](../../../applications/network/SSH.md) key. |
|
||||
| **ssh_key_file** | path | .ssh/id_rsa | Optionally specify the [SSH](../../../applications/network/SSH.md) key filename. If this is a relative filename then it will be relative to the user’s home directory. |
|
||||
| **ssh_key_passphrase** | string | - | Set a passphrase for the [SSH](../../../applications/network/SSH.md) key. If no passphrase is provided, the [SSH](../../../applications/network/SSH.md) key will default to having no passphrase. |
|
||||
| **ssh_key_type** | string | "rsa" | Optionally specify the type of [SSH](../../../applications/network/SSH.md) key to generate. |
|
||||
| **state** | "present"<br>"absent" | present | Whether the account should exist or not, taking action if the state is different from what is stated. |
|
||||
| **system** | boolean | false | When creating an account `state=present`, setting this to `true` makes the user a system account. |
|
||||
| **uid** | integer | - | Optionally sets the UID of the user. |
|
||||
|
@ -41,9 +41,9 @@ Manage user accounts and user attributes.
|
|||
| **name** | string | always | User account name. |
|
||||
| **remove** | boolean | When _state_ is `absent` and user exists | Whether or not to remove the user account. |
|
||||
| **shell** | string | When _state_ is `present` | User login [shell](../../../applications/cli/Shell.md). |
|
||||
| **ssh_fingerprint** | string | When _generate_ssh_key_ is `True` | Fingerprint of generated [SSH](../../../applications/SSH.md) key. |
|
||||
| **ssh_key_file** | string | When _generate_ssh_key_ is `True` | Path to generated [SSH](../../../applications/SSH.md) private key file. |
|
||||
| **ssh_public_key** | string | When _generate_ssh_key_ is `True` | Generated [SSH](../../../applications/SSH.md) public key file. |
|
||||
| **ssh_fingerprint** | string | When _generate_ssh_key_ is `True` | Fingerprint of generated [SSH](../../../applications/network/SSH.md) key. |
|
||||
| **ssh_key_file** | string | When _generate_ssh_key_ is `True` | Path to generated [SSH](../../../applications/network/SSH.md) private key file. |
|
||||
| **ssh_public_key** | string | When _generate_ssh_key_ is `True` | Generated [SSH](../../../applications/network/SSH.md) public key file. |
|
||||
| **stderr** | string | When stderr is returned by a command that is run | Standard error from running commands. |
|
||||
| **stdout** | string | When standard output is returned by the command that is run | Standard output from running commands. |
|
||||
| **uid** | integer | When _uid_ is passed to the module | User ID of the user account. |
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
---
|
||||
aliases: ["Torrent"]
|
||||
website: https://www.bittorrent.org/
|
||||
obj: concept
|
||||
---
|
||||
# BitTorrent
|
||||
[BitTorrent](https://www.bittorrent.org/) is a communication protocol for peer-to-peer file sharing (P2P), which enables users to distribute data and electronic files over the Internet in a decentralized manner.
|
||||
|
||||
Users on the BitTorrent Network are not anonymous, because everyones IP address is known. To torrent anonymously one can use the [I2P](I2P.md) Network with i2psnark.
|
|
@ -31,7 +31,7 @@ docker attach [--no-stdin] container
|
|||
```
|
||||
|
||||
### `docker cp`
|
||||
The docker cp utility copies the contents of SRC_PATH to the DEST_PATH. You can copy from the container's file system to the local machine or the reverse, from the local filesystem to the container. If - is specified for either the SRC_PATH or DEST_PATH, you can also stream a [tar](../applications/cli/tar.md) archive from STDIN or to STDOUT. The CONTAINER can be a running or stopped container. The SRC_PATH or DEST_PATH can be a file or directory.
|
||||
The docker cp utility copies the contents of SRC_PATH to the DEST_PATH. You can copy from the container's file system to the local machine or the reverse, from the local filesystem to the container. If - is specified for either the SRC_PATH or DEST_PATH, you can also stream a [tar](../applications/cli/compression/tar.md) archive from STDIN or to STDOUT. The CONTAINER can be a running or stopped container. The SRC_PATH or DEST_PATH can be a file or directory.
|
||||
|
||||
```shell
|
||||
docker cp ./some_file CONTAINER:/work
|
||||
|
@ -122,7 +122,7 @@ docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
|
|||
```
|
||||
|
||||
### Load/Save images
|
||||
You can save and load container images to/from [tar](../applications/cli/tar.md) archives.
|
||||
You can save and load container images to/from [tar](../applications/cli/compression/tar.md) archives.
|
||||
```shell
|
||||
# Save
|
||||
docker save [-o, --output outfile] image
|
||||
|
|
|
@ -1,67 +0,0 @@
|
|||
---
|
||||
aliases: ["PGP", "GnuPG", "OpenPGP"]
|
||||
website: https://www.gnupg.org/
|
||||
obj: application
|
||||
---
|
||||
# GPG
|
||||
gpg is the OpenPGP part of the GNU Privacy Guard (GnuPG). It is a tool to provide digital encryption and signing services using the OpenPGP standard. gpg features complete key management and all the bells and whistles you would expect from a full OpenPGP implementation.
|
||||
|
||||
## Commands
|
||||
|
||||
**Sign:**
|
||||
```shell
|
||||
gpg --sign
|
||||
gpg -s
|
||||
gpg --clear-sign # Sign with clear text
|
||||
```
|
||||
|
||||
**Encrypt:**
|
||||
```shell
|
||||
gpg --encrypt
|
||||
gpg -e
|
||||
```
|
||||
|
||||
**Symmetric Encryption:**
|
||||
```shell
|
||||
gpg --symmetric
|
||||
gpg -c
|
||||
```
|
||||
|
||||
**Decrypt:**
|
||||
```shell
|
||||
gpg --decrypt
|
||||
gpg -d
|
||||
```
|
||||
|
||||
**Verify:**
|
||||
```shell
|
||||
gpg --verify
|
||||
```
|
||||
|
||||
## Keys
|
||||
|
||||
**List keys:**
|
||||
```shell
|
||||
gpg --list-keys
|
||||
gpg -k # List public keys
|
||||
gpg -K # List private keys
|
||||
```
|
||||
|
||||
**Generate key:**
|
||||
```shell
|
||||
gpg --generate-key
|
||||
```
|
||||
|
||||
**Import & export keys:**
|
||||
```shell
|
||||
gpg --export
|
||||
gpg --import
|
||||
```
|
||||
|
||||
**Key selection:**
|
||||
```shell
|
||||
-r, --recipient KEY # Encrypt for key
|
||||
-u, --local-user KEY # Use this key
|
||||
```
|
||||
|
||||
|
|
@ -1,376 +0,0 @@
|
|||
---
|
||||
website: ["https://geti2p.net", "https://i2pd.website"]
|
||||
obj: application
|
||||
repo: https://github.com/PurpleI2P/i2pd
|
||||
---
|
||||
|
||||
# I2P Network
|
||||
I2P is an anonymizing network, offering a simple layer that identity-sensitive applications can use to securely communicate. All data is wrapped with several layers of encryption, and the network is both distributed and dynamic, with no trusted parties. Many applications are available that interface with I2P, including mail, peer-peer, IRC chat, and others. Anonymous [Torrenting](BitTorrent.md) via i2psnark is also possible.
|
||||
|
||||
## Usage
|
||||
Install `i2pd` (deamon written in C++) and enable the service. Router Interface is at `127.0.0.1:7070` with [HTTP](../internet/HTTP.md) Proxy at `127.0.0.1:4444`
|
||||
|
||||
## Configuration
|
||||
There are two separate config files: `i2pd.conf` and `tunnels.conf`. `i2pd.conf` is the main configuration file, where you configure all options. `tunnels.conf` is the tunnel configuration file, where you configure I2P hidden services and client tunnels.
|
||||
|
||||
Example `i2pd.conf`:
|
||||
```ini
|
||||
logfile = /var/log/i2pd/i2pd.log
|
||||
ipv4 = true
|
||||
ipv6 = false
|
||||
ssu = true
|
||||
bandwidth = X
|
||||
|
||||
[ssu2]
|
||||
enabled = true
|
||||
published = true
|
||||
|
||||
[http]
|
||||
enabled = true
|
||||
address = 0.0.0.0
|
||||
port = 7070
|
||||
auth = true
|
||||
user = i2pd
|
||||
pass = pass
|
||||
strictheaders = false
|
||||
lang = english
|
||||
|
||||
[httpproxy]
|
||||
address = 0.0.0.0
|
||||
port = 4444
|
||||
# StormyCloud
|
||||
#outproxy = http://5d4s7pcvfdpftfk7npc7hllyujhufsdprtrf4o53i44rgsa2xbwa.b32.i2p
|
||||
|
||||
# Purokishi
|
||||
outproxy = http://purokishi.i2p
|
||||
|
||||
[socksproxy]
|
||||
address = 0.0.0.0
|
||||
port = 4447
|
||||
|
||||
[sam]
|
||||
enabled = true
|
||||
address = 127.0.0.1
|
||||
port = 7656
|
||||
|
||||
[i2cp]
|
||||
enabled = true
|
||||
address = 0.0.0.0
|
||||
port = 7654
|
||||
|
||||
[reseed]
|
||||
verify = true
|
||||
|
||||
[addressbook]
|
||||
subscriptions = http://reg.i2p/hosts.txt,http://identiguy.i2p/hosts.txt,http://stats.i2p/cgi-bin/newhosts.txt,http://rus.i2p/hosts.txt
|
||||
```
|
||||
|
||||
### General options
|
||||
| Option | Description |
|
||||
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| conf | Config file (default: ~/.i2pd/i2pd.conf or /var/lib/i2pd/i2pd.conf). This parameter will be silently ignored if the specified config file does not exist. |
|
||||
| tunconf | Tunnels config file (default: ~/.i2pd/tunnels.conf or /var/lib/i2pd/tunnels.conf) |
|
||||
| pidfile | Where to write pidfile (default: i2pd.pid, not used in Windows) |
|
||||
| log | Logs destination: stdout, file, syslog (stdout if not set or invalid) (if daemon, stdout/unspecified are replaced by file in some cases) |
|
||||
| logfile | Path to logfile (default - autodetect) |
|
||||
| loglevel | Log messages above this level (debug, info, warn, error, none; default - warn) |
|
||||
| logclftime | Write full CLF-formatted date and time to log (default: false (write only time)) |
|
||||
| datadir | Path to storage of i2pd data (RouterInfos, destinations keys, peer profiles, etc ...) |
|
||||
| host | Router external IP for incoming connections (default: auto if SSU2 is enabled) |
|
||||
| port | Port to listen for incoming connections (default: auto (random)) |
|
||||
| daemon | Router will go to background after start (default: true) |
|
||||
| service | Router will use system folders like '/var/lib/i2pd' (on unix) or 'C:\ProgramData\i2pd' (on Windows). Ignored on MacOS and Android (default: false) |
|
||||
| ifname | Network interface to bind to |
|
||||
| ifname4 | Network interface to bind to for IPv4 |
|
||||
| ifname6 | Network interface to bind to for IPv6 |
|
||||
| address4 | Local address to bind to for IPv4 |
|
||||
| address6 | Local address to bind to for clearnet IPv6 |
|
||||
| nat | If true, assume we are behind NAT (default: true) |
|
||||
| ipv4 | Enable communication through IPv4 (default: true) |
|
||||
| ipv6 | Enable communication through clearnet IPv6 (default: false) |
|
||||
| notransit | Router will not accept transit tunnels, disabling transit traffic completely. G router cap will be published (default: false) |
|
||||
| floodfill | Router will be floodfill (default: false) |
|
||||
| bandwidth | Bandwidth limit: integer in KBps or letters: L (32), O (256), P (2048), X (unlimited). |
|
||||
| share | Max % of bandwidth limit for transit. 0-100 (default: 100) |
|
||||
| family | Name of a family, router belongs to |
|
||||
| netid | Network ID, router belongs to. Main I2P is 2. |
|
||||
|
||||
### NTCP2
|
||||
| Option | Description |
|
||||
| --------------- | ----------------------------------------------------------------------------------------- |
|
||||
| ntcp2.enabled | Enable NTCP2 (default: true) |
|
||||
| ntcp2.published | Enable incoming NTCP2 connections (default: true) |
|
||||
| ntcp2.port | Port to listen for incoming NTCP2 connections (default: auto - port from general section) |
|
||||
| ntcp2.addressv6 | External IPv6 for incoming connections |
|
||||
| ntcp2.proxy | Specify proxy server for NTCP2. Should be http://address:port or socks://address:port |
|
||||
|
||||
### SSU2
|
||||
| Option | Description |
|
||||
| -------------- | ------------------------------------------------------------------------------------------ |
|
||||
| ssu2.enabled | Enable SSU2 (default: true) |
|
||||
| ssu2.published | Enable incoming SSU2 connections. (default: true) |
|
||||
| ssu2.port | Port to listen for incoming SSU2 connections (default: auto - 'port' from general section) |
|
||||
| ssu2.proxy | Specify UDP socks5 proxy server for NTCP2. Should be socks://address:port |
|
||||
| ssu2.mtu4 | MTU for local ipv4. (default: auto) |
|
||||
| ssu2.mtu6 | MTU for local ipv6. (default: auto) |
|
||||
|
||||
### HTTP webconsole
|
||||
| Option | Description |
|
||||
| ------------------ | ------------------------------------------------------ |
|
||||
| http.enabled | If webconsole is enabled. (default: true) |
|
||||
| http.address | The address to listen on (HTTP server) |
|
||||
| http.port | The port to listen on (HTTP server) (default: 7070) |
|
||||
| http.auth | Enable basic HTTP auth for webconsole (default: false) |
|
||||
| http.user | Username for basic auth (default: i2pd) |
|
||||
| http.pass | Password for basic auth (default: random, see logs) |
|
||||
| http.strictheaders | Enable strict host checking on WebUI. (default: true) |
|
||||
| http.hostname | Expected hostname for WebUI (default: localhost) |
|
||||
|
||||
### HTTP Proxy
|
||||
| Option | Description |
|
||||
| --------------------------------- | ------------------------------------------------------------------- |
|
||||
| httpproxy.enabled | If [HTTP](../internet/HTTP.md) proxy is enabled. (default: true) |
|
||||
| httpproxy.address | The address to listen on ([HTTP](../internet/HTTP.md) Proxy) |
|
||||
| httpproxy.port | The port to listen on ([HTTP](../internet/HTTP.md) Proxy) (default: 4444) |
|
||||
| httpproxy.addresshelper | Enable address helper (jump). (default: true) |
|
||||
| httpproxy.keys | Optional keys file for [HTTP](../internet/HTTP.md) proxy local destination |
|
||||
| httpproxy.signaturetype | Signature type for new keys if keys file is set. (default: 7) |
|
||||
| httpproxy.inbound.length | Inbound tunnels length if keys is set. (default: 3) |
|
||||
| httpproxy.inbound.quantity | Inbound tunnels quantity if keys is set. (default: 5) |
|
||||
| httpproxy.inbound.lengthVariance | Inbound tunnels length variance if keys is set. (default: 0) |
|
||||
| httpproxy.outbound.length | Outbound tunnels length if keys is set. (default: 3) |
|
||||
| httpproxy.outbound.quantity | Outbound tunnels quantity if keys is set. (default: 5) |
|
||||
| httpproxy.outbound.lengthVariance | Outbound tunnels length variance if keys is set. (default: 0) |
|
||||
| httpproxy.outproxy | [HTTP](../internet/HTTP.md) proxy upstream out proxy url (like http://false.i2p) |
|
||||
| httpproxy.i2cp.leaseSetType | Type of LeaseSet to be sent. 1, 3 or 5. (default: 3) |
|
||||
| httpproxy.i2cp.leaseSetEncType | Comma separated encryption types to be used in LeaseSet type 3 or 5 |
|
||||
|
||||
### Socks proxy
|
||||
| Option | Description |
|
||||
| ---------------------------------- | ------------------------------------------------------------------- |
|
||||
| socksproxy.enabled | If SOCKS proxy is enabled. (default: true) |
|
||||
| socksproxy.address | The address to listen on (SOCKS Proxy) |
|
||||
| socksproxy.port | The port to listen on (SOCKS Proxy). (default: 4447) |
|
||||
| socksproxy.keys | Optional keys file for SOCKS proxy local destination |
|
||||
| socksproxy.signaturetype | Signature type for new keys if keys file is set. (default: 7) |
|
||||
| socksproxy.inbound.length | Inbound tunnels length if keys is set. (default: 3) |
|
||||
| socksproxy.inbound.quantity | Inbound tunnels quantity if keys is set. (default: 5) |
|
||||
| socksproxy.inbound.lengthVariance | Inbound tunnels length variance if keys is set. (default: 0) |
|
||||
| socksproxy.outbound.length | Outbound tunnels length if keys is set. (default: 3) |
|
||||
| socksproxy.outbound.quantity | Outbound tunnels quantity if keys is set. (default: 5) |
|
||||
| socksproxy.outbound.lengthVariance | Outbound tunnels length variance if keys is set. (default: 0) |
|
||||
| socksproxy.outproxy.enabled | Enable or disable SOCKS outproxy. (default: false) |
|
||||
| socksproxy.outproxy | Address of outproxy. Requests outside I2P will go there. |
|
||||
| socksproxy.outproxyport | Outproxy remote port |
|
||||
| socksproxy.i2cp.leaseSetType | Type of LeaseSet to be sent. 1, 3 or 5. (default: 3) |
|
||||
| socksproxy.i2cp.leaseSetEncType | Comma separated encryption types to be used in LeaseSet type 3 or 5 |
|
||||
|
||||
### SAM interface
|
||||
| Option | Description |
|
||||
| ---------------- | -------------------------------------------------------------- |
|
||||
| sam.enabled | If SAM is enabled. (default: true) |
|
||||
| sam.address | The address to listen on (SAM bridge) |
|
||||
| sam.port | Port of SAM bridge. Usually 7656. SAM is off if not specified |
|
||||
| sam.singlethread | If false every SAM session runs in own thread. (default: true) |
|
||||
|
||||
### BOB interface
|
||||
| Option | Description |
|
||||
| ----------- | ---------------------------------------------------------------------- |
|
||||
| bob.enabled | If BOB is enabled. (default: false) |
|
||||
| bob.address | The address to listen on (BOB command channel) |
|
||||
| bob.port | Port of BOB command channel. Usually 2827. BOB is off if not specified |
|
||||
|
||||
### I2CP interface
|
||||
| Option | Description |
|
||||
| ----------------- | ----------------------------------------------------------------------- |
|
||||
| i2cp.enabled | If I2CP is enabled. (default: true) |
|
||||
| i2cp.address | The address to listen on or an abstract address for Android LocalSocket |
|
||||
| i2cp.port | Port of I2CP server. Usually 7654. Ignored for Andorid |
|
||||
| i2cp.singlethread | If false every I2CP session runs in own thread. (default: true) |
|
||||
|
||||
### I2PControl interface
|
||||
| Option | Description |
|
||||
| ------------------- | ----------------------------------------------------------------------------- |
|
||||
| i2pcontrol.enabled | If I2P control is enabled. (default: false) |
|
||||
| i2pcontrol.address | The address to listen on (I2P control service) |
|
||||
| i2pcontrol.port | Port of I2P control service. Usually 7650. I2PControl is off if not specified |
|
||||
| i2pcontrol.password | I2P control authentication password. (default: itoopie) |
|
||||
| i2pcontrol.cert | I2P control HTTPS certificate file name. (default: i2pcontrol.crt.pem) |
|
||||
| i2pcontrol.key | I2P control HTTPS certificate key file name. (default: i2pcontrol.key.pem) |
|
||||
|
||||
### Reseeding
|
||||
| Option | Description |
|
||||
| ---------------- | ----------------------------------------------------------------------- |
|
||||
| reseed.verify | Verify .su3 signature. (default: false) |
|
||||
| reseed.urls | Reseed URLs, separated by comma |
|
||||
| reseed.yggurls | Reseed Yggdrasil's URLs, separated by comma |
|
||||
| reseed.file | Path to local .su3 file or HTTPS [URL](../internet/URL.md) to reseed from |
|
||||
| reseed.zipfile | Path to local .zip file to reseed from |
|
||||
| reseed.threshold | Minimum number of known routers before requesting reseed. (default: 25) |
|
||||
| reseed.proxy | Url for https/socks reseed proxy |
|
||||
|
||||
### Addressbook options
|
||||
| Option | Description |
|
||||
| ------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||
| addressbook.defaulturl | AddressBook subscription URL. Only used to initialize the AddressBook. |
|
||||
| addressbook.subscriptions | AddressBook subscriptions URLs, separated by comma. Note that defaulturl is not added to subscriptions URLs |
|
||||
| addressbook.hostsfile | File to dump AddressesBook in hosts.txt format |
|
||||
|
||||
### Trust options
|
||||
| Option | Description |
|
||||
| ------------- | ------------------------------------------------------------------------------------------------------ |
|
||||
| trust.enabled | Enable explicit trust options. (default: false) |
|
||||
| trust.family | Make direct I2P connections only to routers in specified Family. |
|
||||
| trust.routers | Make direct I2P connections only to routers specified here. Comma separated list of [base64](../files/Base64.md) identities. |
|
||||
| trust.hidden | Should we hide our router from other routers? (default: false) |
|
||||
|
||||
### Exploratory tunnels
|
||||
| Option | Description |
|
||||
| ----------------------------- | --------------------------------------------------- |
|
||||
| exploratory.inbound.length | Exploratory inbound tunnels length. (default: 2) |
|
||||
| exploratory.inbound.quantity | Exploratory inbound tunnels quantity. (default: 3) |
|
||||
| exploratory.outbound.length | Exploratory outbound tunnels length. (default: 2) |
|
||||
| exploratory.outbound.quantity | Exploratory outbound tunnels quantity. (default: 3) |
|
||||
|
||||
## Tunnel Configuration
|
||||
Available tunnel types:
|
||||
|
||||
| Type | Description |
|
||||
| --------- | -------------------------------------------------------------- |
|
||||
| client | Client tunnel to remote I2P destination ([TCP](../internet/TCP.md)) |
|
||||
| server | Generic server tunnel to setup any [TCP](../internet/TCP.md) service in I2P network |
|
||||
| http | [HTTP](../internet/HTTP.md) server tunnel to setup a website in I2P |
|
||||
|
||||
|
||||
### Client Tunnel
|
||||
```ini
|
||||
[irc-out]
|
||||
type = client
|
||||
address = 127.0.0.1
|
||||
port = 6668
|
||||
destination = irc.ilita.i2p
|
||||
keys = irc.dat
|
||||
```
|
||||
|
||||
#### Optional parameters
|
||||
| Option | Description |
|
||||
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| address | Local interface tunnel binds to, '127.0.0.1' for connections from local host only, '0.0.0.0' for connections from everywhere. (default: 127.0.0.1) |
|
||||
| port | Port of client tunnel. |
|
||||
| signaturetype | Signature type for new keys. RSA signatures (4,5,6) are not allowed and will be changed to 7. (default: 7) |
|
||||
| cryptotype | Crypto type for new keys. Experimental. Should be always 0 |
|
||||
| destinationport | Connect to particular port at destination. 0 by default (targeting first tunnel on server side for destination) |
|
||||
| keepaliveinterval | Send ping to the destination after this interval in seconds. (default: 0 - no pings) |
|
||||
| keys | Keys for destination. When same for several tunnels, will be using same destination for every tunnel. |
|
||||
|
||||
### Server Tunnel
|
||||
```ini
|
||||
[smtp-in]
|
||||
type = server
|
||||
host = 127.0.0.1
|
||||
port = 25
|
||||
keys = smtp-in.dat
|
||||
```
|
||||
|
||||
#### Optional parameters
|
||||
| Option | Description |
|
||||
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| host | IP address of server (on this address i2pd will send data from I2P) |
|
||||
| port | Port of server tunnel. |
|
||||
| inport | (non-[TCP](../internet/TCP.md) non-[UDP](../internet/UDP.md)) I2P local destination port to listen to; an unsigned 16-bit integer. What port at local destination server tunnel listens to (default: same as _port_) |
|
||||
| accesslist | List of comma-separated of b32 address (without .b32.i2p) allowed to connect. Everybody is allowed by default |
|
||||
| gzip | Turns internal compression off if set to false. (default: false) |
|
||||
| signaturetype | Signature type for new keys. (default: 7) |
|
||||
| cryptotype | Crypto type for new keys. Experimental. Should be always 0 |
|
||||
| enableuniquelocal | If true, connection to local address will look like 127.x.x.x where x.x.x is first 3 bytes of incoming connection peer's ident hash. (default: true) |
|
||||
| address | IP address of an interface tunnel is connected to _host_ from. Usually not used |
|
||||
| keys | Keys for destination. When same for several tunnels, will be using same destination for every tunnel. |
|
||||
|
||||
|
||||
### HTTP Tunnel
|
||||
```ini
|
||||
[http-in]
|
||||
type = http
|
||||
host = 127.0.0.1
|
||||
port = 80
|
||||
keys = our-website.dat
|
||||
```
|
||||
|
||||
## Tools
|
||||
There are several tools available [here](https://github.com/PurpleI2P/i2pd-tools).
|
||||
|
||||
### keygen
|
||||
Generate an I2P private key.
|
||||
|
||||
#### Usage
|
||||
Make a EDDSA-SHA512-ED25519 destination key
|
||||
```shell
|
||||
./keygen privkey.dat
|
||||
```
|
||||
|
||||
Make an destination key with a certain key type
|
||||
```shell
|
||||
./keygen privkey.dat <number>
|
||||
./keygen privkey.dat <key name>
|
||||
```
|
||||
|
||||
| key name | number |
|
||||
| ------------------------------------ | ------ |
|
||||
| DSA-SHA1 | 0 |
|
||||
| ECDSA-SHA256-P256 | 1 |
|
||||
| ECDSA-SHA384-P384 | 2 |
|
||||
| ECDSA-SHA512-P521 | 3 |
|
||||
| RSA-SHA256-2048 | 4 |
|
||||
| RSA-SHA384-3072 | 5 |
|
||||
| RSA-SHA512-4096 | 6 |
|
||||
| EDDSA-SHA512-ED25519 | 7 |
|
||||
| GOSTR3410_CRYPTO_PRO_A-GOSTR3411-256 | 9 |
|
||||
| GOSTR3410_TC26_A_512-GOSTR3411-512 | 10 |
|
||||
| RED25519-SHA512 | 11 |
|
||||
|
||||
### vain
|
||||
Vanity generation address.
|
||||
|
||||
Time to Generate on a 2.70GHz Processor:
|
||||
|
||||
| characters | time to generate (approx.) |
|
||||
| ---------- | -------------------------- |
|
||||
| 1 | ~0.082s |
|
||||
| 2 | ~0.075s |
|
||||
| 3 | ~0.100s |
|
||||
| 4 | ~0.394s |
|
||||
| 5 | ~6.343s |
|
||||
| 6 | ~1m-5m |
|
||||
| 7 | ~30m |
|
||||
|
||||
#### Usage
|
||||
```shell
|
||||
./vain pattern [options]
|
||||
```
|
||||
|
||||
## Options
|
||||
| Option | Description |
|
||||
| -------------------------- | ----------------------------------- |
|
||||
| `-r, --reg` | regex instead of text pattern |
|
||||
| `-t, --threads` | Use this many threads (default all) |
|
||||
| `-o, --output output_file` | Output file |
|
||||
| `-m, --multiplymode` | multiple addresses search |
|
||||
|
||||
### keyinfo
|
||||
Prints information about an I2P private key
|
||||
|
||||
#### Usage
|
||||
Print just the b32 address for this key
|
||||
```shell
|
||||
./keyinfo privatekey.dat
|
||||
```
|
||||
|
||||
... just the base64 address
|
||||
```shell
|
||||
./keyinfo -d privatekey.dat
|
||||
```
|
||||
|
||||
Print all info about the public key
|
||||
```shell
|
||||
./keyinfo -v privatekey.dat
|
||||
```
|
|
@ -5,7 +5,7 @@ website: https://jinja.palletsprojects.com/en/3.1.x
|
|||
---
|
||||
|
||||
# Jinja Templates
|
||||
Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to [Python](../programming/languages/Python.md) syntax. Then the template is passed data to render the final document. Jinja template files commonly have the `.j2` extension.
|
||||
Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to [Python](../dev/programming/languages/Python.md) syntax. Then the template is passed data to render the final document. Jinja template files commonly have the `.j2` extension.
|
||||
|
||||
## Syntax
|
||||
Below is a minimal template that illustrates a few basics using the default Jinja configuration:
|
||||
|
@ -46,10 +46,10 @@ To comment-out part of a line in a template, use the comment syntax which is by
|
|||
```
|
||||
|
||||
### Expressions
|
||||
Jinja allows basic expressions everywhere. These work very similarly to regular [Python](../programming/languages/Python.md); even if you’re not working with [Python](../programming/languages/Python.md) you should feel comfortable with it.
|
||||
Jinja allows basic expressions everywhere. These work very similarly to regular [Python](../dev/programming/languages/Python.md); even if you’re not working with [Python](../dev/programming/languages/Python.md) you should feel comfortable with it.
|
||||
|
||||
#### Literals
|
||||
The simplest form of expressions are literals. Literals are representations for [Python](../programming/languages/Python.md) objects such as strings and numbers. The following literals exist:
|
||||
The simplest form of expressions are literals. Literals are representations for [Python](../dev/programming/languages/Python.md) objects such as strings and numbers. The following literals exist:
|
||||
|
||||
`"Hello World"`
|
||||
|
||||
|
@ -82,7 +82,7 @@ Tuples are like lists that cannot be modified (“immutable”). If a tuple only
|
|||
|
||||
`{'dict': 'of', 'key': 'and', 'value': 'pairs'}`
|
||||
|
||||
A dict in [Python](../programming/languages/Python.md) is a structure that combines keys and values. Keys must be unique and always have exactly one value. Dicts are rarely used in templates; they are useful in some rare cases such as the `xmlattr()` filter.
|
||||
A dict in [Python](../dev/programming/languages/Python.md) is a structure that combines keys and values. Keys must be unique and always have exactly one value. Dicts are rarely used in templates; they are useful in some rare cases such as the `xmlattr()` filter.
|
||||
|
||||
`true` / `false`
|
||||
|
||||
|
@ -131,7 +131,7 @@ This will output the value of `my_variable` if the variable was defined, other
|
|||
```
|
||||
|
||||
##### dictsort(value, case_sensitive: bool = False, by: Literal\["key", "value"]' = 'key', reverse: bool = False)
|
||||
Sort a dict and yield (key, value) pairs. [Python](../programming/languages/Python.md) dicts may not be in the order you want to display them in, so sort them first.
|
||||
Sort a dict and yield (key, value) pairs. [Python](../dev/programming/languages/Python.md) dicts may not be in the order you want to display them in, so sort them first.
|
||||
```
|
||||
{% for key, value in mydict|dictsort %}
|
||||
sort the dict by key, case insensitive
|
||||
|
@ -177,7 +177,7 @@ In most cases it should be more convenient and efficient to use the `%` operator
|
|||
```
|
||||
|
||||
##### groupby(value, attribute: str | int, default: Any | None = None, case_sensitive: bool = False)
|
||||
Group a sequence of objects by an attribute using [Python](../programming/languages/Python.md)’s `itertools.groupby()`. The attribute can use dot notation for nested access, like `"address.city"`. Unlike [Python](../programming/languages/Python.md)’s `groupby`, the values are sorted first so only one group is returned for each unique value.
|
||||
Group a sequence of objects by an attribute using [Python](../dev/programming/languages/Python.md)’s `itertools.groupby()`. The attribute can use dot notation for nested access, like `"address.city"`. Unlike [Python](../dev/programming/languages/Python.md)’s `groupby`, the values are sorted first so only one group is returned for each unique value.
|
||||
|
||||
For example, a list of `User` objects with a `city` attribute can be rendered in groups. In this example, `grouper` refers to the `city` value of the group.
|
||||
```
|
||||
|
|
|
@ -60,8 +60,8 @@ monero-wallet-cli --wallet-file <file> --password-file <passwd>
|
|||
| `status` | Check current status of wallet |
|
||||
|
||||
## Applications
|
||||
- [Monero GUI](../applications/mobile/Monero%20GUI.md) - Official Monero GUI
|
||||
- [Feather Wallet](../applications/Feather%20Wallet.md) - Open source wallet
|
||||
- [Monero GUI](../applications/finance/Monero%20GUI.md) - Official Monero GUI
|
||||
- [Feather Wallet](../applications/finance/Feather%20Wallet.md) - Open source wallet
|
||||
|
||||
## Sites accepting Monero
|
||||
[List of supported sites](https://monerica.com/)
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
---
|
||||
website: https://torproject.org
|
||||
obj: application
|
||||
---
|
||||
# The Onion Router (TOR)
|
||||
The Tor Project (The onion routing) is an open source implementation of onion routing that provides free access to an anonymous proxy network. Its primary goal is to enable online anonymity by protecting against traffic analysis attacks.
|
||||
|
||||
Users of the Tor network run an onion proxy software on their machines, which presents a SOCKS interface to its clients. This software connects out to Tor, periodically negotiating a virtual circuit through the Tor network. Tor employs cryptography in a layered manner (hence the 'onion' analogy), ensuring forward secrecy between routers.
|
||||
|
||||
As an overlay network it is similiar to [i2p](I2P.md).
|
||||
|
||||
## Usage
|
||||
Start/enable `tor.service`. Alternatively, launch it with `sudo -u tor /usr/bin/tor`.
|
||||
|
||||
To use a program over Tor, configure it to use `127.0.0.1` or `localhost` as a SOCKS5 proxy, with port `9050` for plain Tor with standard settings.
|
||||
|
||||
The proxy supports remote DNS resolution: use `socks5**h**://localhost:9050` for DNS resolution from the exit node (instead of `socks5` for a local DNS resolution).
|
||||
|
||||
## Configuration
|
||||
|
||||
Tor reads its configurations from the file `/etc/tor/torrc` by default, or if the latter is not found, from `$HOME/.torrc`. The configuration options are explained on the [Tor website](https://torproject.org/docs/tor-manual.html.en). The default configuration should work fine for most Tor users.
|
||||
|
||||
## Hidden Services
|
||||
Hidden Services are web services behind an onion domain.
|
||||
To generate onion domains [mkp224o](https://git.hydrar.de/utilities/mkp224o) can be used.
|
||||
|
||||
To enable a hidden service add this to `torrc`:
|
||||
```
|
||||
HiddenServiceDir /var/lib/tor/hidden_service/
|
||||
HiddenServicePort 80 127.0.0.1:80
|
||||
```
|
|
@ -1,6 +0,0 @@
|
|||
---
|
||||
obj: concept
|
||||
---
|
||||
|
||||
# WebDAV
|
||||
WebDAV (Web Distributed Authoring and Versioning) is an extension of [HTTP](../internet/HTTP.md)/1.1 and therefore can be considered to be a protocol. It contains a set of concepts and accompanying extension methods to allow read and write across the [HTTP](../internet/HTTP.md)/1.1 protocol. Instead of using NFS or [SMB](../applications/web/Samba.md), WebDAV offers file transfers via [HTTP](../internet/HTTP.md). A hosting application with WebDAV support is [dufs](../applications/web/dufs.md).
|
Loading…
Add table
Add a link
Reference in a new issue