Redirect 302 redirect from GET @entry_comment_create (4365d0)

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 …}
}
4.72 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.05 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
App\Entity\Entry {#2412
  +user: Proxies\__CG__\App\Entity\User {#1978 …}
  +magazine: App\Entity\Magazine {#264
    +icon: Proxies\__CG__\App\Entity\Image {#245 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#274
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#236 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +posts: Doctrine\ORM\PersistentCollection {#137 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
    +bans: Doctrine\ORM\PersistentCollection {#116 …}
    +reports: Doctrine\ORM\PersistentCollection {#102 …}
    +badges: Doctrine\ORM\PersistentCollection {#80 …}
    +logs: Doctrine\ORM\PersistentCollection {#70 …}
    +awards: Doctrine\ORM\PersistentCollection {#1360 …}
    +categories: Doctrine\ORM\PersistentCollection {#1792 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#268
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#270
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
  +slug: "External-email-server-vs-port-forwarding-vpn"
  +title: "External email server vs port forwarding/vpn"
  +url: null
  +body: """
    Hey-ho 👋\n
    \n
    What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
    \n
    I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
    \n
    My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
    \n
    Any suggestions?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 11
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729562966 {#2418
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1688 …}
  +votes: Doctrine\ORM\PersistentCollection {#1966 …}
  +reports: Doctrine\ORM\PersistentCollection {#1965 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
  +badges: Doctrine\ORM\PersistentCollection {#2439 …}
  +children: []
  -id: 33781
  -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
  -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706599911
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13687320"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706513511 {#1858
    date: 2024-01-29 08:31:51.0 +01:00
  }
}
"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
App\Entity\Entry {#2412
  +user: Proxies\__CG__\App\Entity\User {#1978 …}
  +magazine: App\Entity\Magazine {#264
    +icon: Proxies\__CG__\App\Entity\Image {#245 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#274
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#236 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +posts: Doctrine\ORM\PersistentCollection {#137 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
    +bans: Doctrine\ORM\PersistentCollection {#116 …}
    +reports: Doctrine\ORM\PersistentCollection {#102 …}
    +badges: Doctrine\ORM\PersistentCollection {#80 …}
    +logs: Doctrine\ORM\PersistentCollection {#70 …}
    +awards: Doctrine\ORM\PersistentCollection {#1360 …}
    +categories: Doctrine\ORM\PersistentCollection {#1792 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#268
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#270
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
  +slug: "External-email-server-vs-port-forwarding-vpn"
  +title: "External email server vs port forwarding/vpn"
  +url: null
  +body: """
    Hey-ho 👋\n
    \n
    What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
    \n
    I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
    \n
    My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
    \n
    Any suggestions?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 11
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729562966 {#2418
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1688 …}
  +votes: Doctrine\ORM\PersistentCollection {#1966 …}
  +reports: Doctrine\ORM\PersistentCollection {#1965 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
  +badges: Doctrine\ORM\PersistentCollection {#2439 …}
  +children: []
  -id: 33781
  -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
  -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706599911
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13687320"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706513511 {#1858
    date: 2024-01-29 08:31:51.0 +01:00
  }
}
"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
App\Entity\Entry {#2412
  +user: Proxies\__CG__\App\Entity\User {#1978 …}
  +magazine: App\Entity\Magazine {#264
    +icon: Proxies\__CG__\App\Entity\Image {#245 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#274
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#236 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
    +entries: Doctrine\ORM\PersistentCollection {#179 …}
    +posts: Doctrine\ORM\PersistentCollection {#137 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
    +bans: Doctrine\ORM\PersistentCollection {#116 …}
    +reports: Doctrine\ORM\PersistentCollection {#102 …}
    +badges: Doctrine\ORM\PersistentCollection {#80 …}
    +logs: Doctrine\ORM\PersistentCollection {#70 …}
    +awards: Doctrine\ORM\PersistentCollection {#1360 …}
    +categories: Doctrine\ORM\PersistentCollection {#1792 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#268
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#270
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
  +slug: "External-email-server-vs-port-forwarding-vpn"
  +title: "External email server vs port forwarding/vpn"
  +url: null
  +body: """
    Hey-ho 👋\n
    \n
    What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
    \n
    I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
    \n
    My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
    \n
    Any suggestions?
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 15
  +favouriteCount: 11
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729562966 {#2418
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1688 …}
  +votes: Doctrine\ORM\PersistentCollection {#1966 …}
  +reports: Doctrine\ORM\PersistentCollection {#1965 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
  +badges: Doctrine\ORM\PersistentCollection {#2439 …}
  +children: []
  -id: 33781
  -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
  -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706599911
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/post/13687320"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706513511 {#1858
    date: 2024-01-29 08:31:51.0 +01:00
  }
}
"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 {#4011
  +user: App\Entity\User {#3959 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I’ve setup my email via a VPN to my own server.\n
    \n
    - DNS, mail, business web, cusromer web on VPSes (2, 1 primary, 1 secondary DNS only)\n
    - Personal email, incoming and outgoing via VPS, personal websites (all static) on local system (RPi 4 8GB)\n
    \n
    This gives the advantage that your outgoing email always comes from the VPS ip address (pick a VPS provider that is trusted) and when your line is down, incoming email is cached on your VPS. It’s a tad of double work, but pretty secure. Even connecting to my employer to work from home is not a big issue. (and that connection is limited to it’s own vlan)\n
    \n
    Also, with this method, you can route the mail into your network via port 26 when 25 is blocked or even set an outgoing vpn to your VPS and route the email that way. You’ll be provider independent at home. (I even have a private ipv6 /48 via a tunnel broker)\n
    \n
    You’ll need to work a lot on your knowledge though, without DNSSEC, SPF, DKIM and DMARC the big 2 (Google and hotmail) will refuse your email.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706520793 {#4021
    date: 2024-01-29 10:33:13.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4009 …}
  +nested: Doctrine\ORM\PersistentCollection {#4007 …}
  +votes: Doctrine\ORM\PersistentCollection {#4005 …}
  +reports: Doctrine\ORM\PersistentCollection {#4003 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3971 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3975 …}
  -id: 349354
  -bodyTs: "'/48':161 '1':22,24 '2':21,185 '25':130 '26':128 '4':43 '8gb':44 'address':59 'advantag':48 'also':114 'alway':53 'big':102,184 'block':132 'broker':165 'busi':15 'cach':76 'come':54 'connect':91,106 'cusrom':17 'dkim':180 'dmarc':182 'dns':13,26 'dnssec':178 'doubl':85 'email':5,29,52,74,145,192 'employ':94 'even':90,134,156 'give':46 'googl':186 'home':98,154 'hotmail':188 'incom':30,73 'independ':152 'ip':58 'ipv6':160 'issu':103 'knowledg':175 'limit':108 'line':70 'll':149,167 'local':40 'lot':172 'mail':14,122 'method':117 'need':168 'network':125 'outgo':32,51,137 'person':28,35 'pick':60 'port':127 'pretti':88 'primari':23 'privat':159 'provid':63,151 'refus':190 'rout':120,143 'rpi':42 'secondari':25 'secur':89 'server':12 'set':135 'setup':3 'spf':179 'static':38 'system':41 'tad':83 'though':176 'trust':66 'tunnel':164 've':2 'via':6,33,126,162 'vlan':113 'vpn':8,138 'vps':34,57,62,79,141 'vpses':20 'way':147 'web':16,18 'websit':36 'without':177 'work':86,96,170"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7121771"
  +editedAt: DateTimeImmutable @1729340475 {#3957
    date: 2024-10-19 14:21:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706520793 {#4020
    date: 2024-01-29 10:33:13.0 +01:00
  }
}
"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 {#4011
  +user: App\Entity\User {#3959 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I’ve setup my email via a VPN to my own server.\n
    \n
    - DNS, mail, business web, cusromer web on VPSes (2, 1 primary, 1 secondary DNS only)\n
    - Personal email, incoming and outgoing via VPS, personal websites (all static) on local system (RPi 4 8GB)\n
    \n
    This gives the advantage that your outgoing email always comes from the VPS ip address (pick a VPS provider that is trusted) and when your line is down, incoming email is cached on your VPS. It’s a tad of double work, but pretty secure. Even connecting to my employer to work from home is not a big issue. (and that connection is limited to it’s own vlan)\n
    \n
    Also, with this method, you can route the mail into your network via port 26 when 25 is blocked or even set an outgoing vpn to your VPS and route the email that way. You’ll be provider independent at home. (I even have a private ipv6 /48 via a tunnel broker)\n
    \n
    You’ll need to work a lot on your knowledge though, without DNSSEC, SPF, DKIM and DMARC the big 2 (Google and hotmail) will refuse your email.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706520793 {#4021
    date: 2024-01-29 10:33:13.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4009 …}
  +nested: Doctrine\ORM\PersistentCollection {#4007 …}
  +votes: Doctrine\ORM\PersistentCollection {#4005 …}
  +reports: Doctrine\ORM\PersistentCollection {#4003 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3971 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3975 …}
  -id: 349354
  -bodyTs: "'/48':161 '1':22,24 '2':21,185 '25':130 '26':128 '4':43 '8gb':44 'address':59 'advantag':48 'also':114 'alway':53 'big':102,184 'block':132 'broker':165 'busi':15 'cach':76 'come':54 'connect':91,106 'cusrom':17 'dkim':180 'dmarc':182 'dns':13,26 'dnssec':178 'doubl':85 'email':5,29,52,74,145,192 'employ':94 'even':90,134,156 'give':46 'googl':186 'home':98,154 'hotmail':188 'incom':30,73 'independ':152 'ip':58 'ipv6':160 'issu':103 'knowledg':175 'limit':108 'line':70 'll':149,167 'local':40 'lot':172 'mail':14,122 'method':117 'need':168 'network':125 'outgo':32,51,137 'person':28,35 'pick':60 'port':127 'pretti':88 'primari':23 'privat':159 'provid':63,151 'refus':190 'rout':120,143 'rpi':42 'secondari':25 'secur':89 'server':12 'set':135 'setup':3 'spf':179 'static':38 'system':41 'tad':83 'though':176 'trust':66 'tunnel':164 've':2 'via':6,33,126,162 'vlan':113 'vpn':8,138 'vps':34,57,62,79,141 'vpses':20 'way':147 'web':16,18 'websit':36 'without':177 'work':86,96,170"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7121771"
  +editedAt: DateTimeImmutable @1729340475 {#3957
    date: 2024-10-19 14:21:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706520793 {#4020
    date: 2024-01-29 10:33:13.0 +01:00
  }
}
"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 {#4011
  +user: App\Entity\User {#3959 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I’ve setup my email via a VPN to my own server.\n
    \n
    - DNS, mail, business web, cusromer web on VPSes (2, 1 primary, 1 secondary DNS only)\n
    - Personal email, incoming and outgoing via VPS, personal websites (all static) on local system (RPi 4 8GB)\n
    \n
    This gives the advantage that your outgoing email always comes from the VPS ip address (pick a VPS provider that is trusted) and when your line is down, incoming email is cached on your VPS. It’s a tad of double work, but pretty secure. Even connecting to my employer to work from home is not a big issue. (and that connection is limited to it’s own vlan)\n
    \n
    Also, with this method, you can route the mail into your network via port 26 when 25 is blocked or even set an outgoing vpn to your VPS and route the email that way. You’ll be provider independent at home. (I even have a private ipv6 /48 via a tunnel broker)\n
    \n
    You’ll need to work a lot on your knowledge though, without DNSSEC, SPF, DKIM and DMARC the big 2 (Google and hotmail) will refuse your email.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706520793 {#4021
    date: 2024-01-29 10:33:13.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4009 …}
  +nested: Doctrine\ORM\PersistentCollection {#4007 …}
  +votes: Doctrine\ORM\PersistentCollection {#4005 …}
  +reports: Doctrine\ORM\PersistentCollection {#4003 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3971 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3975 …}
  -id: 349354
  -bodyTs: "'/48':161 '1':22,24 '2':21,185 '25':130 '26':128 '4':43 '8gb':44 'address':59 'advantag':48 'also':114 'alway':53 'big':102,184 'block':132 'broker':165 'busi':15 'cach':76 'come':54 'connect':91,106 'cusrom':17 'dkim':180 'dmarc':182 'dns':13,26 'dnssec':178 'doubl':85 'email':5,29,52,74,145,192 'employ':94 'even':90,134,156 'give':46 'googl':186 'home':98,154 'hotmail':188 'incom':30,73 'independ':152 'ip':58 'ipv6':160 'issu':103 'knowledg':175 'limit':108 'line':70 'll':149,167 'local':40 'lot':172 'mail':14,122 'method':117 'need':168 'network':125 'outgo':32,51,137 'person':28,35 'pick':60 'port':127 'pretti':88 'primari':23 'privat':159 'provid':63,151 'refus':190 'rout':120,143 'rpi':42 'secondari':25 'secur':89 'server':12 'set':135 'setup':3 'spf':179 'static':38 'system':41 'tad':83 'though':176 'trust':66 'tunnel':164 've':2 'via':6,33,126,162 'vlan':113 'vpn':8,138 'vps':34,57,62,79,141 'vpses':20 'way':147 'web':16,18 'websit':36 'without':177 'work':86,96,170"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7121771"
  +editedAt: DateTimeImmutable @1729340475 {#3957
    date: 2024-10-19 14:21:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706520793 {#4020
    date: 2024-01-29 10:33:13.0 +01:00
  }
}
"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
App\Entity\EntryComment {#4048
  +user: App\Entity\User {#4030 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "email is one of the only services i just gave up on (after rolling my own exchange for over a decade). its too annoyingly complex, tedious to do correctly for just yourself. its not worth it."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 5
  +score: 0
  +lastActive: DateTime @1729490857 {#4053
    date: 2024-10-21 08:07:37.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4045 …}
  +nested: Doctrine\ORM\PersistentCollection {#4043 …}
  +votes: Doctrine\ORM\PersistentCollection {#4040 …}
  +reports: Doctrine\ORM\PersistentCollection {#4036 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4034 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4032 …}
  -id: 349505
  -bodyTs: "'annoy':24 'complex':25 'correct':29 'decad':21 'email':1 'exchang':17 'gave':10 'one':3 'roll':14 'servic':7 'tedious':26 'worth':35"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://moist.catsweat.com/m/selfhosted@lemmy.world/t/143005/-/comment/1376961"
  +editedAt: DateTimeImmutable @1729354695 {#4054
    date: 2024-10-19 18:18:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706527312 {#4051
    date: 2024-01-29 12:21:52.0 +01:00
  }
}
"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
11 DENIED edit
App\Entity\EntryComment {#4048
  +user: App\Entity\User {#4030 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "email is one of the only services i just gave up on (after rolling my own exchange for over a decade). its too annoyingly complex, tedious to do correctly for just yourself. its not worth it."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 5
  +score: 0
  +lastActive: DateTime @1729490857 {#4053
    date: 2024-10-21 08:07:37.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4045 …}
  +nested: Doctrine\ORM\PersistentCollection {#4043 …}
  +votes: Doctrine\ORM\PersistentCollection {#4040 …}
  +reports: Doctrine\ORM\PersistentCollection {#4036 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4034 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4032 …}
  -id: 349505
  -bodyTs: "'annoy':24 'complex':25 'correct':29 'decad':21 'email':1 'exchang':17 'gave':10 'one':3 'roll':14 'servic':7 'tedious':26 'worth':35"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://moist.catsweat.com/m/selfhosted@lemmy.world/t/143005/-/comment/1376961"
  +editedAt: DateTimeImmutable @1729354695 {#4054
    date: 2024-10-19 18:18:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706527312 {#4051
    date: 2024-01-29 12:21:52.0 +01:00
  }
}
"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
12 DENIED moderate
App\Entity\EntryComment {#4048
  +user: App\Entity\User {#4030 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "email is one of the only services i just gave up on (after rolling my own exchange for over a decade). its too annoyingly complex, tedious to do correctly for just yourself. its not worth it."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 5
  +score: 0
  +lastActive: DateTime @1729490857 {#4053
    date: 2024-10-21 08:07:37.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4045 …}
  +nested: Doctrine\ORM\PersistentCollection {#4043 …}
  +votes: Doctrine\ORM\PersistentCollection {#4040 …}
  +reports: Doctrine\ORM\PersistentCollection {#4036 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4034 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4032 …}
  -id: 349505
  -bodyTs: "'annoy':24 'complex':25 'correct':29 'decad':21 'email':1 'exchang':17 'gave':10 'one':3 'roll':14 'servic':7 'tedious':26 'worth':35"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://moist.catsweat.com/m/selfhosted@lemmy.world/t/143005/-/comment/1376961"
  +editedAt: DateTimeImmutable @1729354695 {#4054
    date: 2024-10-19 18:18:15.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706527312 {#4051
    date: 2024-01-29 12:21:52.0 +01:00
  }
}
"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
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 {#4135
  +user: App\Entity\User {#4148 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        > Any issues on the community? Report it using the report flag.\n
        \n
        > Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    You can selfhost the email server wherever you want. But you’ve to use some external system to deliver the email or you’ll end up in spam because your residential IP is most likely dynamic and already flagged by most email providers.\n
    \n
    One way to do it is to get a VPS somewhere and setup Wireguard on it. Then configure your local system to bind to the Wireguard interface and IP so all email send and received using the tunnel. Dovecot doesn’t care what interface it is running on, Postfix has specific options that you can change in `master.cf` to accommodate the fact that it will be binding to the VPN IP and the real IP is the VPS public IP.\n
    \n
    1. Setup a install of Dovecot / Postfix / Rspamd on your local server: [workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)\n
    2. Start by setting up a Wireguard tunnel between your local server and the VPS: [digitalocean.com/…/how-to-set-up-wireguard-on-ubu…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)\n
    3. Create a outgoing transport for the email that uses the WG tunnel and is aware of the VPS public IP:\n
    \n
    ```\n
    \n
    <span style="color:#323232;">out-wg      unix  -       -       n       -       -       smtp\n
    </span><span style="color:#323232;"> -o proxy_interfaces=188.xxx.xxx.xxx # the real public IP of the VPS\n
    </span><span style="color:#323232;"> -o smtp_bind_address=10.0.0.2 # the IP that your local server has on the WG interface\n
    </span><span style="color:#323232;"> -o inet_interfaces=10.0.0.2 # same as above\n
    </span><span style="color:#323232;"> -o myhostname=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o smtp_helo_name=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o syslog_name=smtp-wg\n
    </span>\n
    ```\n
    \n
    4. Set your VPS firewall to NAT/forward incoming traffic on port 25, 587, 465 and 993 to the local server (wireguard client 10.0.0.2);\n
    5. Change `main.cf` to use the transport by adding: `default_transport = out-wg`.\n
    \n
    That’s everything you need to get it going. Use [www.mail-tester.com](https://www.mail-tester.com/) to debug if DKIM and everything else is properly setup at the end.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706533437 {#4129
    date: 2024-01-29 14:03:57.0 +01:00
  }
  +ip: null
  +tags: [
    "323232"
  ]
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4136 …}
  +nested: Doctrine\ORM\PersistentCollection {#4138 …}
  +votes: Doctrine\ORM\PersistentCollection {#4140 …}
  +reports: Doctrine\ORM\PersistentCollection {#4142 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4144 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4146 …}
  -id: 349647
  -bodyTs: "'/)':306 '/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':158 '/how-to-set-up-wireguard-on-ubu':155 '/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':138 '1':124 '10.0.0.2':201,216,278 '188.xxx.xxx.xxx':189 '2':139 '25':267 '3':159 '4':256 '465':269 '5':279 '587':268 '993':271 'accommod':103 'ad':287 'address':200 'alreadi':38 'awar':174 'bind':66,110,199 'care':85 'chang':99,280 'client':277 'configur':61 'creat':160 'debug':308 'default':288 'deliv':19 'digitalocean.com':154 'dkim':310 'dns':228,244 'doesn':83 'dovecot':82,129 'dynam':36 'els':313 'email':5,21,42,75,166 'end':25,319 'entri':229,245 'everyth':295,312 'extern':16 'fact':105 'firewal':260 'flag':39 'get':51,299 'go':301 'helo':236 'incom':263 'inet':214 'instal':127 'interfac':70,87,188,212,215 'ip':32,72,114,118,123,179,193,203,233,249 'like':35 'll':24 'local':63,134,149,206,274 'main.cf':281 'master.cf':101 'match':224,240 'myhostnam':221 'n':184 'name':237,252 'nat/forward':262 'need':297 'o':186,197,213,220,234,250 'one':44 'option':95 'out-wg':180,290 'outgo':162 'port':266 'postfix':92,130 'proper':315 'provid':43 'proxi':187 'ptr':226,242 'public':122,178,192 'real':117,191 'receiv':78 'residenti':31 'revers':227,243 'rspamd':131 'run':90 'selfhost':3 'send':76 'server':6,135,150,207,275 'server.example.org':222,238 'set':142,257 'setup':56,125,316 'smtp':185,198,235,254 'smtp-wg':253 'somewher':54 'spam':28 'specif':94 'start':140 'syslog':251 'system':17,64 'traffic':264 'transport':163,285,289 'tunnel':81,146,171 'unix':183 'use':14,79,168,283,302 've':12 'vpn':113 'vps':53,121,153,177,196,232,248,259 'want':9 'way':45 'wg':170,182,211,255,292 'wherev':7 'wireguard':57,69,145,276 'workaround.org':137 'workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':136 'www.digitalocean.com':157 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':156 'www.mail-tester.com':303,305 'www.mail-tester.com/)':304"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7124894"
  +editedAt: DateTimeImmutable @1729375961 {#4130
    date: 2024-10-20 00:12:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706533437 {#4131
    date: 2024-01-29 14:03:57.0 +01:00
  }
}
"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 {#4135
  +user: App\Entity\User {#4148 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    You can selfhost the email server wherever you want. But you’ve to use some external system to deliver the email or you’ll end up in spam because your residential IP is most likely dynamic and already flagged by most email providers.\n
    \n
    One way to do it is to get a VPS somewhere and setup Wireguard on it. Then configure your local system to bind to the Wireguard interface and IP so all email send and received using the tunnel. Dovecot doesn’t care what interface it is running on, Postfix has specific options that you can change in `master.cf` to accommodate the fact that it will be binding to the VPN IP and the real IP is the VPS public IP.\n
    \n
    1. Setup a install of Dovecot / Postfix / Rspamd on your local server: [workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)\n
    2. Start by setting up a Wireguard tunnel between your local server and the VPS: [digitalocean.com/…/how-to-set-up-wireguard-on-ubu…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)\n
    3. Create a outgoing transport for the email that uses the WG tunnel and is aware of the VPS public IP:\n
    \n
    ```\n
    \n
    <span style="color:#323232;">out-wg      unix  -       -       n       -       -       smtp\n
    </span><span style="color:#323232;"> -o proxy_interfaces=188.xxx.xxx.xxx # the real public IP of the VPS\n
    </span><span style="color:#323232;"> -o smtp_bind_address=10.0.0.2 # the IP that your local server has on the WG interface\n
    </span><span style="color:#323232;"> -o inet_interfaces=10.0.0.2 # same as above\n
    </span><span style="color:#323232;"> -o myhostname=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o smtp_helo_name=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o syslog_name=smtp-wg\n
    </span>\n
    ```\n
    \n
    4. Set your VPS firewall to NAT/forward incoming traffic on port 25, 587, 465 and 993 to the local server (wireguard client 10.0.0.2);\n
    5. Change `main.cf` to use the transport by adding: `default_transport = out-wg`.\n
    \n
    That’s everything you need to get it going. Use [www.mail-tester.com](https://www.mail-tester.com/) to debug if DKIM and everything else is properly setup at the end.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706533437 {#4129
    date: 2024-01-29 14:03:57.0 +01:00
  }
  +ip: null
  +tags: [
    "323232"
  ]
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4136 …}
  +nested: Doctrine\ORM\PersistentCollection {#4138 …}
  +votes: Doctrine\ORM\PersistentCollection {#4140 …}
  +reports: Doctrine\ORM\PersistentCollection {#4142 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4144 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4146 …}
  -id: 349647
  -bodyTs: "'/)':306 '/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':158 '/how-to-set-up-wireguard-on-ubu':155 '/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':138 '1':124 '10.0.0.2':201,216,278 '188.xxx.xxx.xxx':189 '2':139 '25':267 '3':159 '4':256 '465':269 '5':279 '587':268 '993':271 'accommod':103 'ad':287 'address':200 'alreadi':38 'awar':174 'bind':66,110,199 'care':85 'chang':99,280 'client':277 'configur':61 'creat':160 'debug':308 'default':288 'deliv':19 'digitalocean.com':154 'dkim':310 'dns':228,244 'doesn':83 'dovecot':82,129 'dynam':36 'els':313 'email':5,21,42,75,166 'end':25,319 'entri':229,245 'everyth':295,312 'extern':16 'fact':105 'firewal':260 'flag':39 'get':51,299 'go':301 'helo':236 'incom':263 'inet':214 'instal':127 'interfac':70,87,188,212,215 'ip':32,72,114,118,123,179,193,203,233,249 'like':35 'll':24 'local':63,134,149,206,274 'main.cf':281 'master.cf':101 'match':224,240 'myhostnam':221 'n':184 'name':237,252 'nat/forward':262 'need':297 'o':186,197,213,220,234,250 'one':44 'option':95 'out-wg':180,290 'outgo':162 'port':266 'postfix':92,130 'proper':315 'provid':43 'proxi':187 'ptr':226,242 'public':122,178,192 'real':117,191 'receiv':78 'residenti':31 'revers':227,243 'rspamd':131 'run':90 'selfhost':3 'send':76 'server':6,135,150,207,275 'server.example.org':222,238 'set':142,257 'setup':56,125,316 'smtp':185,198,235,254 'smtp-wg':253 'somewher':54 'spam':28 'specif':94 'start':140 'syslog':251 'system':17,64 'traffic':264 'transport':163,285,289 'tunnel':81,146,171 'unix':183 'use':14,79,168,283,302 've':12 'vpn':113 'vps':53,121,153,177,196,232,248,259 'want':9 'way':45 'wg':170,182,211,255,292 'wherev':7 'wireguard':57,69,145,276 'workaround.org':137 'workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':136 'www.digitalocean.com':157 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':156 'www.mail-tester.com':303,305 'www.mail-tester.com/)':304"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7124894"
  +editedAt: DateTimeImmutable @1729375961 {#4130
    date: 2024-10-20 00:12:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706533437 {#4131
    date: 2024-01-29 14:03:57.0 +01:00
  }
}
"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 {#4135
  +user: App\Entity\User {#4148 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    You can selfhost the email server wherever you want. But you’ve to use some external system to deliver the email or you’ll end up in spam because your residential IP is most likely dynamic and already flagged by most email providers.\n
    \n
    One way to do it is to get a VPS somewhere and setup Wireguard on it. Then configure your local system to bind to the Wireguard interface and IP so all email send and received using the tunnel. Dovecot doesn’t care what interface it is running on, Postfix has specific options that you can change in `master.cf` to accommodate the fact that it will be binding to the VPN IP and the real IP is the VPS public IP.\n
    \n
    1. Setup a install of Dovecot / Postfix / Rspamd on your local server: [workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)\n
    2. Start by setting up a Wireguard tunnel between your local server and the VPS: [digitalocean.com/…/how-to-set-up-wireguard-on-ubu…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)\n
    3. Create a outgoing transport for the email that uses the WG tunnel and is aware of the VPS public IP:\n
    \n
    ```\n
    \n
    <span style="color:#323232;">out-wg      unix  -       -       n       -       -       smtp\n
    </span><span style="color:#323232;"> -o proxy_interfaces=188.xxx.xxx.xxx # the real public IP of the VPS\n
    </span><span style="color:#323232;"> -o smtp_bind_address=10.0.0.2 # the IP that your local server has on the WG interface\n
    </span><span style="color:#323232;"> -o inet_interfaces=10.0.0.2 # same as above\n
    </span><span style="color:#323232;"> -o myhostname=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o smtp_helo_name=server.example.org # should match the PTR / reverse DNS entry on the VPS IP\n
    </span><span style="color:#323232;"> -o syslog_name=smtp-wg\n
    </span>\n
    ```\n
    \n
    4. Set your VPS firewall to NAT/forward incoming traffic on port 25, 587, 465 and 993 to the local server (wireguard client 10.0.0.2);\n
    5. Change `main.cf` to use the transport by adding: `default_transport = out-wg`.\n
    \n
    That’s everything you need to get it going. Use [www.mail-tester.com](https://www.mail-tester.com/) to debug if DKIM and everything else is properly setup at the end.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706533437 {#4129
    date: 2024-01-29 14:03:57.0 +01:00
  }
  +ip: null
  +tags: [
    "323232"
  ]
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4136 …}
  +nested: Doctrine\ORM\PersistentCollection {#4138 …}
  +votes: Doctrine\ORM\PersistentCollection {#4140 …}
  +reports: Doctrine\ORM\PersistentCollection {#4142 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4144 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4146 …}
  -id: 349647
  -bodyTs: "'/)':306 '/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':158 '/how-to-set-up-wireguard-on-ubu':155 '/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':138 '1':124 '10.0.0.2':201,216,278 '188.xxx.xxx.xxx':189 '2':139 '25':267 '3':159 '4':256 '465':269 '5':279 '587':268 '993':271 'accommod':103 'ad':287 'address':200 'alreadi':38 'awar':174 'bind':66,110,199 'care':85 'chang':99,280 'client':277 'configur':61 'creat':160 'debug':308 'default':288 'deliv':19 'digitalocean.com':154 'dkim':310 'dns':228,244 'doesn':83 'dovecot':82,129 'dynam':36 'els':313 'email':5,21,42,75,166 'end':25,319 'entri':229,245 'everyth':295,312 'extern':16 'fact':105 'firewal':260 'flag':39 'get':51,299 'go':301 'helo':236 'incom':263 'inet':214 'instal':127 'interfac':70,87,188,212,215 'ip':32,72,114,118,123,179,193,203,233,249 'like':35 'll':24 'local':63,134,149,206,274 'main.cf':281 'master.cf':101 'match':224,240 'myhostnam':221 'n':184 'name':237,252 'nat/forward':262 'need':297 'o':186,197,213,220,234,250 'one':44 'option':95 'out-wg':180,290 'outgo':162 'port':266 'postfix':92,130 'proper':315 'provid':43 'proxi':187 'ptr':226,242 'public':122,178,192 'real':117,191 'receiv':78 'residenti':31 'revers':227,243 'rspamd':131 'run':90 'selfhost':3 'send':76 'server':6,135,150,207,275 'server.example.org':222,238 'set':142,257 'setup':56,125,316 'smtp':185,198,235,254 'smtp-wg':253 'somewher':54 'spam':28 'specif':94 'start':140 'syslog':251 'system':17,64 'traffic':264 'transport':163,285,289 'tunnel':81,146,171 'unix':183 'use':14,79,168,283,302 've':12 'vpn':113 'vps':53,121,153,177,196,232,248,259 'want':9 'way':45 'wg':170,182,211,255,292 'wherev':7 'wireguard':57,69,145,276 'workaround.org':137 'workaround.org/ispmail-bookworm/](https://workaround.org/ispmail-bookworm/)':136 'www.digitalocean.com':157 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-ubuntu-20-04)':156 'www.mail-tester.com':303,305 'www.mail-tester.com/)':304"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/7124894"
  +editedAt: DateTimeImmutable @1729375961 {#4130
    date: 2024-10-20 00:12:41.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706533437 {#4131
    date: 2024-01-29 14:03:57.0 +01:00
  }
}
"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 {#4211
  +user: App\Entity\User {#4224 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I think mail forwarders are still a good way to go. It’s hard to predict how Internet providers will react to email running in their networks.\n
    \n
    These days I have an ec2 at AWS for my mail server and use SES for outbound mail. I’m thinking of moving “receiving” back into my network with a simple chat forwarding service but keep SES for outbound. They handle all the SPF and DKIM things and ensure their networks aren’t on blacklists.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1729562966 {#4205
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4212 …}
  +nested: Doctrine\ORM\PersistentCollection {#4214 …}
  +votes: Doctrine\ORM\PersistentCollection {#4216 …}
  +reports: Doctrine\ORM\PersistentCollection {#4218 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4220 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4222 …}
  -id: 349737
  -bodyTs: "'aren':79 'aw':35 'back':52 'blacklist':82 'chat':59 'day':29 'dkim':73 'ec2':33 'email':23 'ensur':76 'forward':4,60 'go':11 'good':8 'handl':68 'hard':14 'internet':18 'keep':63 'm':47 'mail':3,38,45 'move':50 'network':27,55,78 'outbound':44,66 'predict':16 'provid':19 'react':21 'receiv':51 'run':24 'server':39 'servic':61 'ses':42,64 'simpl':58 'spf':71 'still':6 'thing':74 'think':2,48 'use':41 'way':9"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235650"
  +editedAt: DateTimeImmutable @1729384257 {#4206
    date: 2024-10-20 02:30:57.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706536656 {#4207
    date: 2024-01-29 14:57:36.0 +01:00
  }
}
"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 {#4211
  +user: App\Entity\User {#4224 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I think mail forwarders are still a good way to go. It’s hard to predict how Internet providers will react to email running in their networks.\n
    \n
    These days I have an ec2 at AWS for my mail server and use SES for outbound mail. I’m thinking of moving “receiving” back into my network with a simple chat forwarding service but keep SES for outbound. They handle all the SPF and DKIM things and ensure their networks aren’t on blacklists.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1729562966 {#4205
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4212 …}
  +nested: Doctrine\ORM\PersistentCollection {#4214 …}
  +votes: Doctrine\ORM\PersistentCollection {#4216 …}
  +reports: Doctrine\ORM\PersistentCollection {#4218 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4220 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4222 …}
  -id: 349737
  -bodyTs: "'aren':79 'aw':35 'back':52 'blacklist':82 'chat':59 'day':29 'dkim':73 'ec2':33 'email':23 'ensur':76 'forward':4,60 'go':11 'good':8 'handl':68 'hard':14 'internet':18 'keep':63 'm':47 'mail':3,38,45 'move':50 'network':27,55,78 'outbound':44,66 'predict':16 'provid':19 'react':21 'receiv':51 'run':24 'server':39 'servic':61 'ses':42,64 'simpl':58 'spf':71 'still':6 'thing':74 'think':2,48 'use':41 'way':9"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235650"
  +editedAt: DateTimeImmutable @1729384257 {#4206
    date: 2024-10-20 02:30:57.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706536656 {#4207
    date: 2024-01-29 14:57:36.0 +01:00
  }
}
"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 {#4211
  +user: App\Entity\User {#4224 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: """
    I think mail forwarders are still a good way to go. It’s hard to predict how Internet providers will react to email running in their networks.\n
    \n
    These days I have an ec2 at AWS for my mail server and use SES for outbound mail. I’m thinking of moving “receiving” back into my network with a simple chat forwarding service but keep SES for outbound. They handle all the SPF and DKIM things and ensure their networks aren’t on blacklists.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1729562966 {#4205
    date: 2024-10-22 04:09:26.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4212 …}
  +nested: Doctrine\ORM\PersistentCollection {#4214 …}
  +votes: Doctrine\ORM\PersistentCollection {#4216 …}
  +reports: Doctrine\ORM\PersistentCollection {#4218 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4220 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4222 …}
  -id: 349737
  -bodyTs: "'aren':79 'aw':35 'back':52 'blacklist':82 'chat':59 'day':29 'dkim':73 'ec2':33 'email':23 'ensur':76 'forward':4,60 'go':11 'good':8 'handl':68 'hard':14 'internet':18 'keep':63 'm':47 'mail':3,38,45 'move':50 'network':27,55,78 'outbound':44,66 'predict':16 'provid':19 'react':21 'receiv':51 'run':24 'server':39 'servic':61 'ses':42,64 'simpl':58 'spf':71 'still':6 'thing':74 'think':2,48 'use':41 'way':9"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://sh.itjust.works/comment/8235650"
  +editedAt: DateTimeImmutable @1729384257 {#4206
    date: 2024-10-20 02:30:57.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706536656 {#4207
    date: 2024-01-29 14:57:36.0 +01:00
  }
}
"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 {#4284
  +user: App\Entity\User {#4297 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "Do not try to host *outbound* mail on residential IP blocks, delivery will be really bad. Cheap VPS is same story. You best bet is VPS from some not well know provider, they may be avoid to be in blacklist in M$ and Google. Inbound mail is fine anywhere as so long as you can have port 25 open. DDNS works too."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706564255 {#4279
    date: 2024-01-29 22:37:35.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4285 …}
  +nested: Doctrine\ORM\PersistentCollection {#4287 …}
  +votes: Doctrine\ORM\PersistentCollection {#4289 …}
  +reports: Doctrine\ORM\PersistentCollection {#4291 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4293 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4295 …}
  -id: 350945
  -bodyTs: "'25':58 'anywher':49 'avoid':36 'bad':16 'best':23 'bet':24 'blacklist':40 'block':11 'cheap':17 'ddns':60 'deliveri':12 'fine':48 'googl':44 'host':5 'inbound':45 'ip':10 'know':31 'long':52 'm':42 'mail':7,46 'may':34 'open':59 'outbound':6 'port':57 'provid':32 'realli':15 'residenti':9 'stori':21 'tri':3 'vps':18,26 'well':30 'work':61"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://aussie.zone/comment/6246762"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706564255 {#4280
    date: 2024-01-29 22:37:35.0 +01:00
  }
}
"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 {#4284
  +user: App\Entity\User {#4297 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "Do not try to host *outbound* mail on residential IP blocks, delivery will be really bad. Cheap VPS is same story. You best bet is VPS from some not well know provider, they may be avoid to be in blacklist in M$ and Google. Inbound mail is fine anywhere as so long as you can have port 25 open. DDNS works too."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706564255 {#4279
    date: 2024-01-29 22:37:35.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4285 …}
  +nested: Doctrine\ORM\PersistentCollection {#4287 …}
  +votes: Doctrine\ORM\PersistentCollection {#4289 …}
  +reports: Doctrine\ORM\PersistentCollection {#4291 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4293 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4295 …}
  -id: 350945
  -bodyTs: "'25':58 'anywher':49 'avoid':36 'bad':16 'best':23 'bet':24 'blacklist':40 'block':11 'cheap':17 'ddns':60 'deliveri':12 'fine':48 'googl':44 'host':5 'inbound':45 'ip':10 'know':31 'long':52 'm':42 'mail':7,46 'may':34 'open':59 'outbound':6 'port':57 'provid':32 'realli':15 'residenti':9 'stori':21 'tri':3 'vps':18,26 'well':30 'work':61"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://aussie.zone/comment/6246762"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706564255 {#4280
    date: 2024-01-29 22:37:35.0 +01:00
  }
}
"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 {#4284
  +user: App\Entity\User {#4297 …}
  +entry: App\Entity\Entry {#2412
    +user: Proxies\__CG__\App\Entity\User {#1978 …}
    +magazine: App\Entity\Magazine {#264
      +icon: Proxies\__CG__\App\Entity\Image {#245 …}
      +name: "selfhosted@lemmy.world"
      +title: "selfhosted"
      +description: """
        A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
        \n
        Rules:\n
        \n
        - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
        - No spam posting.\n
        - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
        - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
        - No trolling.\n
        \n
        Resources:\n
        \n
        - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
        - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
        - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
        \n
        &gt; Any issues on the community? Report it using the report flag.\n
        \n
        &gt; Questions? DM the mods!
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 222
      +entryCommentCount: 3916
      +postCount: 0
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729582735 {#274
        date: 2024-10-22 09:38:55.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#236 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
      +entries: Doctrine\ORM\PersistentCollection {#179 …}
      +posts: Doctrine\ORM\PersistentCollection {#137 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
      +bans: Doctrine\ORM\PersistentCollection {#116 …}
      +reports: Doctrine\ORM\PersistentCollection {#102 …}
      +badges: Doctrine\ORM\PersistentCollection {#80 …}
      +logs: Doctrine\ORM\PersistentCollection {#70 …}
      +awards: Doctrine\ORM\PersistentCollection {#1360 …}
      +categories: Doctrine\ORM\PersistentCollection {#1792 …}
      -id: 120
      +apId: "selfhosted@lemmy.world"
      +apProfileId: "https://lemmy.world/c/selfhosted"
      +apPublicUrl: "https://lemmy.world/c/selfhosted"
      +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
      +apInboxUrl: "https://lemmy.world/inbox"
      +apDomain: "lemmy.world"
      +apPreferredUsername: "selfhosted"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1703473826 {#268
        date: 2023-12-25 04:10:26.0 +01:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1703473826 {#270
        date: 2023-12-25 04:10:26.0 +01:00
      }
    }
    +image: null
    +domain: Proxies\__CG__\App\Entity\Domain {#1889 …}
    +slug: "External-email-server-vs-port-forwarding-vpn"
    +title: "External email server vs port forwarding/vpn"
    +url: null
    +body: """
      Hey-ho 👋\n
      \n
      What is the best approach for selfhosting an email server with static IP or blocked port 25?\n
      \n
      I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days\n
      \n
      My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff\n
      \n
      Any suggestions?
      """
    +type: "article"
    +lang: "en"
    +isOc: false
    +hasEmbed: false
    +commentCount: 15
    +favouriteCount: 11
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1729562966 {#2418
      date: 2024-10-22 04:09:26.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1688 …}
    +votes: Doctrine\ORM\PersistentCollection {#1966 …}
    +reports: Doctrine\ORM\PersistentCollection {#1965 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1368 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2426 …}
    +badges: Doctrine\ORM\PersistentCollection {#2439 …}
    +children: []
    -id: 33781
    -titleTs: "'email':2 'extern':1 'forwarding/vpn':6 'port':5 'server':3 'vs':4"
    -bodyTs: "'25':20,48 'approach':8,43 'best':7,42 'block':18,53 'day':45 'differ':29 'done':23 'email':12 'even':51 'hear':38 'help':62 'hey':2 'hey-ho':1 'ho':3 'ip':16 'isn':49 'mani':25,28 'port':19,47 'prefer':56 'probabl':52 'selfhost':10 'server':13 'static':15 'stuff':66 'suggest':68 'time':26 'use':58 've':22 'vps':60 'want':36 'way':30"
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1706599911
    +visibility: "visible             "
    +apId: "https://sh.itjust.works/post/13687320"
    +editedAt: null
    +createdAt: DateTimeImmutable @1706513511 {#1858
      date: 2024-01-29 08:31:51.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#264}
  +image: null
  +parent: null
  +root: null
  +body: "Do not try to host *outbound* mail on residential IP blocks, delivery will be really bad. Cheap VPS is same story. You best bet is VPS from some not well know provider, they may be avoid to be in blacklist in M$ and Google. Inbound mail is fine anywhere as so long as you can have port 25 open. DDNS works too."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 0
  +score: 0
  +lastActive: DateTime @1706564255 {#4279
    date: 2024-01-29 22:37:35.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Gooey0210@sh.itjust.works"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4285 …}
  +nested: Doctrine\ORM\PersistentCollection {#4287 …}
  +votes: Doctrine\ORM\PersistentCollection {#4289 …}
  +reports: Doctrine\ORM\PersistentCollection {#4291 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4293 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4295 …}
  -id: 350945
  -bodyTs: "'25':58 'anywher':49 'avoid':36 'bad':16 'best':23 'bet':24 'blacklist':40 'block':11 'cheap':17 'ddns':60 'deliveri':12 'fine':48 'googl':44 'host':5 'inbound':45 'ip':10 'know':31 'long':52 'm':42 'mail':7,46 'may':34 'open':59 'outbound':6 'port':57 'provid':32 'realli':15 'residenti':9 'stori':21 'tri':3 'vps':18,26 'well':30 'work':61"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://aussie.zone/comment/6246762"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706564255 {#4280
    date: 2024-01-29 22:37:35.0 +01:00
  }
}
"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 edit
App\Entity\Magazine {#264
  +icon: Proxies\__CG__\App\Entity\Image {#245 …}
  +name: "selfhosted@lemmy.world"
  +title: "selfhosted"
  +description: """
    A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
    \n
    Rules:\n
    \n
    - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
    - No spam posting.\n
    - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
    - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
    - No trolling.\n
    \n
    Resources:\n
    \n
    - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
    - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
    - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
    \n
    &gt; Any issues on the community? Report it using the report flag.\n
    \n
    &gt; Questions? DM the mods!
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 222
  +entryCommentCount: 3916
  +postCount: 0
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729582735 {#274
    date: 2024-10-22 09:38:55.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#236 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#232 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#221 …}
  +entries: Doctrine\ORM\PersistentCollection {#179 …}
  +posts: Doctrine\ORM\PersistentCollection {#137 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#199 …}
  +bans: Doctrine\ORM\PersistentCollection {#116 …}
  +reports: Doctrine\ORM\PersistentCollection {#102 …}
  +badges: Doctrine\ORM\PersistentCollection {#80 …}
  +logs: Doctrine\ORM\PersistentCollection {#70 …}
  +awards: Doctrine\ORM\PersistentCollection {#1360 …}
  +categories: Doctrine\ORM\PersistentCollection {#1792 …}
  -id: 120
  +apId: "selfhosted@lemmy.world"
  +apProfileId: "https://lemmy.world/c/selfhosted"
  +apPublicUrl: "https://lemmy.world/c/selfhosted"
  +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
  +apInboxUrl: "https://lemmy.world/inbox"
  +apDomain: "lemmy.world"
  +apPreferredUsername: "selfhosted"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703473826 {#268
    date: 2023-12-25 04:10:26.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703473826 {#270
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"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