Speciális használat
Lapok mentése
Az Ön által tárolt OnionShare lapok bezárása megsemmisíti őket, és megakadályozza az újrafelhasználást. A folyamatosan tárolt webhelyek ugyanazon a címen érhetők el, még akkor is, ha a számítógép, amelyről megosztják őket, újraindul.
Bármely lapot állandóvá tehet, ha a szerver indítása előtt bejelöli az „Ez a lap mindig nyíljon meg az OnionShare indításakor” jelölőnégyzetet.
Az OnionShare megnyitásakor az előző munkamenetben mentett lapok megnyitva indulnak. Ezután az egyes szolgáltatások kézzel indíthatók, és ugyanazon az OnionShare-címen lesznek elérhetők, ugyanazzal a privát kulccsal védve.
Ha ment egy lapot, annak onion szolgáltatásához tartozó titkos kulcs egy példánya a számítógépén tárolódik.
A privát kulcs kikapcsolása
Alapértelmezés szerint minden OnionShare szolgáltatást privát kulcs véd, amelyet a Tor „kliens-hitelesítésnek” nevez.
Amikor betölt egy OnionShare szolgáltatást, a Tor Browser kérni fogja a privát kulcs megadását. Ha azt szeretné, hogy a nyilvánosság használhassa a szolgáltatását, jobb teljesen letiltani a privát kulcsot.
Bármely lap privát kulcsának kikapcsolásához a szerver indítása előtt jelölje be az „Ez egy nyilvános OnionShare szolgáltatás (letiltja a privát kulcsot)” jelölőnégyzetet. Ekkor a szerver nyilvános lesz, és a Tor Browserben való betöltéséhez nincs szükség privát kulcsra.
Egyéni címek
Amikor valaki betölt egy OnionShare szolgáltatást a Tor Browserben, az adott szolgáltatástípus alapértelmezett címét látja. A csevegőszolgáltatások alapértelmezett címe például „OnionShare Chat”.
Ezt a szerver indítása előtt az „Egyéni cím” beállítás szerkesztésével módosíthatja.
Ütemezett időpontok
Az OnionShare támogatja annak pontos ütemezését, hogy egy szolgáltatás mikor induljon el és álljon le. A szerver indítása előtt kattintson a lapján a „Speciális beállítások megjelenítése” lehetőségre, majd jelölje be az „Onion szolgáltatás indítása ütemezett időpontban”, az „Onion szolgáltatás leállítása ütemezett időpontban” vagy mindkét jelölőnégyzetet, és adja meg a kívánt dátumokat és időpontokat.
A jövőben induló ütemezett szolgáltatások a „Megosztás kezdése” gombra kattintáskor visszaszámláló időzítőt jelenítenek meg. A jövőben leálló ütemezett szolgáltatások az indításukkor jelenítenek meg visszaszámláló időzítőt.
Egy OnionShare szolgáltatás automatikus indításának ütemezése halottkapcsolóként (dead man’s switch) is használható. Ez azt jelenti, hogy a szolgáltatás egy adott jövőbeli időpontban nyilvánossá válik, ha Ön nincs ott, hogy megakadályozza. Ha nem történik Önnel semmi, az ütemezett indítás előtt visszavonhatja a szolgáltatást.
Egy OnionShare szolgáltatás automatikus leállításának ütemezése korlátozza a kitettségét. Ha titkos információt vagy hamar elavuló tartalmat szeretne megosztani, ezt egy kiválasztott, korlátozott ideig teheti meg.
Parancssoros felület
A grafikus felület mellett az OnionShare parancssoros felülettel is rendelkezik.
A CLI-változat telepítése
Ha a Snap-, macOS- vagy Windows-csomagot telepítette, a CLI-változat már telepítve van.
Másik lehetőségként az OnionShare csak parancssoros változatát is telepítheti a pip3 segítségével:
pip3 install --user onionshare-cli
Ne feledje, hogy a tor csomagra is szüksége lesz. macOS rendszeren a következő paranccsal telepítheti: brew install tor
Ezután így futtassa:
onionshare-cli --help
A különböző operációs rendszereken való telepítésről a Git-tárolóban található CLI README fájlban talál információt.
A CLI futtatása Snapből
Ha az OnionShare-t Snap-csomagként telepítette, a parancssoros változatot az onionshare.cli paranccsal érheti el.
A CLI futtatása macOS rendszeren
A Terminálból a következő parancsot futtathatja: /Applications/OnionShare.app/Contents/MacOS/onionshare-cli --help
A CLI futtatása Windowson
A Windows-telepítésben az onionshare-cli.exe futtatható fájl érhető el.
Használat
A parancssoros dokumentációt az onionshare --help parancs futtatásával tekintheti meg:
$ onionshare-cli --help
╭───────────────────────────────────────────╮
│ * ▄▄█████▄▄ * │
│ ▄████▀▀▀████▄ * │
│ ▀▀█▀ ▀██▄ │
│ * ▄█▄ ▀██▄ │
│ ▄█████▄ ███ -+- │
│ ███ ▀█████▀ │
│ ▀██▄ ▀█▀ │
│ * ▀██▄ ▄█▄▄ * │
│ * ▀████▄▄▄████▀ │
│ ▀▀█████▀▀ │
│ -+- * │
│ ▄▀▄ ▄▀▀ █ │
│ █ █ ▀ ▀▄ █ │
│ █ █ █▀▄ █ ▄▀▄ █▀▄ ▀▄ █▀▄ ▄▀▄ █▄▀ ▄█▄ │
│ ▀▄▀ █ █ █ ▀▄▀ █ █ ▄▄▀ █ █ ▀▄█ █ ▀▄▄ │
│ │
│ v2.4.1 │
│ │
│ https://onionshare.org/ │
╰───────────────────────────────────────────╯
usage: onionshare-cli [-h] [--receive] [--website] [--chat] [--local-only] [--connect-timeout SECONDS] [--config FILENAME] [--persistent FILENAME] [--title TITLE] [--public]
[--auto-start-timer SECONDS] [--auto-stop-timer SECONDS] [--no-autostop-sharing] [--log-filenames] [--qr] [--data-dir data_dir] [--webhook-url webhook_url] [--disable-text]
[--disable-files] [--disable_csp] [--custom_csp custom_csp] [-v]
[filename ...]
positional arguments:
filename List of files or folders to share
optional arguments:
-h, --help Show this help message and exit
--receive Receive files
--website Publish website
--chat Start chat server
--local-only Don't use Tor (only for development)
--connect-timeout SECONDS
Give up connecting to Tor after a given amount of seconds (default: 120)
--config FILENAME Filename of custom global settings
--persistent FILENAME Filename of persistent session
--title TITLE Set a title
--public Don't use a private key
--auto-start-timer SECONDS
Start onion service at scheduled time (N seconds from now)
--auto-stop-timer SECONDS
Stop onion service at scheduled time (N seconds from now)
--no-autostop-sharing Share files: Continue sharing after files have been sent (the default is to stop sharing)
--log-filenames Log file download activity to stdout
--qr Display a QR code in the terminal for share links
--data-dir data_dir Receive files: Save files received to this directory
--webhook-url webhook_url
Receive files: URL to receive webhook notifications
--disable-text Receive files: Disable receiving text messages
--disable-files Receive files: Disable receiving files
--max-upload-size size Receive files: Maximum size of an upload, e.g. 100mb (0 means no limit)
--max-upload-size-total Receive files: Apply the maximum upload size to the entire service lifespan
--disable_csp Publish website: Disable the default Content Security Policy header (allows your website to use third-party resources)
--custom_csp custom_csp Publish website: Set a custom Content Security Policy header
-v, --verbose Log OnionShare errors to stdout, and web errors to disk
A CLI futtatása systemd unitfájlként
Az OnionShare egy systemd unitfájl segítségével automatikusan is elindítható a CLI-ből.
Ez különösen hasznos lehet, ha «állandó» módban használja, és azt szeretné, hogy a gép minden indításakor ugyanaz az onion szolgáltatás induljon el.
Ehhez először el kell készítenie néhány OnionShare JSON-konfigurációt.
Ez az OnionShare fő konfigurációja. Ebben a példában a /home/user/.config/onionshare/onionshare.json helyen van tárolva. Előfordulhat, hogy néhány beállítást módosítania kell, de ha az OnionShare már telepítve van, valószínűleg már most is nagyjából így néz ki:
{
"version": "2.6.2",
"connection_type": "bundled",
"control_port_address": "127.0.0.1",
"control_port_port": 9051,
"socks_address": "127.0.0.1",
"socks_port": 9050,
"socket_file_path": "/var/run/tor/control",
"auth_type": "no_auth",
"auth_password": "",
"auto_connect": true,
"use_autoupdate": true,
"autoupdate_timestamp": null,
"bridges_enabled": false,
"bridges_type": "built-in",
"bridges_builtin_pt": "obfs4",
"bridges_moat": "",
"bridges_custom": "",
"bridges_builtin": {},
"persistent_tabs": [
"my-persistent-onion"
],
"locale": "en",
"theme": 0
}
Figyelje meg a «persistent_tabs» szakaszt. Most létrehozunk egy fájlt /home/user/.config/onionshare/persistent/my-persistent-onion.json néven, amely így néz ki:
{
"onion": {
"private_key": "UDIaZD8QgoXRP8JnAJ+pnlogQazfZ0wrfWJk5zPBGUBqg6+lozzjUJKTYWxwrxR33pDgJdTFtCUN1CX1FE22UQ==",
"client_auth_priv_key": "RHJSN4VI3NKGDSIWK45CCWTLYOJHA6DQQRQXUID3FXMAILYXWVUQ",
"client_auth_pub_key": "J4YLYAHS25UU3TZTE27H32RN3MCRGLR345U52XS2JNQ76CCHCRSQ"
},
"persistent": {
"mode": "share",
"enabled": true
},
"general": {
"title": null,
"public": false,
"autostart_timer": 0,
"autostop_timer": 0,
"service_id": "niktadkcp6z7rym3r5o3j2hnmis53mno5ughvur357xo7jkjvmqrchid",
"qr": false
},
"share": {
"autostop_sharing": true,
"filenames": [
"/home/user/my-shared-file.txt"
]
},
"receive": {
"data_dir": "/home/user/OnionShare",
"webhook_url": null,
"disable_text": false,
"disable_files": false
},
"website": {
"disable_csp": false,
"custom_csp": null,
"filenames": []
},
"chat": {}
}
Ne használja ténylegesen ezt a privát kulcsot, service_id-t vagy client_auth kulcsokat! Ezek csak példaként szerepelnek. A private_key értékét soha ne ossza meg senkivel.
Az onion cím és a privát kulcs előállításának legegyszerűbb módja, ha először létrehoz egy «rögzített» OnionShare-lapot az asztali alkalmazásban, és először elindítja a megosztást. Ez véletlenszerű néven elmenti az állandó beállításokat a .config/onionshare/persistent/ mappába. Az első előállítás után a lap rögzítését feloldhatja. Vagy hagyhatja is a helyén, és az alábbi systemd unitfájlban használhatja azt az állandó fájlt.
Most létrehozhat egy systemd unitfájlt a /etc/systemd/system/onionshare-cli.service helyen. Ügyeljen arra, hogy a User és a Group értékét a saját felhasználójára/csoportjára állítsa, és módosítsa az onionshare-cli bináris fájl, valamint a JSON-konfigurációk és a megosztások elérési útjait is.
A systemd unitfájlnak így kell kinéznie:
[Unit]
Description=OnionShare CLI
After=network.target
[Service]
ExecStart=/home/user/.local/bin/onionshare-cli --persistent /home/user/.config/onionshare/persistent/my-persistent-onion.json /home/user/my-shared-file.txt
Restart=on-failure
User=user
Group=user
[Install]
WantedBy=multi-user.target
Ne feledje, hogy bár a /home/user/my-shared-file.txt meg van adva a my-persistent-onion.json fájl filenames szakaszában, az onionshare-cli parancs argumentumaként is meg kell adni.
A unitfájl létrehozása után feltétlenül futtassa a sudo systemctl daemon-reload parancsot.
Most már futtathatja a sudo systemctl start onionshare-cli.service parancsot. Ha a journalctl telepítve van, futtathatja a sudo journalctl -f -t onionshare-cli parancsot, és látnia kell a szolgáltatás indulásának kimenetét:
[...]
Feb 09 10:14:09 onionshare onionshare-cli[18852]: [6.5K blob data]
Feb 09 10:14:18 onionshare onionshare-cli[18852]: Compressing files.
Feb 09 10:14:18 onionshare onionshare-cli[18852]: Give this address and private key to the recipient:
Feb 09 10:14:18 onionshare onionshare-cli[18852]: http://niktadkcp6z7rym3r5o3j2hnmis53mno5ughvur357xo7jkjvmqrchid.onion
Feb 09 10:14:18 onionshare onionshare-cli[18852]: Private key: RHJSN4VI3NKGDSIWK45CCWTLYOJHA6DQQRQXUID3FXMAILYXWVUQ
Feb 09 10:14:18 onionshare onionshare-cli[18852]: Press Ctrl+C to stop the server
Ha nem szeretné, hogy a felhasználók privát kulcsot használjanak, a my-persistent-onion.json fájl general beállításai között állítsa a public értékét true-ra.
Billentyűparancsok
Az OnionShare asztali alkalmazás a kényelem és az akadálymentesség érdekében néhány billentyűparancsot tartalmaz:
Ctrl T - New Tab
Ctrl X - Closes current tab
A fő módválasztó képernyőn pedig:
Ctrl S - Share mode
Ctrl R - Receive mode
Ctrl W - Website mode
Ctrl C - Chat mode
Ctrl H - Settings tab
A konfigurációs fájl paraméterei
Az OnionShare a beállításait egy JSON-fájlban tárolja. A CLI és az asztali változat is ezt a konfigurációs fájlt használja. A CLI-ben a --config kapcsolóval egyéni konfigurációs fájl elérési útját is megadhatja.
Az alábbiakban a konfigurációs fájl paraméterei és azok jelentése látható. Ha a konfigurációs fájlja itt nem szereplő paramétereket is tartalmaz, azok a régebbi OnionShare-verziókból maradhattak meg, és elavultak lehetnek.
Paraméter |
Típus |
Magyarázat |
|---|---|---|
version |
|
Az OnionShare verziója. Ezt az értéket soha nem kell módosítania. |
connection_type |
|
Az OnionShare Torhoz való csatlakozásának módja. Érvényes lehetőségek: «bundled», «automatic» (a Tor Browser Tor-kapcsolatának használata), «control_port» vagy «socket_file». Alapértelmezett: «bundled» |
control_port_address |
|
A Tor vezérlőportjának IP-címe, ha a |
control_port_port |
|
A Tor vezérlőportjának portszáma, ha a |
socks_address |
|
A Tor SOCKS proxyjának IP-címe, ha a |
socks_port |
|
A Tor SOCKS proxyjának portszáma, ha a |
socket_file_path |
|
A Tor socketfájljának elérési útja, ha a |
auth_type |
|
Ha a Tor vezérlőportjához való hozzáféréshez jelszó szükséges, ez «password» értékre állítható, egyébként «no_auth». Alapértelmezett: «no_auth» |
auth_password |
|
Ha a Tor vezérlőportjához való hozzáféréshez jelszó szükséges, és az |
auto_connect |
|
Az OnionShare automatikusan csatlakozzon-e a Torhoz indításkor. Alapértelmezett: False |
use_autoupdate |
|
Az OnionShare automatikusan keressen-e frissítéseket (Toron keresztül). Ez a beállítás csak macOS- vagy Windows-telepítések esetén érvényes. Alapértelmezett: True. |
autoupdate_timestamp |
|
Az OnionShare legutóbbi frissítéskeresésének időpontja. Alapértelmezett: None |
bridges_enabled |
|
Hidak használatával csatlakozzon-e a Torhoz. Alapértelmezett: False |
bridges_type |
|
Ha a |
bridges_builtin_pt |
|
Ha a |
bridges_moat |
|
Ha a |
bridges_custom |
|
Ha a |
bridges_builtin |
|
Ha a |
persistent_tabs |
|
Ha a felhasználó bármely lapot «mentettként» határozott meg (vagyis az OnionShare minden indításakor megmarad, és az onion címe nem változik), ezek egy véletlenszerű azonosítót kapnak, amely itt szerepel. Az állandó onion egy ezzel az azonosítóval megegyező nevű JSON-fájlként tárolódik, az OnionShare konfigurációs mappájának «persistent» nevű almappájában. Alapértelmezett: [] |
locale |
|
Az OnionShare által használt nyelvi beállítás (locale). Alapértelmezett: None (ami megegyezik az «en» értékkel). Az érvényes nyelvi kódokat lásd az «available_locales» részben: https://github.com/onionshare/onionshare/blob/main/cli/onionshare_cli/settings.py |
theme |
|
Az OnionShare asztali alkalmazás témája. Érvényes lehetőségek: 0 (a felhasználó számítógépén beállított világos vagy sötét téma automatikus észlelése), 1 (világos) vagy 2 (sötét). |
Az állandó onionok konfigurációs fájljának paraméterei
Ahogy fentebb olvasható, minden «állandó» onion saját paraméterekkel rendelkezik, amelyek a saját JSON-fájljában tárolódnak. A CLI-eszköz számára ennek a fájlnak az elérési útja a --persistent kapcsolóval adható meg.
Íme egy példa állandó JSON-konfigurációra:
{
"onion": {
"private_key": "0HGxILDDwYhxAB2Zq8mM3Wu3MirBgK7Fw2/tVrTw1XraElH7MWbVn3lzKbcJEapVWz2TFjaoCAVN48hGqraiRg==",
"client_auth_priv_key": "UT55HDBA5VSRWOUERMGOHEIBKZCMOOGZAFFNI54GDQFZ6CMCUGIQ",
"client_auth_pub_key": "TPQCMCV26UEDMCWGZCWAWM4FOJSQKZZTVPC5TC3CAGMDWKV255OA"
},
"persistent": {
"mode": "share",
"enabled": true,
"autostart_on_launch": false
},
"general": {
"title": null,
"public": false,
"autostart_timer": false,
"autostop_timer": false,
"service_id": "hvsufvk2anyadehahfqiacy4wbrjt2atpnagk4itlkh4mdfsg6vhd5ad"
},
"share": {
"autostop_sharing": true,
"filenames": [
"/home/user/git/onionshare/desktop/org.onionshare.OnionShare.svg"
],
"log_filenames": false
},
"receive": {
"data_dir": "/home/user/OnionShare",
"webhook_url": null,
"disable_text": false,
"disable_files": false
},
"website": {
"disable_csp": false,
"custom_csp": null,
"log_filenames": false,
"filenames": []
},
"chat": {}
}
Az alábbiakban egy állandó onion konfigurációs fájljának paraméterei és azok jelentése látható, a JSON egyes szakaszai szerint
onion
Paraméter |
Típus |
Magyarázat |
|---|---|---|
private_key |
|
Az onion szolgáltatás Base64 kódolású privát kulcsa |
client_auth_priv_key |
|
A kliens-hitelesítés használatakor alkalmazott privát kulcs. Ezt küldje el a felhasználónak. |
client_auth_pub_key |
|
A kliens-hitelesítés használatakor alkalmazott nyilvános kulcs. Az OnionShare oldalán használatos. |
persistent
Paraméter |
Típus |
Magyarázat |
|---|---|---|
mode |
|
Az állandó onion által használt mód. Lehetőségek: „share”, „receive”, „website” vagy „chat”. |
enabled |
|
Engedélyezve van-e az állandóság ehhez az onionhoz. Ha az asztali alkalmazásban törlik az állandó lehetőség jelölését, ez a teljes JSON-fájl törlődik. Alapértelmezett: true |
autostart_on_launch |
|
Elinduljon-e automatikusan ez az állandó onion az OnionShare indulásakor, a Tor-kapcsolat létrejötte után. Alapértelmezett: false |
general
Paraméter |
Típus |
Magyarázat |
|---|---|---|
title |
|
Az onion szolgáltatáson megjelenítendő, nem kötelező egyéni cím. Alapértelmezett: null (helyette az „OnionShare” jelenik meg) |
public |
|
Elérhető-e az onion szolgáltatás privát kulccsal (kliens-hitelesítés) vagy anélkül. Ha true, nincs szükség privát kulcsra. |
autostart_timer |
|
Be van-e állítva, hogy az onion szolgáltatás egy adott időpontban induljon el. Az időpont az asztali alkalmazásban állítható be, vagy a CLI-eszközben az |
autostop_timer |
|
Be van-e állítva, hogy az onion szolgáltatás egy adott időpontban álljon le. Az időpont az asztali alkalmazásban állítható be, vagy a CLI-eszközben az |
service_id |
|
A 32 karakteres onion szolgáltatás URL-je, séma és a «.onion» utótag nélkül. |
Az alábbiak a fenti persistent szakaszban megadott «mode» értékre jellemző beállítások.
receive
Paraméter |
Típus |
Magyarázat |
|---|---|---|
data_dir |
|
Az az elérési út, ahol a fogadott fájlok vagy szöveges üzenetek tárolódnak. Alapértelmezett: a felhasználó saját könyvtárában található «OnionShare» mappa. |
webhook_url |
|
Webhook URL, amelyre az OnionShare POST kérést küld, amikor fájlokat vagy szöveges üzeneteket fogad. Alapértelmezett: null |
disable_text |
|
Le legyen-e tiltva a szöveges üzenetek fogadása. Alapértelmezett: false |
disable_files |
|
Le legyen-e tiltva a fájlok fogadása. Alapértelmezett: false |
max_upload_size |
|
Egyetlen feltöltési kérés maximális mérete bájtban (a multipart többletadatokkal együtt). A 0 azt jelenti, hogy nincs korlát. Alapértelmezett: 0 |
max_upload_size_total |
|
A max_upload_size a szolgáltatás teljes élettartamára vonatkozik-e, azaz az összesített méret elérése után minden további feltöltés elutasításra kerül-e. Alapértelmezett: false |
total_upload_size |
|
A szolgáltatás által fogadott bájtok futó összege, amely tárolásra kerül, így az élettartamra vonatkozó korlát az újraindítások után is megmarad. Automatikusan kezelt; a számláló nullázásához állítsa 0-ra. Alapértelmezett: 0 |
website
Paraméter |
Típus |
Magyarázat |
|---|---|---|
disable_csp |
|
Ha az értéke |
custom_csp |
|
Az alapértelmezett helyett küldendő egyéni Content Security Policy fejléc. |
log_filenames |
|
A CLI-eszköz használatakor naplózza-e az URL-kéréseket a szabványos kimenetre (stdout). Alapértelmezett: false |
filenames |
|
A megosztandó fájlok listája. Alapértelmezett: [] |
chat
A csevegő módnak jelenleg nincsenek konfigurálható beállításai.