{"id":13575812,"url":"https://github.com/pedroeml/checkpoint-mobile-access-vpn","last_synced_at":"2025-04-04T23:30:42.999Z","repository":{"id":120505163,"uuid":"223244571","full_name":"pedroeml/checkpoint-mobile-access-vpn","owner":"pedroeml","description":"Linux setup to work with Check Point Mobile Access VPN.","archived":true,"fork":false,"pushed_at":"2019-11-22T15:06:48.000Z","size":227,"stargazers_count":55,"open_issues_count":0,"forks_count":21,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-05T11:44:08.712Z","etag":null,"topics":["linux-setup","sdkman","ssl","tutorial","vpn"],"latest_commit_sha":null,"homepage":"https://pedroeml.github.io/checkpoint-mobile-access-vpn","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pedroeml.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-11-21T19:05:12.000Z","updated_at":"2024-08-16T09:47:34.000Z","dependencies_parsed_at":"2024-01-19T08:14:54.706Z","dependency_job_id":"bbeca9f9-4149-449b-be3b-df7969057ef6","html_url":"https://github.com/pedroeml/checkpoint-mobile-access-vpn","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pedroeml%2Fcheckpoint-mobile-access-vpn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pedroeml%2Fcheckpoint-mobile-access-vpn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pedroeml%2Fcheckpoint-mobile-access-vpn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pedroeml%2Fcheckpoint-mobile-access-vpn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pedroeml","download_url":"https://codeload.github.com/pedroeml/checkpoint-mobile-access-vpn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247266474,"owners_count":20910831,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linux-setup","sdkman","ssl","tutorial","vpn"],"created_at":"2024-08-01T15:01:04.446Z","updated_at":"2025-04-04T23:30:42.362Z","avatar_url":"https://github.com/pedroeml.png","language":null,"funding_links":[],"categories":["Linux"],"sub_categories":["Links"],"readme":"# Linux setup Check Point Mobile Access VPN\n\n\u003cp align=\"center\"\u003e\n    \u003cimg style=\"background-color:white\" src=\"https://www.checkpoint.com/wp-content/themes/checkpoint-theme-v2/images/cp-logo-3x.png.pagespeed.ce.giMz7NxZUR.png\"/\u003e\n\u003c/p\u003e\n\nThis is a step-by-step tutorial to setup your Linux machine with all the required dependencies to work with [Check Point Mobile Access VPN](https://www.checkpoint.com/products/mobile-access/). This tutorial also includes some troubleshooting.\n\n## Introduction\n\nIn the past year I had to setup my Ubuntu 18.04 laptop twice. Both times were very exhausting and took long hours until it was ready to use due to so many different errors hard to find the solution on Google. So no need to mention this tutorial (at the current state) is only useful if you're working with a clean and recently installed Ubuntu LTS distro.\n\n## Dependencies\n\nFirst make sure your operating system is up-to-date with:\n\n```bash\n$ sudo apt-get update \u0026\u0026 sudo apt-get upgrade\n```\n\nNow you need some basic tooling for installing and building independent package vendors:\n\n```bash\n$ sudo apt-get install software-properties-common apt-transport-https wget curl\n$ sudo apt-get install build-essential\n```\n\n### Java\n\nIf your system has no Java version installed, make sure you install the version 8 (or higher). You can do that quickly with [SDKMAN!](https://sdkman.io/), but first be sure you're on your home directory with:\n\n```bash\n$ cd ~\n```\n\nAnd then for installing SDKMAN!:\n\n```bash\n$ curl -s \"https://get.sdkman.io\" | bash\n$ source \"$HOME/.sdkman/bin/sdkman-init.sh\"\n```\n\nList the available Java versions and try to find the OpenJDK version 8 or higher (in my case it was `8.0.232-open`) and then install it:\n\n```bash \n$ sdk list java\n$ sdk install java 8.0.232-open\n```\n\n### SSL\n\nFor the Check Point Mobile Access required packages, you'll need to install `xterm` and some SSL packages with the following commands:\n\n```bash\n$ sudo apt-get install xterm\n$ sudo apt-get install libnss3-tools certutil\n```\n\n### 32 bit libs\n\nIf you're running a 64 bit operating system, you'll need to install some 32 bit compatible libraries:\n\n```bash\n$ sudo apt-get install libx11-6\n$ sudo dpkg --add-architecture i386\n$ sudo apt-get update\n$ sudo apt-get install multiarch-support\n$ sudo apt-get install libx11-6:i386 libc6:i386 libncurses5:i386 libstdc++6:i386 libstdc++5:i386 libpam0g:i386\n```\n\n## Downloading the Shell Scripts\n\nThere are two shell script files you'll need to download to setup Check Point Mobile Access VPN on your machine:\n\n- `snx_install.sh`\n- `cshell_install.sh`\n\nBoth of them you can get on your company's Mobile Access VPN page.\n\n### 1. Login\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"login.png\"/\u003e\n\u003c/p\u003e\n\n\n### 2. Click on \"Settings\" button\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"main.png\"/\u003e\n\u003c/p\u003e\n\n### 3. Click on \"Download Installation for Linux\" for both SSL Network Extender and Check Point Mobile Access Portal Agent\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"settings.png\"/\u003e\n\u003c/p\u003e\n\n## Running the Shell Scripts\n\nThe scripts you've just downloaded are just regular files. So we need to change their permissions to make them executable with the following commands:\n\n```bash\n$ chmod +x snx_install.sh\n$ chmod +x cshell_install.sh\n```\n\nThe first script we're going to run is the `snx_install.sh`, which should not give any errors when installing it.\n\n```bash\n$ ./snx_install.sh\nInstallation successfull\n```\n\nHere comes the tricky part: running the other shell script. The script will ask you for your password because it's going to run some things as `sudo`. Everything should be going fine until it gets to the last step: when it tries to run `/usr/bin/cshell/launcher`. That's where it gets stuck. This executable file does not work properly with `sudo`.\n\n```bash\n$ ./cshell_install.sh\nStart Check Point Mobile Access Portal Agent installation\nExtracting Mobile Access Portal Agent... Done\nInstalling Mobile Access Portal Agent... Done\nInstalling certificate... Done\nStarting Mobile Access Portal Agent...\n```\n\nWhen you notice it is stuck at the message above, open Ubuntu's system monitor and try to find a process called `launcher` with 0% CPU usage and `Sleeping` status. Once you find it, kill it.\n\nDo not ever type `CTRL+C` on the terminal or try to end its process or `launcher`'s. You must kill the `launcher` process. Otherwise, the script will do a clean-up and erase everything it has made that will allow you to make Check Point Mobile Access VPN work.\n\nIf you've done everything right, there should be an executable file called `launcher` at `/usr/bin/cshell/`. If so, run it and it should have been displayed some logs as follows:\n\n```\n$ /usr/bin/cshell/launcher\nLAUNCHER\u003e Starting CShell...\nLAUNCHER\u003e CShell Started\n```\n\nIt means it has successfully been installed, and you should be fine trying to connect to the VPN now, but it doesn't mean we don't have more work to do.\n\n## Troubleshooting\n\nIf you end up with an error when you're trying to run `/usr/bin/cshell/launcher` about a named pipe file called `cshell.fifo` inside the `/tmp` folder, just delete it with:\n\n```bash\n$ sudo rm /tmp/cshell.fifo\n```\n\n## Post-install\n\nYou need to disable one of your system's startup applications. You should be able to see one of them called `cshell` with a marked checkbox. All it does is running the `launcher` executable file in `/usr/bin/cshell/`. You must uncheck it because every time you let it run automatically it's going to be run as `sudo`, which means it's going to get stuck.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"startup.png\"/\u003e\n\u003c/p\u003e\n\nNow we're going to do a little trick to make it start automatically without `sudo`: run it inside the `.bashrc` file, so every time you open up a terminal it's going to run with your user normal permissions. Actually, we only want to run it once when you log in, right? So why don't we simply run it inside `.profile`? Because everything in `.profile` run as `sudo`, so the `launcher` is going to get stuck.\n\nSo here is the tricky part: let's create a simple log file to check whether `launcher` should run every time you open up a terminal window. Add the following lines to the `.profile` file to remove the log file every time you log in.\n\n```bash\nif [ -f \"/home/[MY-USER-NAME]/cshell_launcher.log\" ]; then\n    rm /home/[MY-USER-NAME]/cshell_launcher.log\nfi\n```\n\nOn the `.bashrc` file add the following lines to check whether it should run the `launcher` file every time you open up a terminal window:\n\n```bash\nif [ ! -f \"/home/[MY-USER-NAME]/cshell_launcher.log\" ]; then\n    /usr/bin/cshell/launcher \u003e /home/[MY-USER-NAME]/cshell_launcher.log\nfi\n```\n\nRestart your computer, log into your user account and check if the log file we created is on your home directory by opening a terminal and typing:\n\n```bash\n$ ls | grep cshell\ncshell_launcher.log\n```\n\nThen show its contents by using `cat` and it should be displayed as the following:\n\n```bash\n$ cat cshell_launcher.log \nLAUNCHER\u003e Starting CShell...\nLAUNCHER\u003e CShell Started\n```\n\nNow you should be all set. Open your company's Check Point Mobile Access page and you should be able to connect everytime you log into your computer. Just remember to open up a terminal window first :)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedroeml%2Fcheckpoint-mobile-access-vpn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpedroeml%2Fcheckpoint-mobile-access-vpn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedroeml%2Fcheckpoint-mobile-access-vpn/lists"}