• 0 Posts
  • 23 Comments
Joined 1 year ago
cake
Cake day: June 5th, 2023

help-circle



  • You could sandbox it into a work profile that doesn’t have access to your main profile. Storage is completely segregated, and the work profile can be easily disabled when you’re not using it.

    The best solution is obviously to choose another platform and convince your girlfriend to use that, explaining how this little extra effort on her part to use another app goes a long way with you in terms of appreciation and understanding of a partner’s boundaries and comfort zone.




  • I use Clipious, an Android client for Invidious, on my phone. I selfhost my own Indivious instance so this is perfect in that my phone never connects to YouTube directly, and I can save all my subscriptions in one place without a YouTube account.

    On my Android TV I use Smart Tube Next. If I really need to cast, I also have YouTube ReVanced on my phone for just that, but I barely use it.

    As soon as Clipious gets a proper Android TV interface, I’ll be set, as both devices can just connect to Invidious and let it do all the work.





  • You’re seeing that toast about versions since backend version 0.18.0 switched away from using a websockets-based API to a REST API, and the Jerboa client app is (in a not-so-descriptive way) warning you that the backend you are connected to isn’t aligned with the app version in terms of what it expects of the backed. This should go away pretty soon as more servers update their backend version and the Jerboa app update hits more devices.


  • It’s awesome to see Lemmy getting lots of love, and choice in the mobile app space is great for everyone. But some part of me also kind of wishes that rather than spreading so much development effort out over so many mobile apps, that more developers would jump in and contribute to polishing up the official open source Lemmy mobile app, Jerboa. I can’t help but feel that it would be nice to see a focused effort somewhere in bringing that one in particular up to snuff, as a sort of “reference” app. And have a few others floating around out there just for some diversity and testing innovative ideas.

    Maybe it’s already that way, I don’t know. It kind of feels like there’s a new Lemmy mobile app announced every couple of days.



  • However, that’s come with other tradeoffs in useability, speed, and fediration experience.

    Like what? If properly configured none of the things listed should negatively impact hosting a Lemmy instance.

    sure I’ll be adding an exception/rule for that, but it’s not a straight forward task.

    It honestly should be to someone who would be hosting any public web application using Cloudflare. Cloudflare makes all of this quite easy, even to those with less experience.

    Heck, the removal of websockets will require quite a few changes in my Cloudflare config.

    What config are you referring to? In the Cloudflare console? For websockets changing to a REST API implementation there should be nothing at all you need to do.

    Sure, someone truly concerned with security knows to do this, but that’s definitely not going to be everyone

    And it shouldn’t have to be everyone, only those who take on the responsibility of hosting a public web application such as a Lemmy instance.

    No matter the capabilities inherent in what you choose to host, the onus rests on the owner of the infrastructure to secure it.

    Everyone should be free to host anything they want at whatever level of security (even none) if that’s what they want to do. But it’s not reasonable not appropriate to expect it to be done for you by way of application code. It’s great if security is baked in, that’s wonderful. But it doesn’t replace other mitigations that according to best practices should rightfully be in place.


  • There’s nothing stopping instance owners from incorporating their own security measures into their infrastructure as they see fit, such as a reverse proxy with a modern web application firewall, solutions such as Cloudflare and the free captcha capabilities they offer, or a combination of those and/or various other protective measures. If you’re hosting your own Lemmy instance and exposing it to the public, and you don’t understand what would be involved in the above examples or have no idea where to start, then you probably shouldn’t be hosting a public Lemmy instance in the first place.

    It’s generally not a good idea to rely primarily on security to be baked into application code and call it a day. I’m not up to date on this news and all of the nuances yet, I’ll look into it after I’ve posted this, but what I said above holds true regardless.

    The responsibility of security of any publicly hosted web application or service rests squarely on the owner of the instance. It’s up to you to secure your infrastructure, and there are very good and accepted best practice ways of doing that outside of application code. Something like losing baked in captcha in a web application should come as no big deal to those who have the appropriate level of knowledge to responsibly host their instance.

    From what this seems to be about, it seems like a non-issue, unless you’re someone who is relying on baked in security to cover for your lack of expertise in properly securing your instance and mitigating exploitation by bots yourself.

    I’m not trying to demean anyone or sound holier than thou, but honestly, please don’t rely on the devs for all of your security needs. There are ways to keep your instance secure that doesn’t require their involvement, and that are best practice anyways. Please seek to educate yourself if this applies to you, and shore up the security of your own instances by way of the surrounding infrastructure.



  • The main advantage to me is that I can work with Invidious as a backend, and whatever I configure there will reflect in Clipious as a client. So as I subscribe to new channels in Invidious, add or update playlists, etc, Clipious will reflect these changes accordingly. Advantages of selfhosting Invidious that indirectly benefit Clipious are of course built-in adblocking by virtue of how Invidious works, SponsorBlock support, and the ability to cache static assets, such as video thumbnails for faster load times, using a reverse proxy (Nginx is what I use). There’s a lot more we could dive into beyond this, such as no Google account requirement (for enhanced privacy).

    One area where the SmartTubeNext and YouTube ReVanced combo has the advantage is the convenience of being able to cast from your handheld device to your TV. Clipious/Invidious has no casting ability. But I can totally live without that.


  • I just stood up a selfhosted Invidious instance the other day, and I replaced YouTube ReVanced with Clipious (an Invidious client for Android) on my phone. No ads, SponsorBlock built-in, no need for a YouTube/Google account to create subscriptions, playlists, etc. And it’s highly performant since I run it behind a reverse proxy with some custom caching configuration for things like thumbnail images, static assets, etc.

    Clipious can also be installed on an Android TV (has an actual Android TV interface). I’m going to end up installing it on mine, but I’m also using SmartTubeNext at the moment, which does require a YouTube/Google account for subscriptions, playlists, etc, but does have no ads, built-in SponsorBlock, and a slew of other great features. I’ll be keeping both around, since I do sometimes like to cast to my TV, and SmartTubeNext allows for that (Clipious does not, at least at this time).

    Unless YouTube somehow starts dynamically splicing in ads as part of the actual video stream, there’s always going to be a way to block ads, unless they do something pretty elaborate. But that’s probably not worth the effort on their end to go that far, since the vast, vast majority of people won’t know what to do to get around that, nor will they probably care enough to try. But I think it’s clear that DNS blocking using services such as AdGuard Home, PiHole, etc, are going to become less effective over time.


  • Yeah, if you’re running something yourself, you can do pretty much whatever you want in order to protect it. Especially if it’s behind a reverse proxy. Firewalls are great for protecting ports, but reverse proxies can be their own form of protection, and I don’t think a lot of people associate them with “protection” so much. Why expose paths (unauthenticated) that don’t need to be? For instance, in my case with my Lemmy instance, all any other instance needs is access to the /api path which I leave open. And all the other paths are behind basic authentication which I can access, so I can still use the Lemmy web interface on my own instance if I want to. But if I don’t want others browsing to my instance to see what communities have been added, or I don’t want to give someone an easy glance into what comments or posts my profile has made across all instances (for a little more privacy), then I can simply hide that behind the curtain without losing any functionality.

    It’s easy to think of these things when you have relevant experience with web development, debugging web applications, full stack development, and subject matter knowledge in related areas, if you have a tendency to approach things with a security-oriented mindset. I’m not trying to sound arrogant, but honestly my professional experience has a lot to do with how my personal habits have formed around my hobbies. So I have a tendency to take things as far as I can with everything that I know, and stuff like this is the result lol. Might be totally unnecessary without much actual value, but it errs on the side of “a little more secure”, and why not, if it’s fun?


  • Containers really shine in the selfhosting world in modern times. Complete userspace isolation, basically no worries about dependencies or conflicts since it’s all internally shipped and pre-configured, easy port mapping, immutable “system” files and volume mounting for persistent data… And much more. If built properly, container images solve almost all problems you’re grappling with.

    I can’t imagine ever building another application myself without containerization ever again. I can’t remember the last time I installed any kind of server-side software directly on a host without containerization, with the exception of packages required by the host that are unavoidable to support containers or to increase security posture.

    I’m my (admittedly strong) opinion, it’s absolute madness, and dare I say, reckless and incomprehensible, why anybody would ever create a brand new product that doesn’t ship via container images in this day and age, if you have the required knowledge to make it happen, or the capacity to get up to speed to learn how to make it happen (properly and following best practices of course) in time to meet a deadline.

    I’m sure some would disagree or have special use-cases they could cite where containers wouldn’t be a good fit for a product or solution, but I’m pretty confident that those would be really niche cases that would apply to barely anyone.