Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
C
calyxos
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 207
    • Issues 207
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 0
    • Merge requests 0
  • Requirements
    • Requirements
    • List
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • CalyxOS
  • calyxos
  • Issues
  • #349

Closed
Open
Created Feb 12, 2021 by Chirayu Desai@cdeOwner

VPN in different user for packet filtering

We want to do all kinds of stuff with internet traffic - Domain blocking, IP blocking, logging - lots of things that can be done.

Android already supports sending all traffic to a VPN, and you can run one VPN per user. A user is an android user you create from settings, or a work profile - and we want a work profile.

That way we can have multiple VPNs running at the same time without any conflicts.

Then we just need to setup some routing to send all traffic to our firewall VPN always, and then if the user is using a separate encrypted VPN, we send it to that afterwards.

So we have two users

  • user 0 - the default, main user
  • user 10 - a work profile we created just to run our firewall VPN

What we need is

  1. Send all traffic from user 0 to firewall VPN running in user 10, always
  2. If user 0 has it's own encrypted VPN running, we need to send traffic back to that instead of directly outside.

We don't really care about user 10 too much apart from just having it run the VPN app - don't want it to be used for anything else, users can have a third work profile if they want, we have patches for that.

This then avoids complexity, and lets us make some decisions to make writing all the rules easier.

Edited Feb 12, 2021 by Chirayu Desai
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking