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 …}
}
53.81 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.07 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\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1378 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "opensource@lemmy.ml"
    +title: "opensource"
    +description: """
      All about open source! Feel free to ask questions, and share news, and interesting stuff!\n
      \n
      Useful Links\n
      ============\n
      \n
      - [Open Source Initiative](https://opensource.org/)\n
      - [Free Software Foundation](https://www.fsf.org/)\n
      - [Electronic Frontier Foundation](https://www.eff.org/)\n
      - [Software Freedom Conservancy](https://sfconservancy.org/)\n
      - [It’s FOSS](https://itsfoss.com/)\n
      \n
      Rules\n
      =====\n
      \n
      - Posts must be relevant to the open source ideology\n
      - No NSFW content\n
      - No hate speech, bigotry, etc\n
      \n
      Related Communities\n
      ===================\n
      \n
      - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
      - [!libre_software@lemmy.ml](https://lemmy.ml/c/libre_software)\n
      - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
      - [!linux@lemmy.ml](https://lemmy.ml/c/linux)\n
      - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
      \n
      Community icon from opensource.org, but we are not affiliated with them.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 97
    +entryCommentCount: 1299
    +postCount: 2
    +postCommentCount: 5
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583535 {#321
      date: 2024-10-22 09:52:15.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 128
    +apId: "opensource@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/opensource"
    +apPublicUrl: "https://lemmy.ml/c/opensource"
    +apFollowersUrl: "https://lemmy.ml/c/opensource/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "opensource"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703910302 {#322
      date: 2023-12-30 05:25:02.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703910301 {#316
      date: 2023-12-30 05:25:01.0 +01:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    You don’t need to own a domain, what you most likely need is some kind of dynamic DNS service.\n
    \n
    [freedns.afraid.org](https://freedns.afraid.org/) is one of them, they’ll give you a subdomain you can pick and the client will update the IP to which the domain point whenever it changes.\n
    \n
    This is what you need, assuming you’ve a public IP from your ISP and you can go into your router and port forward ports to your TrueNAS server.\n
    \n
    Now regarding software, since you’re using Syncthing already I would suggest you stay away from the complexities and vulnerabilities of Nextcloud and simply use [FileBrowser](https://github.com/filebrowser/filebrowser), this is way easier to setup and use. I believe there’s even something on TrueNAS to get it running.\n
    \n
    How if you’re about to expose your NAS/setup to the internet you’ve to consider a few things for your own safety.\n
    \n
    **Quick check list for outward facing servers:**\n
    \n
    1. Only expose required services (web server nginx, game server, program x) to the Internet. Everything else such as SSH, configuration interfaces and whatnot can be moved to another private network and/or a WireGuard VPN you can connect to when you want to manage the server;\n
    2. Use custom ports with 5 digits for everything - something like 23901 (up to 65535) to make your service(s) harder to find;\n
    3. Disable IPv6? Might be easier than dealing with a dual stack firewall and/or other complexities;\n
    4. Use nftables / iptables / another firewall and set it to drop everything but those ports you need for services and management VPN access to work - [10 minute guide](https://wiki.nftables.org/wiki-nftables/index.php/Quick_reference-nftables_in_10_minutes);\n
    5. Use your firewall to restrict what countries are allowed to access your server. If you’re just doing it for a few friends only allow incoming connection from your country ([wiki.nftables.org/wiki-nftables/…/GeoIP_matching](https://wiki.nftables.org/wiki-nftables/index.php/GeoIP_matching))\n
    \n
    Realistically speaking if you’re doing this just for you / a few friends why not require them to access the server through WireGuard VPN? This will reduce the risk a LOT and won’t probably impact the performance. This is a decent setup guide [digitalocean.com/…/how-to-set-up-wireguard-on-deb…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11) and you might use this GUI to add/remove clients easily [github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)\n
    \n
    With WireGuard you’ll only need to port forward the WG port reducing the attack surface. After you connect to the VPN you get access to the server as if you were on the local network. This mean you’ll even get SMB/Samba access to the files and/or access to any other service the server might me providing, you don’t need anything else or change your current workflow, simply connect to the VPN and access your data as if you were home.\n
    \n
    Another advantage of going with WireGuard is that you can more safely ignore the step (4) and (5) because only exposing the VPN through a port forward in your router won’t create much of an attack surface / anything that can be bruteforced. Your setup will be easier to deploy and maintain.\n
    \n
    Note that WireGuard is designed with security in mind and it won’t even be visible in typical IP scans / will ignore any piece of traffic that isn’t properly encrypted with your keys.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1705447369 {#1605
    date: 2024-01-17 00:22:49.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1370 …}
  +nested: Doctrine\ORM\PersistentCollection {#1375 …}
  +votes: Doctrine\ORM\PersistentCollection {#2424 …}
  +reports: Doctrine\ORM\PersistentCollection {#1898 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1841 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2354 …}
  -id: 315308
  -bodyTs: "'/)':24 '/community/tutorials/how-to-set-up-wireguard-on-debian-11)':363 '/filebrowser/filebrowser),':110 '/geoip_matching':311 '/how-to-set-up-wireguard-on-deb':360 '/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':376 '/wiki-nftables/':310 '/wiki-nftables/index.php/geoip_matching))':314 '/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':276 '1':161 '10':271 '2':207 '23901':218 '3':230 '4':246,475 '5':212,277,477 '65535':221 'access':268,288,333,401,420,425,452 'add/remove':371 'advantag':461 'allow':286,302 'alreadi':90 'and/or':192,243,424 'anoth':189,250,460 'anyth':439,498 'assum':58 'attack':391,496 'away':96 'believ':120 'bruteforc':502 'chang':52,442 'check':155 'client':40,372 'complex':99,245 'configur':181 'connect':198,304,395,447 'consid':146 'countri':284,307 'creat':492 'current':444 'custom':209 'data':454 'deal':237 'decent':356 'deploy':509 'design':516 'digit':213 'digitalocean.com':359 'disabl':231 'dns':19 'domain':8,48 'drop':256 'dual':240 'dynam':18 'easier':114,235,507 'easili':373 'els':177,440 'encrypt':542 'even':123,417,525 'everyth':176,215,257 'expos':137,163,480 'face':159 'file':423 'filebrows':107 'find':229 'firewal':242,251,280 'forward':76,385,486 'freedns.afraid.org':21,23 'freedns.afraid.org/)':22 'friend':300,327 'game':169 'get':128,400,418 'github.com':109,375 'github.com/filebrowser/filebrowser),':108 'github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':374 'give':31 'go':70,463 'gui':369 'guid':273,358 'harder':227 'home':459 'ignor':472,533 'impact':350 'incom':303 'interfac':182 'internet':142,175 'ip':44,63,530 'iptabl':249 'ipv6':232 'isn':539 'isp':66 'key':545 'kind':16 'like':12,217 'list':156 'll':30,380,416 'local':411 'lot':345 'maintain':511 'make':223 'manag':204,266 'mean':414 'might':233,366,432 'mind':520 'minut':272 'move':187 'much':493 'nas/setup':139 'need':4,13,57,262,382,438 'network':191,412 'nextcloud':103 'nftabl':248 'nginx':168 'note':512 'one':26 'outward':158 'perform':352 'pick':37 'piec':535 'point':49 'port':75,77,210,260,384,388,485 'privat':190 'probabl':349 'program':171 'proper':541 'provid':434 'public':62 'quick':154 're':87,134,293,319 'realist':315 'reduc':341,389 'regard':83 'requir':164,330 'restrict':282 'risk':343 'router':73,489 'run':130 'safe':471 'safeti':153 'scan':531 'secur':518 'server':81,160,167,170,206,290,335,404,431 'servic':20,165,225,264,429 'set':253 'setup':116,357,504 'simpli':105,446 'sinc':85 'smb/samba':419 'softwar':84 'someth':124,216 'speak':316 'ssh':180 'stack':241 'stay':95 'step':474 'subdomain':34 'suggest':93 'surfac':392,497 'syncth':89 'thing':149 'traffic':537 'truena':80,126 'typic':529 'updat':42 'use':88,106,118,208,247,278,367 've':60,144 'visibl':527 'vpn':195,267,338,398,450,482 'vulner':101 'want':202 'way':113 'web':166 'wg':387 'whatnot':184 'whenev':50 'wiki.nftables.org':275,309,313 'wiki.nftables.org/wiki-nftables/':308 'wiki.nftables.org/wiki-nftables/index.php/geoip_matching))':312 'wiki.nftables.org/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':274 'wireguard':194,337,378,465,514 'won':347,490,523 'work':270 'workflow':445 'would':92 'www.digitalocean.com':362 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11)':361 'x':172"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/6755342"
  +editedAt: DateTimeImmutable @1725315000 {#1377
    date: 2024-09-03 00:10:00.0 +02:00
  }
  +createdAt: DateTimeImmutable @1705447369 {#1927
    date: 2024-01-17 00:22:49.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
3 DENIED edit
App\Entity\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1378 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "opensource@lemmy.ml"
    +title: "opensource"
    +description: """
      All about open source! Feel free to ask questions, and share news, and interesting stuff!\n
      \n
      Useful Links\n
      ============\n
      \n
      - [Open Source Initiative](https://opensource.org/)\n
      - [Free Software Foundation](https://www.fsf.org/)\n
      - [Electronic Frontier Foundation](https://www.eff.org/)\n
      - [Software Freedom Conservancy](https://sfconservancy.org/)\n
      - [It’s FOSS](https://itsfoss.com/)\n
      \n
      Rules\n
      =====\n
      \n
      - Posts must be relevant to the open source ideology\n
      - No NSFW content\n
      - No hate speech, bigotry, etc\n
      \n
      Related Communities\n
      ===================\n
      \n
      - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
      - [!libre_software@lemmy.ml](https://lemmy.ml/c/libre_software)\n
      - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
      - [!linux@lemmy.ml](https://lemmy.ml/c/linux)\n
      - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
      \n
      Community icon from opensource.org, but we are not affiliated with them.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 97
    +entryCommentCount: 1299
    +postCount: 2
    +postCommentCount: 5
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583535 {#321
      date: 2024-10-22 09:52:15.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 128
    +apId: "opensource@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/opensource"
    +apPublicUrl: "https://lemmy.ml/c/opensource"
    +apFollowersUrl: "https://lemmy.ml/c/opensource/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "opensource"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703910302 {#322
      date: 2023-12-30 05:25:02.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703910301 {#316
      date: 2023-12-30 05:25:01.0 +01:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    You don’t need to own a domain, what you most likely need is some kind of dynamic DNS service.\n
    \n
    [freedns.afraid.org](https://freedns.afraid.org/) is one of them, they’ll give you a subdomain you can pick and the client will update the IP to which the domain point whenever it changes.\n
    \n
    This is what you need, assuming you’ve a public IP from your ISP and you can go into your router and port forward ports to your TrueNAS server.\n
    \n
    Now regarding software, since you’re using Syncthing already I would suggest you stay away from the complexities and vulnerabilities of Nextcloud and simply use [FileBrowser](https://github.com/filebrowser/filebrowser), this is way easier to setup and use. I believe there’s even something on TrueNAS to get it running.\n
    \n
    How if you’re about to expose your NAS/setup to the internet you’ve to consider a few things for your own safety.\n
    \n
    **Quick check list for outward facing servers:**\n
    \n
    1. Only expose required services (web server nginx, game server, program x) to the Internet. Everything else such as SSH, configuration interfaces and whatnot can be moved to another private network and/or a WireGuard VPN you can connect to when you want to manage the server;\n
    2. Use custom ports with 5 digits for everything - something like 23901 (up to 65535) to make your service(s) harder to find;\n
    3. Disable IPv6? Might be easier than dealing with a dual stack firewall and/or other complexities;\n
    4. Use nftables / iptables / another firewall and set it to drop everything but those ports you need for services and management VPN access to work - [10 minute guide](https://wiki.nftables.org/wiki-nftables/index.php/Quick_reference-nftables_in_10_minutes);\n
    5. Use your firewall to restrict what countries are allowed to access your server. If you’re just doing it for a few friends only allow incoming connection from your country ([wiki.nftables.org/wiki-nftables/…/GeoIP_matching](https://wiki.nftables.org/wiki-nftables/index.php/GeoIP_matching))\n
    \n
    Realistically speaking if you’re doing this just for you / a few friends why not require them to access the server through WireGuard VPN? This will reduce the risk a LOT and won’t probably impact the performance. This is a decent setup guide [digitalocean.com/…/how-to-set-up-wireguard-on-deb…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11) and you might use this GUI to add/remove clients easily [github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)\n
    \n
    With WireGuard you’ll only need to port forward the WG port reducing the attack surface. After you connect to the VPN you get access to the server as if you were on the local network. This mean you’ll even get SMB/Samba access to the files and/or access to any other service the server might me providing, you don’t need anything else or change your current workflow, simply connect to the VPN and access your data as if you were home.\n
    \n
    Another advantage of going with WireGuard is that you can more safely ignore the step (4) and (5) because only exposing the VPN through a port forward in your router won’t create much of an attack surface / anything that can be bruteforced. Your setup will be easier to deploy and maintain.\n
    \n
    Note that WireGuard is designed with security in mind and it won’t even be visible in typical IP scans / will ignore any piece of traffic that isn’t properly encrypted with your keys.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1705447369 {#1605
    date: 2024-01-17 00:22:49.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1370 …}
  +nested: Doctrine\ORM\PersistentCollection {#1375 …}
  +votes: Doctrine\ORM\PersistentCollection {#2424 …}
  +reports: Doctrine\ORM\PersistentCollection {#1898 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1841 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2354 …}
  -id: 315308
  -bodyTs: "'/)':24 '/community/tutorials/how-to-set-up-wireguard-on-debian-11)':363 '/filebrowser/filebrowser),':110 '/geoip_matching':311 '/how-to-set-up-wireguard-on-deb':360 '/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':376 '/wiki-nftables/':310 '/wiki-nftables/index.php/geoip_matching))':314 '/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':276 '1':161 '10':271 '2':207 '23901':218 '3':230 '4':246,475 '5':212,277,477 '65535':221 'access':268,288,333,401,420,425,452 'add/remove':371 'advantag':461 'allow':286,302 'alreadi':90 'and/or':192,243,424 'anoth':189,250,460 'anyth':439,498 'assum':58 'attack':391,496 'away':96 'believ':120 'bruteforc':502 'chang':52,442 'check':155 'client':40,372 'complex':99,245 'configur':181 'connect':198,304,395,447 'consid':146 'countri':284,307 'creat':492 'current':444 'custom':209 'data':454 'deal':237 'decent':356 'deploy':509 'design':516 'digit':213 'digitalocean.com':359 'disabl':231 'dns':19 'domain':8,48 'drop':256 'dual':240 'dynam':18 'easier':114,235,507 'easili':373 'els':177,440 'encrypt':542 'even':123,417,525 'everyth':176,215,257 'expos':137,163,480 'face':159 'file':423 'filebrows':107 'find':229 'firewal':242,251,280 'forward':76,385,486 'freedns.afraid.org':21,23 'freedns.afraid.org/)':22 'friend':300,327 'game':169 'get':128,400,418 'github.com':109,375 'github.com/filebrowser/filebrowser),':108 'github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':374 'give':31 'go':70,463 'gui':369 'guid':273,358 'harder':227 'home':459 'ignor':472,533 'impact':350 'incom':303 'interfac':182 'internet':142,175 'ip':44,63,530 'iptabl':249 'ipv6':232 'isn':539 'isp':66 'key':545 'kind':16 'like':12,217 'list':156 'll':30,380,416 'local':411 'lot':345 'maintain':511 'make':223 'manag':204,266 'mean':414 'might':233,366,432 'mind':520 'minut':272 'move':187 'much':493 'nas/setup':139 'need':4,13,57,262,382,438 'network':191,412 'nextcloud':103 'nftabl':248 'nginx':168 'note':512 'one':26 'outward':158 'perform':352 'pick':37 'piec':535 'point':49 'port':75,77,210,260,384,388,485 'privat':190 'probabl':349 'program':171 'proper':541 'provid':434 'public':62 'quick':154 're':87,134,293,319 'realist':315 'reduc':341,389 'regard':83 'requir':164,330 'restrict':282 'risk':343 'router':73,489 'run':130 'safe':471 'safeti':153 'scan':531 'secur':518 'server':81,160,167,170,206,290,335,404,431 'servic':20,165,225,264,429 'set':253 'setup':116,357,504 'simpli':105,446 'sinc':85 'smb/samba':419 'softwar':84 'someth':124,216 'speak':316 'ssh':180 'stack':241 'stay':95 'step':474 'subdomain':34 'suggest':93 'surfac':392,497 'syncth':89 'thing':149 'traffic':537 'truena':80,126 'typic':529 'updat':42 'use':88,106,118,208,247,278,367 've':60,144 'visibl':527 'vpn':195,267,338,398,450,482 'vulner':101 'want':202 'way':113 'web':166 'wg':387 'whatnot':184 'whenev':50 'wiki.nftables.org':275,309,313 'wiki.nftables.org/wiki-nftables/':308 'wiki.nftables.org/wiki-nftables/index.php/geoip_matching))':312 'wiki.nftables.org/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':274 'wireguard':194,337,378,465,514 'won':347,490,523 'work':270 'workflow':445 'would':92 'www.digitalocean.com':362 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11)':361 'x':172"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/6755342"
  +editedAt: DateTimeImmutable @1725315000 {#1377
    date: 2024-09-03 00:10:00.0 +02:00
  }
  +createdAt: DateTimeImmutable @1705447369 {#1927
    date: 2024-01-17 00:22:49.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
4 DENIED moderate
App\Entity\EntryComment {#1365
  +user: Proxies\__CG__\App\Entity\User {#1378 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "opensource@lemmy.ml"
    +title: "opensource"
    +description: """
      All about open source! Feel free to ask questions, and share news, and interesting stuff!\n
      \n
      Useful Links\n
      ============\n
      \n
      - [Open Source Initiative](https://opensource.org/)\n
      - [Free Software Foundation](https://www.fsf.org/)\n
      - [Electronic Frontier Foundation](https://www.eff.org/)\n
      - [Software Freedom Conservancy](https://sfconservancy.org/)\n
      - [It’s FOSS](https://itsfoss.com/)\n
      \n
      Rules\n
      =====\n
      \n
      - Posts must be relevant to the open source ideology\n
      - No NSFW content\n
      - No hate speech, bigotry, etc\n
      \n
      Related Communities\n
      ===================\n
      \n
      - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
      - [!libre_software@lemmy.ml](https://lemmy.ml/c/libre_software)\n
      - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
      - [!linux@lemmy.ml](https://lemmy.ml/c/linux)\n
      - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
      \n
      Community icon from opensource.org, but we are not affiliated with them.
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 97
    +entryCommentCount: 1299
    +postCount: 2
    +postCommentCount: 5
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729583535 {#321
      date: 2024-10-22 09:52:15.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 128
    +apId: "opensource@lemmy.ml"
    +apProfileId: "https://lemmy.ml/c/opensource"
    +apPublicUrl: "https://lemmy.ml/c/opensource"
    +apFollowersUrl: "https://lemmy.ml/c/opensource/followers"
    +apInboxUrl: "https://lemmy.ml/inbox"
    +apDomain: "lemmy.ml"
    +apPreferredUsername: "opensource"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703910302 {#322
      date: 2023-12-30 05:25:02.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703910301 {#316
      date: 2023-12-30 05:25:01.0 +01:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    You don’t need to own a domain, what you most likely need is some kind of dynamic DNS service.\n
    \n
    [freedns.afraid.org](https://freedns.afraid.org/) is one of them, they’ll give you a subdomain you can pick and the client will update the IP to which the domain point whenever it changes.\n
    \n
    This is what you need, assuming you’ve a public IP from your ISP and you can go into your router and port forward ports to your TrueNAS server.\n
    \n
    Now regarding software, since you’re using Syncthing already I would suggest you stay away from the complexities and vulnerabilities of Nextcloud and simply use [FileBrowser](https://github.com/filebrowser/filebrowser), this is way easier to setup and use. I believe there’s even something on TrueNAS to get it running.\n
    \n
    How if you’re about to expose your NAS/setup to the internet you’ve to consider a few things for your own safety.\n
    \n
    **Quick check list for outward facing servers:**\n
    \n
    1. Only expose required services (web server nginx, game server, program x) to the Internet. Everything else such as SSH, configuration interfaces and whatnot can be moved to another private network and/or a WireGuard VPN you can connect to when you want to manage the server;\n
    2. Use custom ports with 5 digits for everything - something like 23901 (up to 65535) to make your service(s) harder to find;\n
    3. Disable IPv6? Might be easier than dealing with a dual stack firewall and/or other complexities;\n
    4. Use nftables / iptables / another firewall and set it to drop everything but those ports you need for services and management VPN access to work - [10 minute guide](https://wiki.nftables.org/wiki-nftables/index.php/Quick_reference-nftables_in_10_minutes);\n
    5. Use your firewall to restrict what countries are allowed to access your server. If you’re just doing it for a few friends only allow incoming connection from your country ([wiki.nftables.org/wiki-nftables/…/GeoIP_matching](https://wiki.nftables.org/wiki-nftables/index.php/GeoIP_matching))\n
    \n
    Realistically speaking if you’re doing this just for you / a few friends why not require them to access the server through WireGuard VPN? This will reduce the risk a LOT and won’t probably impact the performance. This is a decent setup guide [digitalocean.com/…/how-to-set-up-wireguard-on-deb…](https://www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11) and you might use this GUI to add/remove clients easily [github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)\n
    \n
    With WireGuard you’ll only need to port forward the WG port reducing the attack surface. After you connect to the VPN you get access to the server as if you were on the local network. This mean you’ll even get SMB/Samba access to the files and/or access to any other service the server might me providing, you don’t need anything else or change your current workflow, simply connect to the VPN and access your data as if you were home.\n
    \n
    Another advantage of going with WireGuard is that you can more safely ignore the step (4) and (5) because only exposing the VPN through a port forward in your router won’t create much of an attack surface / anything that can be bruteforced. Your setup will be easier to deploy and maintain.\n
    \n
    Note that WireGuard is designed with security in mind and it won’t even be visible in typical IP scans / will ignore any piece of traffic that isn’t properly encrypted with your keys.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1705447369 {#1605
    date: 2024-01-17 00:22:49.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
    "@Rudee@lemmy.ml"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1370 …}
  +nested: Doctrine\ORM\PersistentCollection {#1375 …}
  +votes: Doctrine\ORM\PersistentCollection {#2424 …}
  +reports: Doctrine\ORM\PersistentCollection {#1898 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1841 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2354 …}
  -id: 315308
  -bodyTs: "'/)':24 '/community/tutorials/how-to-set-up-wireguard-on-debian-11)':363 '/filebrowser/filebrowser),':110 '/geoip_matching':311 '/how-to-set-up-wireguard-on-deb':360 '/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':376 '/wiki-nftables/':310 '/wiki-nftables/index.php/geoip_matching))':314 '/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':276 '1':161 '10':271 '2':207 '23901':218 '3':230 '4':246,475 '5':212,277,477 '65535':221 'access':268,288,333,401,420,425,452 'add/remove':371 'advantag':461 'allow':286,302 'alreadi':90 'and/or':192,243,424 'anoth':189,250,460 'anyth':439,498 'assum':58 'attack':391,496 'away':96 'believ':120 'bruteforc':502 'chang':52,442 'check':155 'client':40,372 'complex':99,245 'configur':181 'connect':198,304,395,447 'consid':146 'countri':284,307 'creat':492 'current':444 'custom':209 'data':454 'deal':237 'decent':356 'deploy':509 'design':516 'digit':213 'digitalocean.com':359 'disabl':231 'dns':19 'domain':8,48 'drop':256 'dual':240 'dynam':18 'easier':114,235,507 'easili':373 'els':177,440 'encrypt':542 'even':123,417,525 'everyth':176,215,257 'expos':137,163,480 'face':159 'file':423 'filebrows':107 'find':229 'firewal':242,251,280 'forward':76,385,486 'freedns.afraid.org':21,23 'freedns.afraid.org/)':22 'friend':300,327 'game':169 'get':128,400,418 'github.com':109,375 'github.com/filebrowser/filebrowser),':108 'github.com/ngoduykhanh/wireguard-ui](https://github.com/ngoduykhanh/wireguard-ui)':374 'give':31 'go':70,463 'gui':369 'guid':273,358 'harder':227 'home':459 'ignor':472,533 'impact':350 'incom':303 'interfac':182 'internet':142,175 'ip':44,63,530 'iptabl':249 'ipv6':232 'isn':539 'isp':66 'key':545 'kind':16 'like':12,217 'list':156 'll':30,380,416 'local':411 'lot':345 'maintain':511 'make':223 'manag':204,266 'mean':414 'might':233,366,432 'mind':520 'minut':272 'move':187 'much':493 'nas/setup':139 'need':4,13,57,262,382,438 'network':191,412 'nextcloud':103 'nftabl':248 'nginx':168 'note':512 'one':26 'outward':158 'perform':352 'pick':37 'piec':535 'point':49 'port':75,77,210,260,384,388,485 'privat':190 'probabl':349 'program':171 'proper':541 'provid':434 'public':62 'quick':154 're':87,134,293,319 'realist':315 'reduc':341,389 'regard':83 'requir':164,330 'restrict':282 'risk':343 'router':73,489 'run':130 'safe':471 'safeti':153 'scan':531 'secur':518 'server':81,160,167,170,206,290,335,404,431 'servic':20,165,225,264,429 'set':253 'setup':116,357,504 'simpli':105,446 'sinc':85 'smb/samba':419 'softwar':84 'someth':124,216 'speak':316 'ssh':180 'stack':241 'stay':95 'step':474 'subdomain':34 'suggest':93 'surfac':392,497 'syncth':89 'thing':149 'traffic':537 'truena':80,126 'typic':529 'updat':42 'use':88,106,118,208,247,278,367 've':60,144 'visibl':527 'vpn':195,267,338,398,450,482 'vulner':101 'want':202 'way':113 'web':166 'wg':387 'whatnot':184 'whenev':50 'wiki.nftables.org':275,309,313 'wiki.nftables.org/wiki-nftables/':308 'wiki.nftables.org/wiki-nftables/index.php/geoip_matching))':312 'wiki.nftables.org/wiki-nftables/index.php/quick_reference-nftables_in_10_minutes);':274 'wireguard':194,337,378,465,514 'won':347,490,523 'work':270 'workflow':445 'would':92 'www.digitalocean.com':362 'www.digitalocean.com/community/tutorials/how-to-set-up-wireguard-on-debian-11)':361 'x':172"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/6755342"
  +editedAt: DateTimeImmutable @1725315000 {#1377
    date: 2024-09-03 00:10:00.0 +02:00
  }
  +createdAt: DateTimeImmutable @1705447369 {#1927
    date: 2024-01-17 00:22:49.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
5 DENIED edit
App\Entity\Magazine {#313
  +icon: Proxies\__CG__\App\Entity\Image {#294 …}
  +name: "opensource@lemmy.ml"
  +title: "opensource"
  +description: """
    All about open source! Feel free to ask questions, and share news, and interesting stuff!\n
    \n
    Useful Links\n
    ============\n
    \n
    - [Open Source Initiative](https://opensource.org/)\n
    - [Free Software Foundation](https://www.fsf.org/)\n
    - [Electronic Frontier Foundation](https://www.eff.org/)\n
    - [Software Freedom Conservancy](https://sfconservancy.org/)\n
    - [It’s FOSS](https://itsfoss.com/)\n
    \n
    Rules\n
    =====\n
    \n
    - Posts must be relevant to the open source ideology\n
    - No NSFW content\n
    - No hate speech, bigotry, etc\n
    \n
    Related Communities\n
    ===================\n
    \n
    - [!libre_culture@lemmy.ml](https://lemmy.ml/c/libre_culture)\n
    - [!libre_software@lemmy.ml](https://lemmy.ml/c/libre_software)\n
    - [!libre_hardware@lemmy.ml](https://lemmy.ml/c/libre_hardware)\n
    - [!linux@lemmy.ml](https://lemmy.ml/c/linux)\n
    - [!technology@lemmy.ml](https://lemmy.ml/c/technology)\n
    \n
    Community icon from opensource.org, but we are not affiliated with them.
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 97
  +entryCommentCount: 1299
  +postCount: 2
  +postCommentCount: 5
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729583535 {#321
    date: 2024-10-22 09:52:15.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#285 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
  +entries: Doctrine\ORM\PersistentCollection {#228 …}
  +posts: Doctrine\ORM\PersistentCollection {#186 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
  +bans: Doctrine\ORM\PersistentCollection {#165 …}
  +reports: Doctrine\ORM\PersistentCollection {#151 …}
  +badges: Doctrine\ORM\PersistentCollection {#129 …}
  +logs: Doctrine\ORM\PersistentCollection {#119 …}
  +awards: Doctrine\ORM\PersistentCollection {#108 …}
  +categories: Doctrine\ORM\PersistentCollection {#95 …}
  -id: 128
  +apId: "opensource@lemmy.ml"
  +apProfileId: "https://lemmy.ml/c/opensource"
  +apPublicUrl: "https://lemmy.ml/c/opensource"
  +apFollowersUrl: "https://lemmy.ml/c/opensource/followers"
  +apInboxUrl: "https://lemmy.ml/inbox"
  +apDomain: "lemmy.ml"
  +apPreferredUsername: "opensource"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703910302 {#322
    date: 2023-12-30 05:25:02.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703910301 {#316
    date: 2023-12-30 05:25:01.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