From 8a0ea3ea75dc519d5445df070a32f1e55987cc30 Mon Sep 17 00:00:00 2001 From: Jocomol Date: Thu, 7 Oct 2021 22:39:03 +0200 Subject: added radicale --- index.html | 1 + pix/radicale.svg | 10 ++++++++ radicale.html | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 pix/radicale.svg create mode 100644 radicale.html diff --git a/index.html b/index.html index b5e9663..f7bb287 100644 --- a/index.html +++ b/index.html @@ -76,6 +76,7 @@ img { border: none ;}
git
Version control software on your own server
Cgit
A hyperfast web frontend for git repositories
Gitea
A fully-featured git and issue tracking site
+
Radicale
A small but powerful calDav and cardDav server
IRC
Installing and managing a classic internet relay chat server
RSS Bridge
Creating RSS feeds for social media sites
Calibre
A library server
diff --git a/pix/radicale.svg b/pix/radicale.svg new file mode 100644 index 0000000..546d3d1 --- /dev/null +++ b/pix/radicale.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/radicale.html b/radicale.html new file mode 100644 index 0000000..35dbf7d --- /dev/null +++ b/radicale.html @@ -0,0 +1,70 @@ + + + + Setting up Radicale – LandChad.net + + + + + + + +

Setting up a calDAV server - Radicale

+ +
+ +

Radicale is an open source calDAV server. CalDAV is a widely supported internet standard for calendars, todo-lists and contacts. Hosting your own calDAV server allows sharing calendars between mutliple devices.

+

More information can be found on the projects offical website: radicale.org.

+

Installing Radicale

+

Firstly, we have to install radicale on our system, luckily for us radicale is packaged for the most used distros.

+
apt install radicale apache2-utils
+

Next we need to configure Radicale. We configure radicale to be accessible from other machines, how Radicale and where the files should be stored. Open /etc/radicale/config with your favourite editor and add this configuration.

+
[server]
+# Bind all addresses
+hosts = 0.0.0.0:5232, [::]:5232
+
+[auth]
+type = htpasswd
+htpasswd_filename = /etc/radicale/users
+htpasswd_encryption = md5
+
+[storage]
+filesystem_folder = /var/lib/radicale/collections
+ +

As you can see under [auth] we use htpasswd to manage the users. Execute the following command to add a new user to Radicale.

+
htpasswd -c /etc/radicale/users username
+

As Radicale stands now it is fully functional and after starting it by executing its binary, can be accessed under example.org:5232. But there are two additional things we can do to make using and managing Radicale way easier.

+

Setting up a Nginx reverse proxy

+

Because the URL of your Radicale server is an URL you will have to remember and enter it on any device you want to use your calendar on it is advised to set up a reverse proxy.

+
server {
+	listen 443 ssl;
+	listen [::]:443 ssl;
+	server_name cal.example.org;
+	location / {
+		proxy_pass http://localhost:5232/; # The / is important!
+	}
+	# You can also leave these two lines out and use certbot
+	ssl_certificate /etc/ssl/nginx/cal.example.com/fullchain.pem;
+	ssl_certificate_key /etc/ssl/nginx/cal.example.com/privkey.pem;
+}
+

Run as a service

+

Running Radicale as a service makes managing it much easier. Add this config to /etc/systemd/system/radicale.service.

+
[Unit]
+Description=A simple CalDAV (calendar) and CardDAV (contact) server
+
+[Service]
+ExecStart=/usr/bin/env python3 -m radicale
+Restart=on-failure
+
+[Install]
+WantedBy=default.target
+

After creating the config load, start and enable the service with the following commands.

+
systemctl daemon-reload
+systemctl enable --now radicale
+

Contribution

