GET https://kbin.spritesserver.nl/index.php/u/@funkless_eck@sh.itjust.works/active/2024-01-29::2024-01-29

Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
1.92 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.17 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1598
  +user: Proxies\__CG__\App\Entity\User {#2371 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
  +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
  +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
  +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 96
  +favouriteCount: 727
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729505958 {#2131
    date: 2024-10-21 12:19:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2330 …}
  +votes: Doctrine\ORM\PersistentCollection {#2060 …}
  +reports: Doctrine\ORM\PersistentCollection {#2331 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
  +badges: Doctrine\ORM\PersistentCollection {#2325 …}
  +children: [
    App\Entity\EntryComment {#1611
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1598 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +body: """
        As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
        \n
        As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
        \n
        On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
        \n
        Anyway, all that to say - art is a mix of medium and message
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1706536686 {#1711
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@surfrock66@lemmy.world"
        "@domi@lemmy.secnd.me"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1629 …}
      +nested: Doctrine\ORM\PersistentCollection {#1626 …}
      +votes: Doctrine\ORM\PersistentCollection {#1618 …}
      +reports: Doctrine\ORM\PersistentCollection {#1597 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
      -id: 349739
      -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8235659"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706536686 {#1616
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +"title": 349739
    }
  ]
  -id: 33681
  -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551383
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11297090"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706464983 {#2456
    date: 2024-01-28 19:03:03.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
Proxies\__CG__\App\Entity\Entry {#1598
  +user: Proxies\__CG__\App\Entity\User {#2371 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
  +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
  +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
  +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 96
  +favouriteCount: 727
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729505958 {#2131
    date: 2024-10-21 12:19:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2330 …}
  +votes: Doctrine\ORM\PersistentCollection {#2060 …}
  +reports: Doctrine\ORM\PersistentCollection {#2331 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
  +badges: Doctrine\ORM\PersistentCollection {#2325 …}
  +children: [
    App\Entity\EntryComment {#1611
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1598 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +body: """
        As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
        \n
        As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
        \n
        On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
        \n
        Anyway, all that to say - art is a mix of medium and message
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1706536686 {#1711
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@surfrock66@lemmy.world"
        "@domi@lemmy.secnd.me"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1629 …}
      +nested: Doctrine\ORM\PersistentCollection {#1626 …}
      +votes: Doctrine\ORM\PersistentCollection {#1618 …}
      +reports: Doctrine\ORM\PersistentCollection {#1597 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
      -id: 349739
      -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8235659"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706536686 {#1616
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +"title": 349739
    }
  ]
  -id: 33681
  -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551383
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11297090"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706464983 {#2456
    date: 2024-01-28 19:03:03.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1598
  +user: Proxies\__CG__\App\Entity\User {#2371 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
  +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
  +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
  +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 96
  +favouriteCount: 727
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729505958 {#2131
    date: 2024-10-21 12:19:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2330 …}
  +votes: Doctrine\ORM\PersistentCollection {#2060 …}
  +reports: Doctrine\ORM\PersistentCollection {#2331 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
  +badges: Doctrine\ORM\PersistentCollection {#2325 …}
  +children: [
    App\Entity\EntryComment {#1611
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1598 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
      +body: """
        As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
        \n
        As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
        \n
        On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
        \n
        Anyway, all that to say - art is a mix of medium and message
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1706536686 {#1711
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@surfrock66@lemmy.world"
        "@domi@lemmy.secnd.me"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1629 …}
      +nested: Doctrine\ORM\PersistentCollection {#1626 …}
      +votes: Doctrine\ORM\PersistentCollection {#1618 …}
      +reports: Doctrine\ORM\PersistentCollection {#1597 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
      -id: 349739
      -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8235659"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706536686 {#1616
        date: 2024-01-29 14:58:06.0 +01:00
      }
      +"title": 349739
    }
  ]
  -id: 33681
  -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551383
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11297090"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706464983 {#2456
    date: 2024-01-28 19:03:03.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
6 DENIED moderate
App\Entity\EntryComment {#1611
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1598
    +user: Proxies\__CG__\App\Entity\User {#2371 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
    +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
    +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
    +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 96
    +favouriteCount: 727
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729505958 {#2131
      date: 2024-10-21 12:19:18.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2330 …}
    +votes: Doctrine\ORM\PersistentCollection {#2060 …}
    +reports: Doctrine\ORM\PersistentCollection {#2331 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
    +badges: Doctrine\ORM\PersistentCollection {#2325 …}
    +children: [
      App\Entity\EntryComment {#1611}
    ]
    -id: 33681
    -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551383
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/11297090"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706464983 {#2456
      date: 2024-01-28 19:03:03.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +body: """
    As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
    \n
    As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
    \n
    On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
    \n
    Anyway, all that to say - art is a mix of medium and message
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1706536686 {#1711
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@surfrock66@lemmy.world"
    "@domi@lemmy.secnd.me"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1629 …}
  +nested: Doctrine\ORM\PersistentCollection {#1626 …}
  +votes: Doctrine\ORM\PersistentCollection {#1618 …}
  +reports: Doctrine\ORM\PersistentCollection {#1597 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
  -id: 349739
  -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235659"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706536686 {#1616
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +"title": 349739
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
7 DENIED edit
App\Entity\EntryComment {#1611
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1598
    +user: Proxies\__CG__\App\Entity\User {#2371 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
    +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
    +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
    +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 96
    +favouriteCount: 727
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729505958 {#2131
      date: 2024-10-21 12:19:18.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2330 …}
    +votes: Doctrine\ORM\PersistentCollection {#2060 …}
    +reports: Doctrine\ORM\PersistentCollection {#2331 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
    +badges: Doctrine\ORM\PersistentCollection {#2325 …}
    +children: [
      App\Entity\EntryComment {#1611}
    ]
    -id: 33681
    -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551383
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/11297090"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706464983 {#2456
      date: 2024-01-28 19:03:03.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +body: """
    As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
    \n
    As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
    \n
    On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
    \n
    Anyway, all that to say - art is a mix of medium and message
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1706536686 {#1711
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@surfrock66@lemmy.world"
    "@domi@lemmy.secnd.me"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1629 …}
  +nested: Doctrine\ORM\PersistentCollection {#1626 …}
  +votes: Doctrine\ORM\PersistentCollection {#1618 …}
  +reports: Doctrine\ORM\PersistentCollection {#1597 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
  -id: 349739
  -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235659"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706536686 {#1616
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +"title": 349739
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
8 DENIED moderate
App\Entity\EntryComment {#1611
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1598
    +user: Proxies\__CG__\App\Entity\User {#2371 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2350 …}
    +slug: "Does-anyone-else-harvest-the-magnets-and-platters-from-old"
    +title: "Does anyone else harvest the magnets and platters from old drives as a monument to selfhosting history?"
    +url: "https://lemmy.world/pictrs/image/404e8b3c-4c80-4650-be30-7151c2921fc8.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 96
    +favouriteCount: 727
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729505958 {#2131
      date: 2024-10-21 12:19:18.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2330 …}
    +votes: Doctrine\ORM\PersistentCollection {#2060 …}
    +reports: Doctrine\ORM\PersistentCollection {#2331 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2289 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2326 …}
    +badges: Doctrine\ORM\PersistentCollection {#2325 …}
    +children: [
      App\Entity\EntryComment {#1611}
    ]
    -id: 33681
    -titleTs: "'anyon':2 'drive':11 'els':3 'harvest':4 'histori':17 'magnet':6 'monument':14 'old':10 'platter':8 'selfhost':16"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551383
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/11297090"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706464983 {#2456
      date: 2024-01-28 19:03:03.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1630 …}
  +body: """
    As more of an artist than a techie for the most part — if you have your medium or at least part of it — the more interesting thing about art is what you have to say about it.\n
    \n
    As an example, if you want to draw a distinction and comparison between the age of discovery and the age of technology, you could use the hard drives as a canvas on which to paint a portrait of something like Robert Scott / Lawrence Oates, or Jacques Cousteau, or Armstrong and Aldrin etc.\n
    \n
    On that last one - if you could tie the size of the drive in comparison to the size of the code used in the moon landing that might also be interesting.\n
    \n
    Anyway, all that to say - art is a mix of medium and message
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1706536686 {#1711
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@surfrock66@lemmy.world"
    "@domi@lemmy.secnd.me"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1629 …}
  +nested: Doctrine\ORM\PersistentCollection {#1626 …}
  +votes: Doctrine\ORM\PersistentCollection {#1618 …}
  +reports: Doctrine\ORM\PersistentCollection {#1597 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1731 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1723 …}
  -id: 349739
  -bodyTs: "'age':52,57 'aldrin':88 'also':118 'anyway':121 'armstrong':86 'art':29,126 'artist':5 'canva':68 'code':110 'comparison':49,104 'could':61,96 'cousteau':84 'discoveri':54 'distinct':47 'draw':45 'drive':65,102 'etc':89 'exampl':40 'hard':64 'interest':26,120 'jacqu':83 'land':115 'last':92 'lawrenc':80 'least':20 'like':77 'medium':17,131 'messag':133 'might':117 'mix':129 'moon':114 'oat':81 'one':93 'paint':72 'part':12,21 'portrait':74 'robert':78 'say':35,125 'scott':79 'size':99,107 'someth':76 'techi':8 'technolog':59 'thing':27 'tie':97 'use':62,111 'want':43"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235659"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706536686 {#1616
    date: 2024-01-29 14:58:06.0 +01:00
  }
  +"title": 349739
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
9 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
10 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1578
  +user: App\Entity\User {#263 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
  +slug: "I-want-to-get-started-with-arr-apps-here-are"
  +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
  +url: null
  +body: """
    Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
    \n
    Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
    \n
    -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
    \n
    -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
    \n
    -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
    \n
    -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
    \n
    -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
    \n
    -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
    \n
    -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
    \n
    -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
    \n
    -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
    \n
    -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
    \n
    Here’s where the questions start:\n
    \n
    - First of all, is that all correct or have I misunderstood something?\n
    - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
    - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
    - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
    - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
    - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
    - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
    - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
    - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
    - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
    - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
    \n
    If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
    \n
    Thank you so much for your help and time in advance.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 50
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729489624 {#2464
    date: 2024-10-21 07:47:04.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2021 …}
  +votes: Doctrine\ORM\PersistentCollection {#2011 …}
  +reports: Doctrine\ORM\PersistentCollection {#2027 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
  +badges: Doctrine\ORM\PersistentCollection {#2040 …}
  +children: [
    3 => App\Entity\EntryComment {#1595
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706485882 {#1430
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1679 …}
      +nested: Doctrine\ORM\PersistentCollection {#1668 …}
      +votes: Doctrine\ORM\PersistentCollection {#1666 …}
      +reports: Doctrine\ORM\PersistentCollection {#1669 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
      -id: 348311
      -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216696"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706485882 {#1429
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +"title": 348311
    }
    2 => App\Entity\EntryComment {#1564
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +body: """
        > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
        \n
        “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
        \n
        Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
        \n
        > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
        \n
        Do you have any recommendations on how to learn this?\n
        \n
        Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486339 {#1584
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@maynarkh@feddit.nl"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1525 …}
      +nested: Doctrine\ORM\PersistentCollection {#1566 …}
      +votes: Doctrine\ORM\PersistentCollection {#1562 …}
      +reports: Doctrine\ORM\PersistentCollection {#1554 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
      -id: 348342
      -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216902"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486339 {#1548
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +"title": 348342
    }
    1 => App\Entity\EntryComment {#1604
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +body: """
        > Traefik\n
        \n
        I will look into this, thank you.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486392 {#1620
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@Delphiantares@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1619 …}
      +nested: Doctrine\ORM\PersistentCollection {#1701 …}
      +votes: Doctrine\ORM\PersistentCollection {#1687 …}
      +reports: Doctrine\ORM\PersistentCollection {#1689 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
      -id: 348345
      -bodyTs: "'look':4 'thank':7 'traefik':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216929"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486392 {#1613
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +"title": 348345
    }
    0 => App\Entity\EntryComment {#1736
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: """
        that’s a helpful explanation of subnets thank you\n
        \n
        In the paradigm of\n
        \n
        111.222.3.4:5/22\n
        \n
        if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
        \n
        And is there ever a 000.111.222.3.4:5/22 or another add on?
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706540452 {#1721
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1737 …}
      +nested: Doctrine\ORM\PersistentCollection {#1732 …}
      +votes: Doctrine\ORM\PersistentCollection {#1735 …}
      +reports: Doctrine\ORM\PersistentCollection {#1729 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
      -id: 349923
      -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8237581"
      +editedAt: DateTimeImmutable @1729397201 {#1726
        date: 2024-10-20 06:06:41.0 +02:00
      }
      +createdAt: DateTimeImmutable @1706540452 {#1728
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +"title": 349923
    }
  ]
  -id: 33685
  -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
  -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551710
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13654825"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706465310 {#2457
    date: 2024-01-28 19:08:30.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
11 DENIED edit
Proxies\__CG__\App\Entity\Entry {#1578
  +user: App\Entity\User {#263 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
  +slug: "I-want-to-get-started-with-arr-apps-here-are"
  +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
  +url: null
  +body: """
    Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
    \n
    Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
    \n
    -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
    \n
    -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
    \n
    -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
    \n
    -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
    \n
    -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
    \n
    -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
    \n
    -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
    \n
    -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
    \n
    -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
    \n
    -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
    \n
    Here’s where the questions start:\n
    \n
    - First of all, is that all correct or have I misunderstood something?\n
    - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
    - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
    - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
    - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
    - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
    - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
    - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
    - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
    - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
    - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
    \n
    If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
    \n
    Thank you so much for your help and time in advance.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 50
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729489624 {#2464
    date: 2024-10-21 07:47:04.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2021 …}
  +votes: Doctrine\ORM\PersistentCollection {#2011 …}
  +reports: Doctrine\ORM\PersistentCollection {#2027 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
  +badges: Doctrine\ORM\PersistentCollection {#2040 …}
  +children: [
    3 => App\Entity\EntryComment {#1595
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706485882 {#1430
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1679 …}
      +nested: Doctrine\ORM\PersistentCollection {#1668 …}
      +votes: Doctrine\ORM\PersistentCollection {#1666 …}
      +reports: Doctrine\ORM\PersistentCollection {#1669 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
      -id: 348311
      -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216696"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706485882 {#1429
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +"title": 348311
    }
    2 => App\Entity\EntryComment {#1564
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +body: """
        > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
        \n
        “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
        \n
        Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
        \n
        > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
        \n
        Do you have any recommendations on how to learn this?\n
        \n
        Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486339 {#1584
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@maynarkh@feddit.nl"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1525 …}
      +nested: Doctrine\ORM\PersistentCollection {#1566 …}
      +votes: Doctrine\ORM\PersistentCollection {#1562 …}
      +reports: Doctrine\ORM\PersistentCollection {#1554 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
      -id: 348342
      -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216902"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486339 {#1548
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +"title": 348342
    }
    1 => App\Entity\EntryComment {#1604
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +body: """
        > Traefik\n
        \n
        I will look into this, thank you.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486392 {#1620
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@Delphiantares@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1619 …}
      +nested: Doctrine\ORM\PersistentCollection {#1701 …}
      +votes: Doctrine\ORM\PersistentCollection {#1687 …}
      +reports: Doctrine\ORM\PersistentCollection {#1689 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
      -id: 348345
      -bodyTs: "'look':4 'thank':7 'traefik':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216929"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486392 {#1613
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +"title": 348345
    }
    0 => App\Entity\EntryComment {#1736
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: """
        that’s a helpful explanation of subnets thank you\n
        \n
        In the paradigm of\n
        \n
        111.222.3.4:5/22\n
        \n
        if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
        \n
        And is there ever a 000.111.222.3.4:5/22 or another add on?
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706540452 {#1721
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1737 …}
      +nested: Doctrine\ORM\PersistentCollection {#1732 …}
      +votes: Doctrine\ORM\PersistentCollection {#1735 …}
      +reports: Doctrine\ORM\PersistentCollection {#1729 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
      -id: 349923
      -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8237581"
      +editedAt: DateTimeImmutable @1729397201 {#1726
        date: 2024-10-20 06:06:41.0 +02:00
      }
      +createdAt: DateTimeImmutable @1706540452 {#1728
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +"title": 349923
    }
  ]
  -id: 33685
  -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
  -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551710
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13654825"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706465310 {#2457
    date: 2024-01-28 19:08:30.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
12 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1578
  +user: App\Entity\User {#263 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
  +slug: "I-want-to-get-started-with-arr-apps-here-are"
  +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
  +url: null
  +body: """
    Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
    \n
    Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
    \n
    -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
    \n
    -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
    \n
    -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
    \n
    -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
    \n
    -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
    \n
    -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
    \n
    -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
    \n
    -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
    \n
    -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
    \n
    -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
    \n
    Here’s where the questions start:\n
    \n
    - First of all, is that all correct or have I misunderstood something?\n
    - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
    - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
    - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
    - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
    - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
    - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
    - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
    - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
    - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
    - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
    \n
    If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
    \n
    Thank you so much for your help and time in advance.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 50
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729489624 {#2464
    date: 2024-10-21 07:47:04.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2021 …}
  +votes: Doctrine\ORM\PersistentCollection {#2011 …}
  +reports: Doctrine\ORM\PersistentCollection {#2027 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
  +badges: Doctrine\ORM\PersistentCollection {#2040 …}
  +children: [
    3 => App\Entity\EntryComment {#1595
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706485882 {#1430
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1679 …}
      +nested: Doctrine\ORM\PersistentCollection {#1668 …}
      +votes: Doctrine\ORM\PersistentCollection {#1666 …}
      +reports: Doctrine\ORM\PersistentCollection {#1669 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
      -id: 348311
      -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216696"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706485882 {#1429
        date: 2024-01-29 00:51:22.0 +01:00
      }
      +"title": 348311
    }
    2 => App\Entity\EntryComment {#1564
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
      +body: """
        > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
        \n
        “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
        \n
        Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
        \n
        > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
        \n
        Do you have any recommendations on how to learn this?\n
        \n
        Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486339 {#1584
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@maynarkh@feddit.nl"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1525 …}
      +nested: Doctrine\ORM\PersistentCollection {#1566 …}
      +votes: Doctrine\ORM\PersistentCollection {#1562 …}
      +reports: Doctrine\ORM\PersistentCollection {#1554 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
      -id: 348342
      -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216902"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486339 {#1548
        date: 2024-01-29 00:58:59.0 +01:00
      }
      +"title": 348342
    }
    1 => App\Entity\EntryComment {#1604
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
      +body: """
        > Traefik\n
        \n
        I will look into this, thank you.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706486392 {#1620
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@Delphiantares@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1619 …}
      +nested: Doctrine\ORM\PersistentCollection {#1701 …}
      +votes: Doctrine\ORM\PersistentCollection {#1687 …}
      +reports: Doctrine\ORM\PersistentCollection {#1689 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
      -id: 348345
      -bodyTs: "'look':4 'thank':7 'traefik':1"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8216929"
      +editedAt: null
      +createdAt: DateTimeImmutable @1706486392 {#1613
        date: 2024-01-29 00:59:52.0 +01:00
      }
      +"title": 348345
    }
    0 => App\Entity\EntryComment {#1736
      +user: App\Entity\User {#263 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
      +image: null
      +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
      +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
      +body: """
        that’s a helpful explanation of subnets thank you\n
        \n
        In the paradigm of\n
        \n
        111.222.3.4:5/22\n
        \n
        if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
        \n
        And is there ever a 000.111.222.3.4:5/22 or another add on?
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 0
      +score: 0
      +lastActive: DateTime @1706540452 {#1721
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
        "@funkless_eck@sh.itjust.works"
        "@CalicoJack@lemmy.dbzer0.com"
        "@Chewy7324@discuss.tchncs.de"
        "@jaykay@lemmy.zip"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1737 …}
      +nested: Doctrine\ORM\PersistentCollection {#1732 …}
      +votes: Doctrine\ORM\PersistentCollection {#1735 …}
      +reports: Doctrine\ORM\PersistentCollection {#1729 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
      -id: 349923
      -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://sh.itjust.works/comment/8237581"
      +editedAt: DateTimeImmutable @1729397201 {#1726
        date: 2024-10-20 06:06:41.0 +02:00
      }
      +createdAt: DateTimeImmutable @1706540452 {#1728
        date: 2024-01-29 16:00:52.0 +01:00
      }
      +"title": 349923
    }
  ]
  -id: 33685
  -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
  -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706551710
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13654825"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706465310 {#2457
    date: 2024-01-28 19:08:30.0 +01:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
13 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
14 DENIED moderate
App\Entity\EntryComment {#1595
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595}
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706485882 {#1430
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1679 …}
  +nested: Doctrine\ORM\PersistentCollection {#1668 …}
  +votes: Doctrine\ORM\PersistentCollection {#1666 …}
  +reports: Doctrine\ORM\PersistentCollection {#1669 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
  -id: 348311
  -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216696"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706485882 {#1429
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +"title": 348311
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
15 DENIED edit
App\Entity\EntryComment {#1595
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595}
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706485882 {#1430
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1679 …}
  +nested: Doctrine\ORM\PersistentCollection {#1668 …}
  +votes: Doctrine\ORM\PersistentCollection {#1666 …}
  +reports: Doctrine\ORM\PersistentCollection {#1669 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
  -id: 348311
  -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216696"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706485882 {#1429
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +"title": 348311
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
16 DENIED moderate
App\Entity\EntryComment {#1595
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595}
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706485882 {#1430
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1679 …}
  +nested: Doctrine\ORM\PersistentCollection {#1668 …}
  +votes: Doctrine\ORM\PersistentCollection {#1666 …}
  +reports: Doctrine\ORM\PersistentCollection {#1669 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
  -id: 348311
  -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216696"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706485882 {#1429
    date: 2024-01-29 00:51:22.0 +01:00
  }
  +"title": 348311
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
17 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
18 DENIED moderate
App\Entity\EntryComment {#1564
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564}
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +body: """
    > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
    \n
    “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
    \n
    Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
    \n
    > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
    \n
    Do you have any recommendations on how to learn this?\n
    \n
    Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486339 {#1584
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@maynarkh@feddit.nl"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1525 …}
  +nested: Doctrine\ORM\PersistentCollection {#1566 …}
  +votes: Doctrine\ORM\PersistentCollection {#1562 …}
  +reports: Doctrine\ORM\PersistentCollection {#1554 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
  -id: 348342
  -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216902"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486339 {#1548
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +"title": 348342
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
19 DENIED edit
App\Entity\EntryComment {#1564
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564}
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +body: """
    > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
    \n
    “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
    \n
    Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
    \n
    > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
    \n
    Do you have any recommendations on how to learn this?\n
    \n
    Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486339 {#1584
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@maynarkh@feddit.nl"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1525 …}
  +nested: Doctrine\ORM\PersistentCollection {#1566 …}
  +votes: Doctrine\ORM\PersistentCollection {#1562 …}
  +reports: Doctrine\ORM\PersistentCollection {#1554 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
  -id: 348342
  -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216902"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486339 {#1548
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +"title": 348342
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
20 DENIED moderate
App\Entity\EntryComment {#1564
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564}
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
  +body: """
    > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
    \n
    “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
    \n
    Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
    \n
    > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
    \n
    Do you have any recommendations on how to learn this?\n
    \n
    Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486339 {#1584
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@maynarkh@feddit.nl"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1525 …}
  +nested: Doctrine\ORM\PersistentCollection {#1566 …}
  +votes: Doctrine\ORM\PersistentCollection {#1562 …}
  +reports: Doctrine\ORM\PersistentCollection {#1554 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
  -id: 348342
  -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216902"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486339 {#1548
    date: 2024-01-29 00:58:59.0 +01:00
  }
  +"title": 348342
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
21 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
22 DENIED moderate
App\Entity\EntryComment {#1604
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604}
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +body: """
    > Traefik\n
    \n
    I will look into this, thank you.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486392 {#1620
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@Delphiantares@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1619 …}
  +nested: Doctrine\ORM\PersistentCollection {#1701 …}
  +votes: Doctrine\ORM\PersistentCollection {#1687 …}
  +reports: Doctrine\ORM\PersistentCollection {#1689 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
  -id: 348345
  -bodyTs: "'look':4 'thank':7 'traefik':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216929"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486392 {#1613
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +"title": 348345
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
23 DENIED edit
App\Entity\EntryComment {#1604
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604}
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +body: """
    > Traefik\n
    \n
    I will look into this, thank you.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486392 {#1620
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@Delphiantares@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1619 …}
  +nested: Doctrine\ORM\PersistentCollection {#1701 …}
  +votes: Doctrine\ORM\PersistentCollection {#1687 …}
  +reports: Doctrine\ORM\PersistentCollection {#1689 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
  -id: 348345
  -bodyTs: "'look':4 'thank':7 'traefik':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216929"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486392 {#1613
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +"title": 348345
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
24 DENIED moderate
App\Entity\EntryComment {#1604
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604}
      0 => App\Entity\EntryComment {#1736
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: """
          that’s a helpful explanation of subnets thank you\n
          \n
          In the paradigm of\n
          \n
          111.222.3.4:5/22\n
          \n
          if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
          \n
          And is there ever a 000.111.222.3.4:5/22 or another add on?
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706540452 {#1721
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
          "@jaykay@lemmy.zip"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1737 …}
        +nested: Doctrine\ORM\PersistentCollection {#1732 …}
        +votes: Doctrine\ORM\PersistentCollection {#1735 …}
        +reports: Doctrine\ORM\PersistentCollection {#1729 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
        -id: 349923
        -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8237581"
        +editedAt: DateTimeImmutable @1729397201 {#1726
          date: 2024-10-20 06:06:41.0 +02:00
        }
        +createdAt: DateTimeImmutable @1706540452 {#1728
          date: 2024-01-29 16:00:52.0 +01:00
        }
        +"title": 349923
      }
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
  +body: """
    > Traefik\n
    \n
    I will look into this, thank you.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706486392 {#1620
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@Delphiantares@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1619 …}
  +nested: Doctrine\ORM\PersistentCollection {#1701 …}
  +votes: Doctrine\ORM\PersistentCollection {#1687 …}
  +reports: Doctrine\ORM\PersistentCollection {#1689 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
  -id: 348345
  -bodyTs: "'look':4 'thank':7 'traefik':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8216929"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706486392 {#1613
    date: 2024-01-29 00:59:52.0 +01:00
  }
  +"title": 348345
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
25 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
26 DENIED moderate
App\Entity\EntryComment {#1736
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736}
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: """
    that’s a helpful explanation of subnets thank you\n
    \n
    In the paradigm of\n
    \n
    111.222.3.4:5/22\n
    \n
    if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
    \n
    And is there ever a 000.111.222.3.4:5/22 or another add on?
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706540452 {#1721
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1737 …}
  +nested: Doctrine\ORM\PersistentCollection {#1732 …}
  +votes: Doctrine\ORM\PersistentCollection {#1735 …}
  +reports: Doctrine\ORM\PersistentCollection {#1729 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
  -id: 349923
  -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8237581"
  +editedAt: DateTimeImmutable @1729397201 {#1726
    date: 2024-10-20 06:06:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706540452 {#1728
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +"title": 349923
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
27 DENIED edit
App\Entity\EntryComment {#1736
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736}
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: """
    that’s a helpful explanation of subnets thank you\n
    \n
    In the paradigm of\n
    \n
    111.222.3.4:5/22\n
    \n
    if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
    \n
    And is there ever a 000.111.222.3.4:5/22 or another add on?
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706540452 {#1721
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1737 …}
  +nested: Doctrine\ORM\PersistentCollection {#1732 …}
  +votes: Doctrine\ORM\PersistentCollection {#1735 …}
  +reports: Doctrine\ORM\PersistentCollection {#1729 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
  -id: 349923
  -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8237581"
  +editedAt: DateTimeImmutable @1729397201 {#1726
    date: 2024-10-20 06:06:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706540452 {#1728
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +"title": 349923
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
28 DENIED moderate
App\Entity\EntryComment {#1736
  +user: App\Entity\User {#263 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1578
    +user: App\Entity\User {#263 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#2035 …}
    +slug: "I-want-to-get-started-with-arr-apps-here-are"
    +title: "I want to get started with *arr apps - here are all the things I don't understand about (reverse-/)proxies and networking in order to get it set up."
    +url: null
    +body: """
      Please can someone show off how smart and sexy they are by answering these questions. I don’t mind if you just link me to a video or guide explaining it (like I’m 5?) instead of typing it out - but please don’t just send me stuff that says something like “To forward to ports correctly, simply forward the correct ports - but be sure to reverse-p the goeanity-2.0 exposed server flange via qPack*7_bingb (IMPORTANT put 1=2 in /conf!!!)” - which is what all the help documents read like to me right now.\n
      \n
      Here’s what I think I know, but I have probably got wrong, and would be delighted if you could not only tell me how wrong I am but what is the right answer instead:\n
      \n
      -> I have a raspberry pi 4 running raspbian/debian bookworm, all software up to date.\n
      \n
      -> I have installed docker and docker compose. Docker lets you run apps/programs in separate little cages so if they crash or do something insecure they don’t crash or expose the whole computer (the Raspberry Pi), the operating system (Raspbian), or the other apps running in other containers. Docker compose allows you to fine-tune the settings of these apps from outside the container by changing a text file. Each docker container, controlled by a compose yml has a port, e.g. Jellyfin’s is :8096\n
      \n
      -> I can set up and configure radarr sonarr qbittorrent to download movies, for this I need a VPN. I paid for and installed mullvad (app) but it crashes a lot (for over a minute every 20 seconds), so it looks like I need to configure something like gluetun to do it instead. For this reason I want to stick with mullvad as I paid for it, gluetun is really confusing.\n
      \n
      -> However, downloading is only half the battle - assuming I can get a VPN to work without crashing every 20 seconds so it takes less than 5 hours to download a single movie in 1080p(!!!) - I can only watch stuff by plugging an HDMI cable into my raspberrypi and a monitor and using a mouse and keyboard to navigate to the UI and click “play”\n
      \n
      -> If I want to watch them on my TV I need to connect something to my TV that talks to the raspberry pi, so I have an NVIDIA shield with Jellyfin installed on it - but in order for the NVIDIA-Jellyfin to connect to the RaspberryPi-Jellyfin it needs to go through the internet (if this is not the case, how does one point the NVIDIA-Jellyfin at the Raspberry Pi jellyfin?)\n
      \n
      -> Because it’s going through the internet I need to hide my activities from prying eyes, and because it’s on the internet it will have a web address (I bought the cheapest domain for a few bucks on namecheap), so a proxy and reverse proxy are neccessary to hide my activity on my end (proxy) and the activity on the internet (reverse proxy) from said prying eyes while allowing me to watch my stuff in peace.\n
      \n
      -> I can set up my domain to point to Jellyfin, this means I configure mysubdomain.mydomain.com to point to Cloudflare on the internet. Then I set up Cloudflare to point to NGINX on my raspberry pi. But I really don’t know what this entails or how to do it. I changed my nameservers to Cloudflare’s on namecheap and that’s where I stopped because I didn’t understand any further.\n
      \n
      -> So, in practical terms, I’m on my sofa and I want to watch a movie in my Jellyfin on my raspberry pi, I open the NIVIDA sheild, I open the jellyfin app and I tell the jellyfin app to go to mysubdomain.mydomain.com\n
      \n
      -> I think I’m correct in saying that mysubdomain.mydomain.com is actually an IP address and a public port, so something like 123.456.7.8:443, then Cloudflare - which is the reverse proxy - gets involved (somehow? how?) to say “ah, 123.456.7.8:443, you obviously want to go to funkless.raspberry.pi:NGINX (or rather something like 987.654.3.2:443)” and then NGINX - which is the proxy-proxy, not a reverse-proxy - goes (somehow? how?) “ah, 987.654.3.2:443, you obviously want to go to 987.654.3.2:8096 which is jellyfin”)\n
      \n
      -> At some point in that last step SSL certificate(s?) need to be issued and used on Cloudflare and/or NGINX - but I don’t know how or why - and/or a public and private key\n
      \n
      Here’s where the questions start:\n
      \n
      - First of all, is that all correct or have I misunderstood something?\n
      - How does mysubdomain.mydomain.com know it’s me and not some random or bot?\n
      - How do I tell Cloudflare to switch from web:443 to local:443 (assuming I’ve understood this correctly)\n
      - Is this step “port forwarding” or “opening ports” or “exposing ports” or either or both? (I don’t understand these terms)\n
      - If my browser when accessing mysubdomain.mydomain.com is always going to port 80/443, does it need to be told it’s going to talk to cloudflare - if so how? - and does cloudflare need to be told it’s going to talk to NGINX on my local machine - if so how?\n
      - How do I tell NGINX to switch from local:443 to local:8096 (assuming I’ve understood this correctly)\n
      - Is there a difference between an SSL cert and a public and private key - are they three things, two things or one thing?\n
      - Doesn’t a VPN add an extra step of fuckery to this and how do I tell the VPN to allow all this traffic switching without blocking it and without showing the world what I’m doing?\n
      - Gluetun just looks like a text document to me (compose.yml) - how do I know it’s actually protecting me?\n
      - From [nginxproxymanager.com](https://nginxproxymanager.com/) : "Add port forwarding for port 80 and 443 to the server hosting this project. I assume this means to tell NGINX that traffic is coming in on port 80 and 443 and it should take that traffic and send it to 8096 (Jellyfin) and 5000 (ombi) - but how?\n
      - Also from that site: “Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or Amazon Route53” - I assume this is what Cloudflare is for instead of Duck or Amazon? I also assume it means "tell Cloudflare to take traffic on port 80 and 443 and send it to NGINX’s 80 and 443 as per the previous bullet) - but how?\n
      \n
      If your reaction is “Asking how how to set up port forwarding from Cloudflare to NGINX is a cowardly question - just figure it out!” Please could you at least link me to something that will help me figure it out if all those words just look like gibberish to me?\n
      \n
      Thank you so much for your help and time in advance.
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 50
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729489624 {#2464
      date: 2024-10-21 07:47:04.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2021 …}
    +votes: Doctrine\ORM\PersistentCollection {#2011 …}
    +reports: Doctrine\ORM\PersistentCollection {#2027 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2086 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2088 …}
    +badges: Doctrine\ORM\PersistentCollection {#2040 …}
    +children: [
      3 => App\Entity\EntryComment {#1595
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1652 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
        +body: "yes, wlan vs eth, right? And then in some providers, tun for the vpn?"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706485882 {#1430
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@CalicoJack@lemmy.dbzer0.com"
          "@Chewy7324@discuss.tchncs.de"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1679 …}
        +nested: Doctrine\ORM\PersistentCollection {#1668 …}
        +votes: Doctrine\ORM\PersistentCollection {#1666 …}
        +reports: Doctrine\ORM\PersistentCollection {#1669 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1549 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1573 …}
        -id: 348311
        -bodyTs: "'eth':4 'provid':10 'right':5 'tun':11 'vpn':14 'vs':3 'wlan':2 'yes':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216696"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706485882 {#1429
          date: 2024-01-29 00:51:22.0 +01:00
        }
        +"title": 348311
      }
      2 => App\Entity\EntryComment {#1564
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1559 …}
        +body: """
          > Check the error logs and see what’s wrong with it instead. How is it crashing? Did you check stdout and stderr (use docker attach or check the compose logs)?\n
          \n
          “Crash” is the wrong word. The app is running, it says “Connected” for about 15-20 seconds, then it says “Internet blocked” for about 20 seconds, then it says “Reconnecting” for 30-90 seconds, repeat indefinitely.\n
          \n
          Using the CLI for logging, it says something along the lines of “Timeout… Hyper time out”\n
          \n
          > You should look a bit into how the internet, DNS and IP addresses work on the public internet and private networks.\n
          \n
          Do you have any recommendations on how to learn this?\n
          \n
          Also, thank you for explaining that “configuring a domain name” is adding an A record. I’ve added TXT records and similar for Google analytics and I’ve added mail records to set up my own domain’s email before - but this is helpful, thanks.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486339 {#1584
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@maynarkh@feddit.nl"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1525 …}
        +nested: Doctrine\ORM\PersistentCollection {#1566 …}
        +votes: Doctrine\ORM\PersistentCollection {#1562 …}
        +reports: Doctrine\ORM\PersistentCollection {#1554 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1556 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1555 …}
        -id: 348342
        -bodyTs: "'-20':46 '-90':63 '15':45 '20':55 '30':62 'ad':125,131,142 'address':95 'along':75 'also':114 'analyt':138 'app':37 'attach':25 'bit':87 'block':52 'check':1,19,27 'cli':69 'compos':29 'configur':120 'connect':42 'crash':16,31 'dns':92 'docker':24 'domain':122,150 'email':152 'error':3 'explain':118 'googl':137 'help':157 'hyper':80 'indefinit':66 'instead':12 'internet':51,91,100 'ip':94 'learn':112 'line':77 'log':4,30,71 'look':85 'mail':143 'name':123 'network':103 'privat':102 'public':99 'recommend':108 'reconnect':60 'record':128,133,144 'repeat':65 'run':39 'say':41,50,59,73 'second':47,56,64 'see':6 'set':146 'similar':135 'someth':74 'stderr':22 'stdout':20 'thank':115,158 'time':81 'timeout':79 'txt':132 'use':23,67 've':130,141 'word':35 'work':96 'wrong':9,34"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216902"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486339 {#1548
          date: 2024-01-29 00:58:59.0 +01:00
        }
        +"title": 348342
      }
      1 => App\Entity\EntryComment {#1604
        +user: App\Entity\User {#263 …}
        +entry: Proxies\__CG__\App\Entity\Entry {#1578 …2}
        +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
        +image: null
        +parent: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +root: Proxies\__CG__\App\Entity\EntryComment {#1596 …}
        +body: """
          > Traefik\n
          \n
          I will look into this, thank you.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 0
        +score: 0
        +lastActive: DateTime @1706486392 {#1620
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@funkless_eck@sh.itjust.works"
          "@Delphiantares@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#1619 …}
        +nested: Doctrine\ORM\PersistentCollection {#1701 …}
        +votes: Doctrine\ORM\PersistentCollection {#1687 …}
        +reports: Doctrine\ORM\PersistentCollection {#1689 …}
        +favourites: Doctrine\ORM\PersistentCollection {#1691 …}
        +notifications: Doctrine\ORM\PersistentCollection {#1795 …}
        -id: 348345
        -bodyTs: "'look':4 'thank':7 'traefik':1"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://sh.itjust.works/comment/8216929"
        +editedAt: null
        +createdAt: DateTimeImmutable @1706486392 {#1613
          date: 2024-01-29 00:59:52.0 +01:00
        }
        +"title": 348345
      }
      0 => App\Entity\EntryComment {#1736}
    ]
    -id: 33685
    -titleTs: "'app':8 'arr':7 'get':4,26 'network':22 'order':24 'proxi':20 'revers':19 'set':28 'start':5 'thing':13 'understand':17 'want':2"
    -bodyTs: "'-2.0':72 '/)':974 '/conf':85 '1':82 '1080p':337 '123.456.7.8':655,671 '2':83 '20':269,322 '4':139 '443':656,672,686,706,792,795,881,982,1005,1077,1086 '5':35,329 '5000':1019 '7':78 '80':980,1003,1075,1084 '80/443':834 '8096':233,714,884,1016 '987.654.3.2':685,705,713 'access':827 'activ':455,494,501 'actual':644,967 'add':918,975 'address':471,647 'advanc':1154 'ah':670,704 'allow':198,512,934 'also':1023,1064 'alway':830 'amazon':1048,1062 'and/or':736,746 'answer':13,132 'app':191,208,258,623,629 'apps/programs':159 'ask':1098 'assum':311,796,885,990,1051,1065 'battl':310 'bingb':79 'block':940 'bookworm':142 'bot':782 'bought':473 'browser':825 'buck':480 'bullet':1091 'cabl':347 'cage':163 'case':429 'cert':898 'certif':726 'chang':214,570 'cheapest':475 'click':366 'cloudflar':538,546,574,658,735,787,847,853,1055,1069,1107 'come':999 'compos':154,197,224 'compose.yml':960 'comput':180 'configur':239,278,533,1027 'confus':303 'connect':380,411 'contain':195,212,220 'control':221 'correct':57,61,638,764,801,890 'could':118,1119 'coward':1112 'crash':167,175,261,320 'date':147 'delight':115 'detail':1031 'didn':586 'differ':894 'docker':151,153,155,196,219 'document':92,957 'doesn':914 'domain':476,525,1029 'download':244,305,332 'duck':1060 'duckdn':1046 'e.g':229 'either':814,1037 'end':497 'entail':563 'everi':268,321 'explain':30 'expos':73,177,811 'extra':920 'eye':458,510 'figur':1115,1131 'file':217 'fine':202 'fine-tun':201 'first':758 'flang':75 'forward':54,59,806,977,1105 'fuckeri':923 'funkless.raspberry.pi':679 'get':314,664 'gibberish':1141 'gluetun':281,300,951 'go':420,446,631,677,711,831,843,860 'goe':701 'goeaniti':71 'got':110 'guid':29 'half':308 'hdmi':346 'help':91,1129,1150 'hide':453,492 'home':1036 'host':986 'hour':330 'howev':304 'import':80 'insecur':171 'instal':150,256,399 'instead':36,133,285,1058 'internet':423,449,465,504,541 'involv':665 'ip':646,1041 'issu':731 'jellyfin':230,398,409,416,437,442,529,609,622,628,717,1017 'key':751,904 'keyboard':359 'know':105,560,742,773,964 'last':723 'least':1122 'less':327 'let':156 'like':32,52,94,274,280,654,684,954,1045,1140 'link':23,1123 'littl':162 'local':794,867,880,883 'look':273,953,1139 'lot':263 'm':34,596,637,949 'machin':868 'mean':531,992,1067 'mind':19 'minut':267 'misunderstood':768 'monitor':353 'mous':357 'movi':245,335,606 'much':1147 'mullvad':257,294 'mysubdomain.mydomain.com':534,633,642,772,828 'name':1030 'namecheap':482,577 'nameserv':572 'navig':361 'neccessari':490 'need':249,276,378,418,451,728,837,854 'nginx':550,680,689,737,864,876,995,1082,1109 'nginxproxymanager.com':971,973 'nginxproxymanager.com/)':972 'nivida':617 'nvidia':395,408,436 'nvidia-jellyfin':407,435 'obvious':674,708 'ombi':1020 'one':432,912 'open':615,620,808 'oper':185 'order':404 'outsid':210 'p':69 'paid':253,297 'peac':519 'per':1088 'pi':138,183,390,441,554,613 'play':367 'pleas':1,42,1118 'plug':344 'point':433,527,536,548,720,1033 'port':56,62,228,651,805,809,812,833,976,979,1002,1074,1104 'practic':593 'previous':1090 'pri':457,509 'privat':750,903 'probabl':109 'project':988 'protect':968 'proxi':485,488,498,506,663,694,695,700 'proxy-proxi':693 'public':650,748,901 'put':81 'qbittorr':242 'qpack':77 'question':15,756,1113 'radarr':240 'random':780 'raspberri':137,182,389,440,553,612 'raspberrypi':350,415 'raspberrypi-jellyfin':414 'raspbian':187 'raspbian/debian':141 'rather':682 'reaction':1096 'read':93 'realli':302,557 'reason':288 'revers':68,487,505,662,699 'reverse-p':67 'reverse-proxi':698 'right':97,131 'route53':1049 'run':140,158,192 'said':508 'say':50,640,669 'second':270,323 'send':46,1013,1079 'separ':161 'server':74,985 'servic':1044 'set':205,236,522,544,1102 'sexi':9 'sheild':618 'shield':396 'show':4,944 'simpli':58 'singl':334 'site':1026 'smart':7 'sofa':599 'softwar':144 'somehow':666,702 'someon':3 'someth':51,170,279,381,653,683,769,1126 'sonarr':241 'ssl':725,897 'start':757 'static':1040 'step':724,804,921 'stick':292 'stop':583 'stuff':48,342,517 'sure':65 'switch':789,878,938 'system':186 'take':326,1009,1071 'talk':386,845,862 'tell':121,626,786,875,930,994,1068 'term':594,822 'text':216,956 'thank':1144 'thing':908,910,913 'think':103,635 'three':907 'time':1152 'told':840,857 'traffic':937,997,1011,1072 'tune':203 'tv':376,384 'two':909 'type':38 'ui':364 'understand':588,820 'understood':799,888 'use':355,733 've':798,887 'via':76 'video':27 'vpn':251,316,917,932 'want':290,370,602,675,709 'watch':341,372,515,604 'web':470,791 'whole':179 'without':319,939,943 'word':1137 'work':318 'world':946 'would':113 'wrong':111,124 'yml':225"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706551710
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13654825"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706465310 {#2457
      date: 2024-01-28 19:08:30.0 +01:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1575 …}
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#1730 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#1654 …}
  +body: """
    that’s a helpful explanation of subnets thank you\n
    \n
    In the paradigm of\n
    \n
    111.222.3.4:5/22\n
    \n
    if “3” is subnet and “5” is port - what are the names of “4”, “222”, “111”, and “22”?\n
    \n
    And is there ever a 000.111.222.3.4:5/22 or another add on?
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706540452 {#1721
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
    "@funkless_eck@sh.itjust.works"
    "@CalicoJack@lemmy.dbzer0.com"
    "@Chewy7324@discuss.tchncs.de"
    "@jaykay@lemmy.zip"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1737 …}
  +nested: Doctrine\ORM\PersistentCollection {#1732 …}
  +votes: Doctrine\ORM\PersistentCollection {#1735 …}
  +reports: Doctrine\ORM\PersistentCollection {#1729 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1719 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1714 …}
  -id: 349923
  -bodyTs: "'000.111.222.3.4':39 '111':31 '111.222.3.4':14 '22':33 '222':30 '3':17 '4':29 '5':21 '5/22':15,40 'add':43 'anoth':42 'ever':37 'explan':5 'help':4 'name':27 'paradigm':12 'port':23 'subnet':7,19 'thank':8"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8237581"
  +editedAt: DateTimeImmutable @1729397201 {#1726
    date: 2024-10-20 06:06:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706540452 {#1728
    date: 2024-01-29 16:00:52.0 +01:00
  }
  +"title": 349923
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
29 DENIED ROLE_ADMIN
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
30 DENIED ROLE_MODERATOR
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details