diff --git a/CHANGELOG.md b/CHANGELOG.md index a7218a72..d18d0011 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ ### zeronet-conservancy 0.7.5+ maintainers: @caryoscelus, @d4708, @FraYoshi, @prtngn +- easier termux startup script (@unmanbearpig) +- Brazilian Portuguese readme translation (@iFallenHunt) +- reduce fingerprinting information (@caryoscelus) +- only enable site donations when activated (@caryoscelus) +- new docker files (@prtngn) +- updated Russian readme (@Programmator9000) - multiple improvements in sidebar button UX and icons (@d4708) - fuller debug messages (@caryoscelus) - new contributions are GPLv3+ diff --git a/README-ptbr.md b/README-ptbr.md new file mode 100644 index 00000000..1421b9d0 --- /dev/null +++ b/README-ptbr.md @@ -0,0 +1,162 @@ +# zeronet-conservancy + +[in English](README.md) | [по-русски](README-ru.md) | [简体中文](README-zh-cn.md) + +zeronet-conservancy é um garfo/continuação do projeto [ZeroNet](https://github.com/HelloZeroNet/ZeroNet) +(que foi abandonada por seu criador) que se dedica a sustentar a rede p2p existente e a desenvolver +seus valores de descentralização e liberdade, enquanto muda gradualmente para uma rede mais bem projetada + +## Por que garfo? + +Durante a crise da onion-v3, precisávamos de um garfo que funcionasse com onion-v3 e não dependesse da confiança de um ou +duas pessoas. Este garfo começou a partir do cumprimento dessa missão, implementando mudanças mínimas para +[ZeroNet/py3](https://github.com/HelloZeroNet/ZeroNet/tree/py3) ramo que é fácil de ser auditado por qualquer pessoa. Enquanto +você ainda pode usar as primeiras liberações do garfo para fazer funcionar a onion-v3, o objetivo deste garfo mudou desde então +e nos dedicamos a resolver mais problemas e melhorar a experiência do usuário e a segurança por toda parte, até +a nova rede, completamente transparente e auditada está pronta e este projeto pode ser colocado para descansar + +## Por que 0net? + +* Acreditamos em redes e comunicação abertas, livres e não censuradas. +* Nenhum ponto único de falha: O site permanece online desde que pelo menos 1 par seja + servindo-o. +* Sem custos de hospedagem: Os sites são servidos por visitantes. +* Impossível de ser desligado: Não está em lugar nenhum porque está em toda parte. +* Rápido e funciona offline: Você pode acessar o site, mesmo que a Internet seja + indisponível. + + +## Características + + * Sites atualizados em tempo real + * Clonar websites em um clique + * Autorização sem senha usando chaves públicas/privadas + * Servidor SQL integrado com sincronização de dados P2P: permite um desenvolvimento dinâmico mais fácil do site + * Anonimato: Suporte de rede Tor com serviços ocultos .onion (incluindo suporte a onion-v3) + * conexões criptografadas TLS (através de clearnet) + * Abertura automática da porta uPnP (se optado por entrar) + * Plugin para suporte multiusuário (openproxy) + * Funciona com qualquer navegador/OS moderno + + +## Como funciona? + +* Após iniciar o `zeronet.py` você poderá visitar os sites da zeronet utilizando + `http://127.0.0.1:43110/{zeronet_address}` (ex. + `http://127.0.0.1:43110/126NXcevn1AUehWFZLTBw7FrX1crEizQdr`). +* Quando você visita um novo site zeronet, ele tenta encontrar pares usando o BitTorrent + para poder baixar os arquivos do site (html, css, js...) a partir deles. +* Cada site visitado também é servido por você. +* Cada site contém um arquivo `content.json` que contém todos os outros arquivos em um hash sha512 + e uma assinatura gerada usando a chave privada do site. +* Se o proprietário do site (que tem a chave privada para o endereço do site) modificar o + então ele assina o novo `content.json` e o publica para os colegas. + Em seguida, os pares verificam a integridade do `content.json` (utilizando o + assinatura), eles baixam os arquivos modificados e publicam o novo conteúdo para + outros colegas. + +Os links a seguir referem-se à ZeroNet original: + +- [Slideshow sobre criptografia ZeroNet, atualizações de sites, sites multiusuário "](https://docs.google.com/presentation/d/1_2qK1IuOKJ51pgBvllZ9Yu7Au2l551t3XBgyTSvilew/pub?start=false&loop=false&delayms=3000) +- [Perguntas mais freqüentes "](https://zeronet.io/docs/faq/) +- [Documentação do Desenvolvedor da ZeroNet "](https://zeronet.io/docs/site_development/getting_started/) + +## Como aderir + +### Instalar a partir da fonte (recomendado) + +#### Dependências do sistema + +##### Genéricos unix-like (incluindo mac os x) + +Instalar o autoconf e outras ferramentas básicas de desenvolvimento, python3 e pip. + +##### Apt-based (debian, ubuntu, etc) + - `sudo apt update` + - `sudo apt install pkg-config python3-pip python3-venv` + +##### Android/Termux + - install [Termux](https://termux.com/) (no Termux você pode instalar pacotes via `pkg install `) + - Atualização do "pkg". + - Pkg install python automake git binutils" (TODO: verificar nova instalação se há mais dependências para instalar) + - (opcional) `pkg install tor` + - (opcional) rodar tor via comando `tor --ControlPort 9051 --CookieAuthentication 1` (você pode então abrir uma nova sessão deslizando para a direita) + +#### Construindo dependências python & running + - clonar este repo (NOTA: no Android/Termux você deve cloná-lo na pasta "home" do Termux, porque o ambiente virtual não pode viver no `storage/`) + - "python3 -m venv venv" (fazer python ambiente virtual, o último `venv` é apenas um nome, se você usar diferente você deve substituí-lo em comandos posteriores) + - "fonte venv/bin/activate" (activar ambiente) + - `python3 -m pip install -r requirements.txt` (instalar dependências) + - zeronet.py` (**run zeronet-conservancy!**) + - abra a página de desembarque em seu navegador navegando para: http://127.0.0.1:43110/ + - para reiniciá-lo a partir de um terminal novo, você precisa navegar para redirecionar o diretório e: + - "fonte venv/bin/activate + - "python3 zeronet.py + +#### Construir imagem do Docker +- construir imagem 0net: `docker build -t 0net:conservancy . -f Dockerfile` +- ou construir imagem 0net com tor integrado: `docker build -t 0net:conservancy . -f Dockerfile.integrated_tor` +- e dirigi-lo: `docker run --rm -it -v :/app/data -p 43110:43110 -p 26552:26552 0net:conservancy''. +- /caminho/até/0n/dados/diretório - diretório, onde todos os dados serão salvos, incluindo seus certificados secretos. Se você executá-lo com o modo de produção, não remova esta pasta! +- ou você pode executá-lo com o docker-compose: `docker compose up -d 0net` sobe dois containers - 0net e tor separadamente. +- ou: "docker compose up -d 0net-tor" para rodar 0net e tor em um recipiente. + +#### roteiro alternativo + - após instalar as dependências gerais e clonagem repo (como acima), execute `start-venv.sh` que criará um ambiente virtual para você e instalará os requisitos python + - mais roteiros de conveniência a serem adicionados em breve + +## Limitações atuais + +* As transações de arquivos não são comprimidas +* Sem sites privados +* Sem suporte de DHT +* Elementos centralizados como o zeroid (estamos trabalhando nisso!) +* Nenhuma proteção confiável contra spam (e nisto também) +* Não funciona diretamente do navegador (uma das principais prioridades para o futuro médio) +* Sem transparência de dados + + +## Como posso criar um site ZeroNet? + + Clique em **⋮*** > **"Criar site novo, vazio "** item do menu [página admin](http://127.0.0.1:43110/126NXcevn1AUehWFZLTBw7FrX1crEizQdr). + * Você será **re-direcionado *** para um site completamente novo que só pode ser modificado por você! + * Você pode encontrar e modificar o conteúdo de seu site no diretório **data/[endereço de seu site]**. + * Após as modificações abrir seu site, arraste o botão superior direito "0" para a esquerda, depois pressione **sign** e **publish** botões na parte inferior + +Próximos passos: [Documentação do Desenvolvedor da ZeroNet](https://zeronet.io/docs/site_development/getting_started/) + +## Ajude este projeto a permanecer vivo + +### Torne-se um mantenedor + +Precisamos de mais mantenedores! Torne-se um hoje! Você não precisa saber como codificar, +há muito mais trabalho a ser feito. + +### Corrigir bugs e adicionar recursos + +Decidimos ir em frente e fazer uma web p2p perfeita, então precisamos de mais ajuda +implementando-o. + +#### Faça seu site/bring seu conteúdo + +Sabemos que a documentação está faltando, mas tentamos o melhor para apoiar qualquer um +que quer migrar. Não hesite em perguntar. + +#### Use-o e espalhe a palavra + +Certifique-se de dizer às pessoas por que você usa 0net e este garfo em particular! Pessoas +precisam conhecer suas alternativas. + +### Mantenedores de suporte financeiro + +Atualmente, o principal desenvolvedor/mantenedor deste garfo é @caryoscelus. Você pode +veja maneiras de doar para eles em https://caryoscelus.github.io/donate/ (ou verifique +sidebar se você estiver lendo isto no github para mais maneiras). À medida que nossa equipe cresce, nós +também criará contas de equipe em plataformas amigáveis de financiamento de multidões. + +Se você quiser ter certeza de que sua doação é reconhecida como doação para isto +projeto, também há um endereço dedicado ao bitcoin para isso: +1Kjuw3reZvxRVNs27Gen7jPJYCn6LY7Fg6 + +Se você quiser doar de uma maneira diferente, sinta-se à vontade para contatar o mantenedor ou +criar uma publicação! \ No newline at end of file diff --git a/README-ru.md b/README-ru.md index 943ea8d8..c19d2874 100644 --- a/README-ru.md +++ b/README-ru.md @@ -1,6 +1,6 @@ # zeronet-conservancy -[English](./README.md) [简体中文](./README-zh-cn.md) +[in English](README.md) | [em português](README-ptbr.md) | [简体中文](README-zh-cn.md) zeronet-conservancy — это форк/продолжение проекта [ZeroNet](https://github.com/HelloZeroNet/ZeroNet) (покинутого его создателем), предназначенный для поддержки существующей сети p2p и развития @@ -58,9 +58,13 @@ zeronet-conservancy — это форк/продолжение проекта [Z #### [Документация разработчика ZeroNet »](https://zeronet.io/docs/site_development/getting_started/) #### [Скриншоты в ZeroNet документации »](https://zeronet.io/docs/using_zeronet/sample_sites/) -## Как вступить +## Как присоединиться -### Install from source (recommended) +### Установить из репозитория вашего дистрибутива + +- NixOS: https://search.nixos.org/packages?channel=22.05&show=zeronet-conservancy&type=packages&query=zeronet-conservancy + +### Установить из исходного кода (рекомендовано) #### System dependencies diff --git a/README-zh-cn.md b/README-zh-cn.md index fabdb0e5..b9b86d66 100644 --- a/README-zh-cn.md +++ b/README-zh-cn.md @@ -1,9 +1,8 @@ -# ZeroNet [![Build Status](https://travis-ci.org/HelloZeroNet/ZeroNet.svg?branch=py3)](https://travis-ci.org/HelloZeroNet/ZeroNet) [![Documentation](https://img.shields.io/badge/docs-faq-brightgreen.svg)](https://zeronet.io/docs/faq/) [![Help](https://img.shields.io/badge/keep_this_project_alive-donate-yellow.svg)](https://zeronet.io/docs/help_zeronet/donate/) +# zeronet-conservancy -[English](./README.md) - -使用 Bitcoin 加密和 BitTorrent 网络的去中心化网络 - https://zeronet.io +**警告**:这个翻译已经过时了。请阅读英文版。对此翻译的任何贡献都将受到高度赞赏 +[in English](README.md) | [em português](README-ptbr.md) | [по-русски](README-ru.md) ## 为什么? @@ -16,7 +15,6 @@ ## 功能 * 实时站点更新 - * 支持 Namecoin 的 .bit 域名 * 安装方便:只需解压并运行 * 一键克隆存在的站点 * 无需密码、基于 [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) @@ -48,46 +46,12 @@ ## 屏幕截图 -![Screenshot](https://i.imgur.com/H60OAHY.png) -![ZeroTalk](https://zeronet.io/docs/img/zerotalk.png) - #### [ZeroNet 文档中的更多屏幕截图 »](https://zeronet.io/docs/using_zeronet/sample_sites/) ## 如何加入 -### Windows - - 下载 [ZeroNet-py3-win64.zip](https://github.com/HelloZeroNet/ZeroNet-win/archive/dist-win64/ZeroNet-py3-win64.zip) (18MB) - - 在任意位置解压缩 - - 运行 `ZeroNet.exe` - -### macOS - - - 下载 [ZeroNet-dist-mac.zip](https://github.com/HelloZeroNet/ZeroNet-dist/archive/mac/ZeroNet-dist-mac.zip) (13.2MB) - - 在任意位置解压缩 - - 运行 `ZeroNet.app` - -### Linux (x86-64bit) - - - `wget https://github.com/HelloZeroNet/ZeroNet-linux/archive/dist-linux64/ZeroNet-py3-linux64.tar.gz` - - `tar xvpfz ZeroNet-py3-linux64.tar.gz` - - `cd ZeroNet-linux-dist-linux64/` - - 使用以下命令启动 `./ZeroNet.sh` - - 在浏览器打开 http://127.0.0.1:43110/ 即可访问 ZeroHello 页面 - - __提示:__ 若要允许在 Web 界面上的远程连接,使用以下命令启动 `./ZeroNet.sh --ui_ip '*' --ui_restrict your.ip.address` - -### 从源代码安装 - - - `wget https://github.com/HelloZeroNet/ZeroNet/archive/py3/ZeroNet-py3.tar.gz` - - `tar xvpfz ZeroNet-py3.tar.gz` - - `cd ZeroNet-py3` - - `sudo apt-get update` - - `sudo apt-get install python3-pip` - - `sudo python3 -m pip install -r requirements.txt` - - 使用以下命令启动 `python3 zeronet.py` - - 在浏览器打开 http://127.0.0.1:43110/ 即可访问 ZeroHello 页面 ## 现有限制 @@ -99,7 +63,7 @@ ## 如何创建一个 ZeroNet 站点? - * 点击 [ZeroHello](http://127.0.0.1:43110/1HeLLo4uzjaLetFx6NH3PMwFP3qbRbTf3D) 站点的 **⋮** > **「新建空站点」** 菜单项 + * 点击 [ZeroHello](http://127.0.0.1:43110/126NXcevn1AUehWFZLTBw7FrX1crEizQdr) 站点的 **⋮** > **「新建空站点」** 菜单项 * 您将被**重定向**到一个全新的站点,该站点只能由您修改 * 您可以在 **data/[您的站点地址]** 目录中找到并修改网站的内容 * 修改后打开您的网站,将右上角的「0」按钮拖到左侧,然后点击底部的**签名**并**发布**按钮 @@ -108,16 +72,8 @@ ## 帮助这个项目 -- Bitcoin: 1QDhxQ6PraUZa21ET5fYUCPgdrwBomnFgX -- Paypal: https://zeronet.io/docs/help_zeronet/donate/ - -### 赞助商 - -* [BrowserStack.com](https://www.browserstack.com) 使更好的 macOS/Safari 兼容性成为可能 +- Bitcoin: 1Kjuw3reZvxRVNs27Gen7jPJYCn6LY7Fg6 #### 感谢您! * 更多信息,帮助,变更记录和 zeronet 站点:https://www.reddit.com/r/zeronet/ -* 前往 [#zeronet @ FreeNode](https://kiwiirc.com/client/irc.freenode.net/zeronet) 或 [gitter](https://gitter.im/HelloZeroNet/ZeroNet) 和我们聊天 -* [这里](https://gitter.im/ZeroNet-zh/Lobby)是一个 gitter 上的中文聊天室 -* Email: hello@zeronet.io (PGP: [960F FF2D 6C14 5AA6 13E8 491B 5B63 BAE6 CB96 13AE](https://zeronet.io/files/tamas@zeronet.io_pub.asc)) diff --git a/README.md b/README.md index 1c4ea57c..b4c71302 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # zeronet-conservancy +[по-русски](README-ru.md) | [em português](README-ptbr.md) | [简体中文](README-zh-cn.md) + zeronet-conservancy is a fork/continuation of [ZeroNet](https://github.com/HelloZeroNet/ZeroNet) project (that has been abandoned by its creator) that is dedicated to sustaining existing p2p network and developing its values of decentralization and freedom, while gradually switching to a better designed network @@ -60,6 +62,10 @@ Following links relate to original ZeroNet: ## How to join +### Install from your distribution repository + +- NixOS: https://search.nixos.org/packages?channel=22.05&show=zeronet-conservancy&type=packages&query=zeronet-conservancy + ### Install from source (recommended) #### System dependencies diff --git a/src/Config.py b/src/Config.py index 5fd9c091..d2aecc6e 100644 --- a/src/Config.py +++ b/src/Config.py @@ -82,6 +82,75 @@ class Config(object): def createArguments(self): trackers = [ # more trackers from Syncronite (TODO: check if any of the old ones still work) + 'zero://145.239.95.38:15441', + 'zero://23.184.48.134:15441', + 'zero://95.110.227.231:15441', + 'zero://styromaniac.com:15441', + 'zero://2kcb2fqesyaevc4lntogupa4mkdssth2ypfwczd2ov5a3zo6ytwwbayd.onion:15441', + 'zero://zy7wttvjtsijt5uwmlar4yguvjc2gppzbdj4v6bujng6xwjmkdg7uvqd.onion:15441', + 'zero://gugt43coc5tkyrhrc3esf6t6aeycvcqzw7qafxrjpqbwt4ssz5czgzyd.onion:15441', + 'zero://57hzgtu62yzxqgbvgxs7g3lfck3za4zrda7qkskar3tlak5recxcebyd.onion:15445', + 'zero://hb6ozikfiaafeuqvgseiik4r46szbpjfu66l67wjinnyv6dtopuwhtqd.onion:15445', + 'zero://ow7in4ftwsix5klcbdfqvfqjvimqshbm2o75rhtpdnsderrcbx74wbad.onion:15441', + 'zero://skdeywpgm5xncpxbbr4cuiip6ey4dkambpanog6nruvmef4f3e7o47qd.onion:15441', + 'zero://rlcjomszyitxpwv7kzopmqgzk3bdpsxeull4c3s6goszkk6h2sotfoad.onion:15441', + 'udp://tracker.opentrackr.org:1337/announce', + 'udp://tracker.moeking.me:6969/announce', + 'udp://tracker.altrosky.nl:6969/announce', + 'udp://torrentclub.space:6969/announce', + 'http://tracker.logirl.moe:17052/announce', + 'udp://p4p.arenabg.com:1337/announce', + 'http://tracker.files.fm:6969/announce', + 'udp://opentracker.i2p.rocks:6969/announce', + 'http://open.acgnxtracker.com:80/announce', + 'udp://fe.dealclub.de:6969/announce', + 'udp://tracker.publictracker.xyz:6969/announce', + 'udp://tracker.0x.tf:6969/announce', + 'udp://tracker.openbittorrent.com:6969/announce', + 'udp://vibe.sleepyinternetfun.xyz:1738/announce', + 'udp://tracker.jordan.im:6969/announce', + 'udp://tracker.pomf.se:80/announce', + 'http://tracker.mywaifu.best:6969/announce', + 'udp://open.xxtor.com:3074/announce', + 'udp://open.stealth.si:80/announce', + 'http://t.nyaatracker.com:80/announce', + 'http://tracker.ipv6tracker.ru:80/announce', + 'http://tracker.noobsubs.net:80/announce', + 'udp://movies.zsw.ca:6969/announce', + 'http://bt.okmp3.ru:2710/announce', + 'udp://zecircle.xyz:6969/announce', + 'udp://exodus.desync.com:6969/announce', + 'http://t.acg.rip:6699/announce', + 'http://fxtt.ru:80/announce', + 'udp://run.publictracker.xyz:6969/announce', + 'udp://open.free-tracker.ga:6969/announce', + 'udp://v2.iperson.xyz:6969/announce', + 'udp://960303.xyz:6969/announce', + 'http://t.overflow.biz:6969/announce', + 'udp://tracker.dump.cl:6969/announce', + 'udp://oldboystudy.com:6969/announce', + 'udp://tracker1.bt.moack.co.kr:80/announce', + 'udp://tracker.torrent.eu.org:451/announce', + 'udp://mirror.aptus.co.tz:6969/announce', + 'http://tracker3.ctix.cn:2095/announce', + 'http://tracker2.ctix.cn:2095/announce', + 'udp://tracker1.myporn.club:9337/announce', + 'udp://bt1.archive.org:6969/announce', + 'udp://ipv4.tracker.harry.lu:80/announce', + 'udp://mts.tvbit.co:6969/announce', + 'http://tracker3.520.jp:2095/announce', + 'udp://public.publictracker.xyz:6969/announce', + 'https://tracker.nodetopia.xyz:443/announce', + 'udp://bubu.mapfactor.com:6969/announce', + 'http://tracker2.520.jp:2095/announce', + 'https://track.plop.pm:8989/announce', + 'udp://bt2.archive.org:6969/announce', + 'http://uraniumhexafluori.de:1919/announce', + 'http://tracker.skyts.net:6969/announce', + 'http://vps02.net.orel.ru:80/announce', + 'udp://www.torrent.eu.org:451/announce', + 'udp://bclearning.top:6969/announce', + 'zero://kgsvasoakvj4gnjiy7zemu34l3hq46dn5eauqkn76jpowmilci5t2vqd.onion:15445', 'zero://hb6ozikfiaafeuqvgseiik4r46szbpjfu66l67wjinnyv6dtopuwhtqd.onion:15445', 'zero://75pmmcbp4vvo2zndmjnrkandvbg6jyptygvvpwsf2zguj7urq7t4jzyd.onion:7777', @@ -274,7 +343,7 @@ class Config(object): self.parser.add_argument('--open_browser', help='Open homepage in web browser automatically', nargs='?', const="default_browser", metavar='browser_name') - self.parser.add_argument('--homepage', help='Web interface Homepage', default='126NXcevn1AUehWFZLTBw7FrX1crEizQdr', + self.parser.add_argument('--homepage', help='Web interface Homepage', default='191CazMVNaAcT9Y1zhkxd9ixMBPs59g2um', metavar='address') # self.parser.add_argument('--updatesite', help='Source code update site', default='1uPDaT3uSyWAPdCv1WkMb5hBQjWSNNACf', # metavar='address') diff --git a/src/Ui/UiWebsocket.py b/src/Ui/UiWebsocket.py index cf386e8a..cfae3743 100644 --- a/src/Ui/UiWebsocket.py +++ b/src/Ui/UiWebsocket.py @@ -859,7 +859,7 @@ class UiWebsocket(object): @flag.admin def actionPermissionDetails(self, to, permission): if permission == "ADMIN": - self.response(to, _["Modify your client's configuration and access all site"] + " " + _["(Dangerous!)"] + "") + self.response(to, _["Allow this site to administrate your 0net node"] + " " + _["(Make sure you trust site developer before accepting!)"] + "") elif permission == "NOSANDBOX": self.response(to, _["Modify your client's configuration and access all site"] + " " + _["(Dangerous!)"] + "") elif permission == "PushNotification": diff --git a/termux.sh b/termux.sh new file mode 100644 index 00000000..1eb365b1 --- /dev/null +++ b/termux.sh @@ -0,0 +1,20 @@ + +# Script for running zeronet-conservancy in Termux on Android + +if [[ -d zeronet-conservancy ]]; then + cd zeronet-conservancy + git pull --ff-only +else + git clone https://github.com/zeronet-conservancy/zeronet-conservancy + cd zeronet-conservancy +fi + +pkg update -y +pkg install -y python automake git binutils tor + +echo "Starting tor..." +tor --ControlPort 9051 --CookieAuthentication 1 >/dev/null & + +echo "Starting zeronet-conservancy..." +./start-venv.sh +cd ..