+
  • Author: Jocomol – jocomol.ch -- XMR: 41kLv68Nk4N3zvTRFYtHZfRRFMgXkxK2FcXDeCSa4yNwBGTBa1WQ8HtXL8cCAcoZ2iSLBCS6HQqdpRSf56ecMBgWTkn2ARt +
  • +
    + + + -- cgit v1.2.3 From 3ee7076324f465c2e59339042d0aa924d00b86d8 Mon Sep 17 00:00:00 2001 From: Jocomol Date: Fri, 8 Oct 2021 10:58:46 +0200 Subject: added missing words in a sentence --- radicale.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/radicale.html b/radicale.html index 35dbf7d..029de7c 100644 --- a/radicale.html +++ b/radicale.html @@ -18,7 +18,7 @@

    Installing Radicale

    Firstly, we have to install radicale on our system, luckily for us radicale is packaged for the most used distros.

    apt install radicale apache2-utils
    -

    Next we need to configure Radicale. We configure radicale to be accessible from other machines, how Radicale and where the files should be stored. Open /etc/radicale/config with your favourite editor and add this configuration.

    +

    Next we need to configure Radicale. We configure radicale to be accessible from other machines, how Radicale handles users and where the files should be stored. Open /etc/radicale/config with your favourite editor and add this configuration.

    [server]
     # Bind all addresses
     hosts = 0.0.0.0:5232, [::]:5232
    -- 
    cgit v1.2.3
    
    
    From f5dd8089de3a238a60a1b8f6f87a97f7e7fd4655 Mon Sep 17 00:00:00 2001
    From: Augusto Gunsch 
    Date: Sat, 23 Apr 2022 09:37:25 -0300
    Subject: Change 'and' to 'than'
    
    ---
     prosody.html | 2 +-
     1 file changed, 1 insertion(+), 1 deletion(-)
    
    diff --git a/prosody.html b/prosody.html
    index e5ca89d..07f42b9 100644
    --- a/prosody.html
    +++ b/prosody.html
    @@ -18,7 +18,7 @@
             

    XMPP is a fantastically simple protocol that's usually used as a messenger. It's highly extensible, better than IRC, - lighter and more decentralized and Matrix + lighter and more decentralized than Matrix and Telegram and normie social media can't hold a candle to it.

    -- cgit v1.2.3 From df453b12a8bcc14b0656ef8424dd8c2e2821afc5 Mon Sep 17 00:00:00 2001 From: Charbel Abi Daher <45701489+CharbelAD@users.noreply.github.com> Date: Mon, 2 May 2022 16:51:11 +0300 Subject: Added link to Jitsi documentation on setting up authentication --- jitsi.html | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jitsi.html b/jitsi.html index 3fd42e0..442f6fd 100644 --- a/jitsi.html +++ b/jitsi.html @@ -113,6 +113,11 @@ ufw enable

    When you create a video chatroom, its address will appear as meet.example.org/yourvideochatname and can be shared as such.

    +

    Security

    +

    + The default Jitsi configuration will allow anyone accessing your site to create a video chatroom. If you want to only allow certain people to create rooms, you can check out how to add authentication here in the original documentation. +

    +

    More info

    -- cgit v1.2.3 From 12dd046d2b84a7a2e66feaa00beb1d3a4ad4cfad Mon Sep 17 00:00:00 2001 From: Charbel Abi Daher Date: Tue, 3 May 2022 00:30:50 +0300 Subject: Added Security section to article --- jitsi.html | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 53 insertions(+), 3 deletions(-) diff --git a/jitsi.html b/jitsi.html index 442f6fd..ad15404 100644 --- a/jitsi.html +++ b/jitsi.html @@ -113,11 +113,61 @@ ufw enable

    When you create a video chatroom, its address will appear as meet.example.org/yourvideochatname and can be shared as such.

    -

    Security

    +

    Security

    + +

    + By default, anyone who has access to meet.example.org will be able to create a chatroom. You probably don't want that, so you'll need to set up some authentication. The simplest option is to handle authentication through the local Prosody user database. +

    + +

    Prosody configuration

    +

    + First, we need to enable password authentication in Prosody. Edit /etc/prosody/conf.avail/meet.example.org.cfg.lua, and locate this block: +

    VirtualHost "meet.example.org"
    +    authentication = "anonymous"
    + And change the authentication mode from "anonymous" to "internal_hashed". +

    +

    + Then, to enable guests to login and join your chatrooms, add the following block after the one you just edited: +

    VirtualHost "guest.meet.example.org"
    +    authentication = "anonymous"
    +    c2s_require_encryption = false
    +

    + +

    Jitsi Meet configuration

    - The default Jitsi configuration will allow anyone accessing your site to create a video chatroom. If you want to only allow certain people to create rooms, you can check out how to add authentication here in the original documentation. + Next, in /etc/jitsi/meet/meet.example.org-config.js, uncomment the following line: +

    var config = {
    +    hosts: {
    +        // anonymousdomain: 'guest.jitsi-meet.example.com',
    +    },
    +}
    +
    + And change 'guest.jitsi-meet.example.com' to 'guest.meet.example.org'.

    - + +

    Jicofo configuration

    +

    + Finally, we configure Jicofo to only allow the creation of conferences when the request is coming from an authenticated user. To do so, add the following authentication section to /etc/jitsi/jicofo/jicofo.conf: +

    jicofo {
    +  authentication: {
    +    enabled: true
    +    type: XMPP
    +    login-url: meet.example.org
    + }
    +

    + +

    Create users in Prosody and restart the services

    +

    + You now need to register some users in Prosody, you can do so manually using prosodyctl: +

    prosodyctl register <username> meet.example.org <password>
    +

    +

    + Finally, restart prosody, jicofo, and jitsi-videobridge2: +

    systemctl restart prosody
    +systemctl restart jicofo
    +systemctl restart jitsi-videobridge2
    +

    +

    More info

    -- cgit v1.2.3 From ad1473870278334e59360eccfa9b520f4c00149b Mon Sep 17 00:00:00 2001 From: Adam Lawson Date: Mon, 16 May 2022 16:45:28 +0100 Subject: Added SearXNG Tutorial --- index.html | 1 + pix/searxng.svg | 19 ++++++++ searxng.html | 143 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 163 insertions(+) create mode 100644 pix/searxng.svg create mode 100644 searxng.html diff --git a/index.html b/index.html index 090f204..368847a 100644 --- a/index.html +++ b/index.html @@ -84,6 +84,7 @@ img { border: none ;}

    Calibre
    A library server
    ItoopieI2P
    Host your site on a private and peer-to-peer internet layer.
    Tor
    Host your site on private onion-routing.
    +
    SearXNG
    Setting up a SearXNG metasearch engine.

    Accepting Cryptocurrency Tips

    diff --git a/pix/searxng.svg b/pix/searxng.svg new file mode 100644 index 0000000..417e7ed --- /dev/null +++ b/pix/searxng.svg @@ -0,0 +1,19 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + \ No newline at end of file diff --git a/searxng.html b/searxng.html new file mode 100644 index 0000000..3271899 --- /dev/null +++ b/searxng.html @@ -0,0 +1,143 @@ + + + + Setting up a public SearXNG instance – LandChad.net + + + + + + + +

    Setting up a public SearXNG instance

    + +
    + SearXNG logo +

    + SearXNG is a free internet metasearch engine which aggregates results from more than 70 search services. + This guide sets up a working instance that can be accessed using a domain over HTTPS. + Features include: +

    +
      +
    • Self hosted
    • +
    • No user tracking
    • +
    • No user profiling
    • +
    • About 70 supported search engines
    • +
    • Easy integration with any search engine
    • +
    • Cookies are not used by default
    • +
    • Secure, encrypted connections (HTTPS/SSL)
    • +
    + +

    Installation

    + +

    Install the required packages.

    + +
    apt install git nginx -y
    + +

    Open http and https ports.

    + +
    iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
    +iptables -I INPUT 6 -m state --state NEW -p tcp --dport 443 -j ACCEPT
    +netfilter-persistent save
    +ufw allow 80
    +ufw allow 443
    + +

    Clone the SearXNG Repository.

    + +
    git clone https://github.com/searxng/searxng searxng
    +cd searxng
    + +

    Installing SearXNG, Filtron and Morty.

    + +
    ./utils/searx.sh install all
    +./utils/filtron.sh install all
    +./utils/morty.sh install all
    + +

    Check that both filtron and morty are running.

    + +
    systemctl status filtron
    +systemctl status morty
    + +

    Configure Nginx

    + +

    Delete the default site.

    + +
    rm /etc/nginx/sites-enabled/default
    + +

    Create a new file /etc/nginx/sites-available/searxng.conf and add the following:

    + +
    
    +server {
    +
    +    # Listens on http
    +    listen 80;
    +    listen [::]:80;
    +
    +    # Your server name
    +    server_name searx.example.org;
    +     
    +    # If you want to log user activity, comment these
    +    access_log /dev/null;
    +    error_log  /dev/null;
    +                
    +    # Searx reverse proxy
    +    location / {
    +            proxy_pass         http://127.0.0.1:4004/;
    +                
    +            proxy_set_header   Host             $host;
    +            proxy_set_header   Connection       $http_connection;
    +            proxy_set_header   X-Real-IP        $remote_addr;
    +            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    +            proxy_set_header   X-Scheme         $scheme;
    +            proxy_set_header   X-Script-Name    /searx;
    +    }
    +        
    +    location /searx/static {
    +            alias /usr/local/searx/searx-src/searx/static;
    +    }
    +        
    +    # Morty reverse proxy
    +    location /morty {
    +            proxy_pass         http://127.0.0.1:3000/;
    +               
    +            proxy_set_header   Host             $host;
    +            proxy_set_header   Connection       $http_connection;
    +            proxy_set_header   X-Real-IP        $remote_addr;
    +            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    +            proxy_set_header   X-Scheme         $scheme;
    +    }
    +}
    +        
    + +

    Now create a symbolic link to enable this site.

    + +
    ln -s /etc/nginx/sites-available/searxng.conf /etc/nginx/sites-enabled/searxng.conf
    + +

    Restart Nginx and SearXNG.

    + +
    systemctl restart nginx
    +service uwsgi restart searx
    + +

    Configure HTTPS with Certbot

    + +

    Install certbot.

    + +
    apt install python3-certbot-nginx
    + +

    Install a Let's Encrypt SSL certificate to Nginx and optionally let it configure HTTPS for you. + Detailed instructions and additional information.

    + +
    certbot --nginx
    + +

    SearXNG should now be available from your domain.

    + +

    Configuration

    + +

    You can change settings by editing /etc/searxng/settings.yml.

    + +

    Contribution

    +
  • Author: goshawk22 – website
  • +
    +
    LandChad.net
    Because Everyone should be an Internet LandChad.
  • chad
  • RSS
  • BTC
  • XMR
  • Github
  • + + -- cgit v1.2.3 From 14094ed87cb2490c28eaf28937208987fa978296 Mon Sep 17 00:00:00 2001 From: Mario Marhuenda Date: Wed, 25 May 2022 12:46:35 +0200 Subject: Usind md5 is insecure. Bcrypt is better --- radicale.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/radicale.html b/radicale.html index 029de7c..85bbf14 100644 --- a/radicale.html +++ b/radicale.html @@ -26,14 +26,14 @@ hosts = 0.0.0.0:5232, [::]:5232 [auth] type = htpasswd htpasswd_filename = /etc/radicale/users -htpasswd_encryption = md5 +htpasswd_encryption = bcrypt [storage] filesystem_folder = /var/lib/radicale/collections

    As you can see under [auth] we use htpasswd to manage the users. Execute the following command to add a new user to Radicale.

    htpasswd -c /etc/radicale/users username
    -

    As Radicale stands now it is fully functional and after starting it by executing its binary, can be accessed under example.org:5232. But there are two additional things we can do to make using and managing Radicale way easier.

    +

    As Radicale stands now it is fully functional and after starting it by executing its binary, can be accessed under example.org:5232. But there are two additional things we can do to make using and managing Radicale way easier.

    Setting up a Nginx reverse proxy

    Because the URL of your Radicale server is an URL you will have to remember and enter it on any device you want to use your calendar on it is advised to set up a reverse proxy.

    server {
    -- 
    cgit v1.2.3
    
    
    From 2db64d573a2715bae62dd2ed977e8cf3b2cb4af7 Mon Sep 17 00:00:00 2001
    From: Luke Smith 
    Date: Fri, 27 May 2022 04:01:30 +0000
    Subject: unlicense
    
    ---
     LICENSE.md | 24 ++++++++++++++++++++++++
     1 file changed, 24 insertions(+)
     create mode 100644 LICENSE.md
    
    diff --git a/LICENSE.md b/LICENSE.md
    new file mode 100644
    index 0000000..fdddb29
    --- /dev/null
    +++ b/LICENSE.md
    @@ -0,0 +1,24 @@
    +This is free and unencumbered software released into the public domain.
    +
    +Anyone is free to copy, modify, publish, use, compile, sell, or
    +distribute this software, either in source code form or as a compiled
    +binary, for any purpose, commercial or non-commercial, and by any
    +means.
    +
    +In jurisdictions that recognize copyright laws, the author or authors
    +of this software dedicate any and all copyright interest in the
    +software to the public domain. We make this dedication for the benefit
    +of the public at large and to the detriment of our heirs and
    +successors. We intend this dedication to be an overt act of
    +relinquishment in perpetuity of all present and future rights to this
    +software under copyright law.
    +
    +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
    +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
    +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
    +OTHER DEALINGS IN THE SOFTWARE.
    +
    +For more information, please refer to 
    -- 
    cgit v1.2.3