• 0 Posts
  • 7 Comments
Joined 2 years ago
cake
Cake day: June 20th, 2023

help-circle
  • Hadn’t heard about PirateBox before – love the concept, but nah aside from a small amount of overlap they’re very different things :-)

    When users join the PirateBox wireless network and open a web browser, they are automatically redirected to the PirateBox welcome page. Users can anonymously chat, post images or comments on the bulletin board, watch or listen to streaming media, or upload and download files inside their web browser.

    I guess if you put copyparty on a raspberry pi (or boot the copyparty live-cd on a nuc) then you get something vaguely similar – a wifi node where you can download and upload files, but none of the other stuff (chat, messageboard, captive portal). Maybe cool ideas for future spinoff projects hehe


  • Mind if I suggest my own software, copyparty?

    Regarding authentication, someone who has an account (in this case just yourself) can create password-protected shares which other people can browse, or upload, or browse+upload to (configurable when creating the share).

    There is WebDAV support, and it should integrate well enough with shares, but I haven’t tested that specifically.

    It has photo and video thumbnails, and a basic image-viewer, and with some elbow-grease it can also show exif-tags (gps-coordinates etc).

    There is also optional file dedup, so if two people upload the same file, it’ll detect and skip that during the 2nd upload (doesn’t waste any bandwidth) and swap out the new file with a symlink to the existing one. Default disabled to avoid surprising someone with symlinks.

    I think the following command would be enough to get you started:

    wget https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py
    python3 copyparty-sfx.py -a sintan:yourpassword -v .::A,sintan --shr=/shr -e2dsa -e2ts
    

    but since that’s entirely unreadable, you can do it with a config file instead,

    [global]
      e2dsa  # enable filesystem indexing 
      e2ts  # enable media indexing (music tags)
      shr: /shr  # enable shares under this url
    
    [accounts]
      sintan: yourpassword 
    
    [/]  # create a volume at this url
      /srv/share/partypics  # the filesystem path to share
      accs:
        sintan: A  # give sintan read-write-move-delete-admin
    

    and use it like this:

    python3 copyparty-sfx.py -c the.conf
    

    there’s another example here and here for inspiration.






  • good idea, but a slight correction - mDNS and SSDP are entirely different things, rather SSDP was Microsoft’s initial proprietary take on the idea, and mDNS was created as the new and improved standard.

    mDNS does multicast (send/receive) on 224.0.0.251 and ff02::fb on port 5353, while SSDP uses 239.255.255.250 on port 1900 as you mentioned.

    But I think OP’s issue is that they’re on different subnets; mDNS expects the server and the client to have a perfectly overlapping subnets inside the same LAN. If the server has 10.0.0.3/16 and 192.168.1.3/24 then the client must also have 10.0.0.7/16 and 192.168.1.7/24. Or, if you can tell the server software exactly which IPs to announce, then that might work too.

    there are workarounds to this, using avahi reflector, but that thing is buggy – specifically you need to disable NSEC on the server, and lock it to either IPv4 or IPv6.

    I made some note on additional pitfalls while i was writing my own mDNS and SSDP servers for fun, they’re at the bottom of this page: https://ocv.me/copyparty/helptext.html