[GH-ISSUE #1609] Barrier.pem not generated on MacOS install for v2.4.0 #1194

Open
opened 2026-05-05 07:34:40 -06:00 by gitea-mirror · 36 comments
Owner

Originally created by @beewoolie on GitHub (Mar 12, 2022).
Original GitHub issue: https://github.com/debauchee/barrier/issues/1609

What happened?

Using MacOS as server, Debian as client. Debian installs 2.3.3. Logfile on Mac explains that there is no certificate, which is true. Used Debian install to generate certificate and then copied it to the Mac into the directory ~/Library/Application Support/barrier/SSL and the program works.

Seems like the certificate generation is broken on MacOS 11.6.2 if not others.

Version

v2.4.0

Git commit hash (if applicable)

No response

If applicable, where did you install Barrier from?

Brew.

What OSes are you seeing the problem on? (Check all that apply)

macOS

What OS versions are you using?

BigSur 11.6.2

Relevant log output

The barrier log window on MacOS doesn't allow cut and paste.

Any other information

No response

Originally created by @beewoolie on GitHub (Mar 12, 2022). Original GitHub issue: https://github.com/debauchee/barrier/issues/1609 ### What happened? Using MacOS as server, Debian as client. Debian installs 2.3.3. Logfile on Mac explains that there is no certificate, which is true. Used Debian install to generate certificate and then copied it to the Mac into the directory ~/Library/Application Support/barrier/SSL and the program works. Seems like the certificate generation is broken on MacOS 11.6.2 if not others. ### Version v2.4.0 ### Git commit hash (if applicable) _No response_ ### If applicable, where did you install Barrier from? Brew. ### What OSes are you seeing the problem on? (Check all that apply) macOS ### What OS versions are you using? BigSur 11.6.2 ### Relevant log output ```shell The barrier log window on MacOS doesn't allow cut and paste. ``` ### Any other information _No response_
Author
Owner

@cweekly commented on GitHub (Mar 12, 2022):

Same issue.
Server: macOS 12.2.1 Monterey
Client: macOS 10.15.7 Catalina
Both: Barrier v2.4.0

Client stuck at "Barrier is starting."
Client logs show
ERROR: ssl certificate doesn't exist: /Users/REDACTED/Library/Application Support/barrier/SSL/Barrier.pem

<!-- gh-comment-id:1065945578 --> @cweekly commented on GitHub (Mar 12, 2022): Same issue. Server: macOS 12.2.1 Monterey Client: macOS 10.15.7 Catalina Both: Barrier v2.4.0 Client stuck at "Barrier is starting." Client logs show `ERROR: ssl certificate doesn't exist: /Users/REDACTED/Library/Application Support/barrier/SSL/Barrier.pem`
Author
Owner

@cweekly commented on GitHub (Mar 12, 2022):

FWIW I tried installing v2.3.4 on the client; confirmed, that version succeeds in creating Barrier.pem.
And with the server still on v2.4.0, the client would just time out.
But I downgraded the server to v2.3.4 to match the client, and now it all works.

Hoping for a fix that lets me upgrade to 2.4.0 and stay up to date.

Also, thanks for creating and maintaining a really useful piece of software!

<!-- gh-comment-id:1065947624 --> @cweekly commented on GitHub (Mar 12, 2022): FWIW I tried installing v2.3.4 on the client; confirmed, that version succeeds in creating Barrier.pem. And with the server still on v2.4.0, the client would just time out. But I downgraded the server to v2.3.4 to match the client, and now it all works. Hoping for a fix that lets me upgrade to 2.4.0 and stay up to date. Also, thanks for creating and maintaining a really useful piece of software!
Author
Owner

@rushgeo commented on GitHub (Mar 14, 2022):

As a workaround, you can manually create a certificate for it to use.

In a terminal on the MacOS host:

cd "/Users/USERNAME/Library/Application Support/barrier/SSL"
openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem
<!-- gh-comment-id:1066938159 --> @rushgeo commented on GitHub (Mar 14, 2022): As a workaround, you can manually create a certificate for it to use. In a terminal on the MacOS host: ``` cd "/Users/USERNAME/Library/Application Support/barrier/SSL" openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem ```
Author
Owner

@cweekly commented on GitHub (Mar 15, 2022):

Thanks @rushgeo! I found the same workaround yesterday, tried it today, and confirmed it works. :)

<!-- gh-comment-id:1067960867 --> @cweekly commented on GitHub (Mar 15, 2022): Thanks @rushgeo! I found the same workaround yesterday, tried it today, and confirmed it works. :)
Author
Owner

@Surjio commented on GitHub (Mar 23, 2022):

Another thank you to @rushgeo :-) Solved it for me.

<!-- gh-comment-id:1076032216 --> @Surjio commented on GitHub (Mar 23, 2022): Another thank you to @rushgeo :-) Solved it for me.
Author
Owner

@jiang-zx commented on GitHub (Mar 24, 2022):

Mac can't turn off ssl?

<!-- gh-comment-id:1077577166 --> @jiang-zx commented on GitHub (Mar 24, 2022): Mac can't turn off ssl?
Author
Owner

@benmordecai commented on GitHub (Mar 24, 2022):

I had the same problem with a fresh install of Barrier to Arch linux as server, Windows 10 client. Had to manually generate Barrier.pem using @rushgeo's method and it started working

<!-- gh-comment-id:1078024173 --> @benmordecai commented on GitHub (Mar 24, 2022): I had the same problem with a fresh install of Barrier to Arch linux as server, Windows 10 client. Had to manually generate Barrier.pem using @rushgeo's method and it started working
Author
Owner

@feilongfl commented on GitHub (Mar 26, 2022):

I had same problem with install to windows 10 laptop and manjaro linux.
and using @rushgeo's method on both device and it started working.

<!-- gh-comment-id:1079575088 --> @feilongfl commented on GitHub (Mar 26, 2022): I had same problem with install to `windows 10` laptop and `manjaro linux`. and using @rushgeo's method on both device and it started working.
Author
Owner

@mdjahidhasan009 commented on GitHub (Mar 29, 2022):

Thanks, @rushgeo its works in windows 10 also.

<!-- gh-comment-id:1081776156 --> @mdjahidhasan009 commented on GitHub (Mar 29, 2022): Thanks, @rushgeo its works in windows 10 also.
Author
Owner

@ksajan commented on GitHub (Apr 1, 2022):

@rushgeo It didn't solve it for me.
[2022-04-02T03:01:51] INFO: OpenSSL 3.0.0 7 sep 2021
[2022-04-02T03:01:51] ERROR: ssl error occurred (generic failure)
[2022-04-02T03:01:51] ERROR: error:0A000126:SSL routines::unexpected eof while reading
[2022-04-02T03:01:51] ERROR: failed to connect secure socket
Now it gives me this error. Not sure whats the problem

<!-- gh-comment-id:1086345312 --> @ksajan commented on GitHub (Apr 1, 2022): @rushgeo It didn't solve it for me. [2022-04-02T03:01:51] INFO: OpenSSL 3.0.0 7 sep 2021 [2022-04-02T03:01:51] ERROR: ssl error occurred (generic failure) [2022-04-02T03:01:51] ERROR: error:0A000126:SSL routines::unexpected eof while reading [2022-04-02T03:01:51] ERROR: failed to connect secure socket Now it gives me this error. Not sure whats the problem
Author
Owner

@janopae commented on GitHub (Jul 4, 2022):

Same thing happens on Linux: [2022-07-04T13:24:14] ERROR: ssl certificate doesn't exist: /home/jano/snap/barrier/682/.local/share/barrier/SSL/Barrier.pem

Could be solved by running that same openssl command in $HOME/snap/barrier/682/.local/share/barrier/SSL/.

<!-- gh-comment-id:1173725584 --> @janopae commented on GitHub (Jul 4, 2022): Same thing happens on Linux: `[2022-07-04T13:24:14] ERROR: ssl certificate doesn't exist: /home/jano/snap/barrier/682/.local/share/barrier/SSL/Barrier.pem` Could be solved by running [that same](https://github.com/debauchee/barrier/issues/1609#issuecomment-1066938159) openssl command in `$HOME/snap/barrier/682/.local/share/barrier/SSL/`.
Author
Owner

@Fauzdar1 commented on GitHub (Jul 16, 2022):

As a workaround, you can manually create a certificate for it to use.

In a terminal on the MacOS host:

cd /Users/USERNAME/Library/Application Support/barrier/SSL
openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem

Client doesn't start and no such directory. Am I missing something?

<!-- gh-comment-id:1186274584 --> @Fauzdar1 commented on GitHub (Jul 16, 2022): > As a workaround, you can manually create a certificate for it to use. > > In a terminal on the MacOS host: > > ``` > cd /Users/USERNAME/Library/Application Support/barrier/SSL > openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem > ``` Client doesn't start and no such directory. Am I missing something?
Author
Owner

@benmordecai commented on GitHub (Jul 16, 2022):

As a workaround, you can manually create a certificate for it to use.
In a terminal on the MacOS host:

cd /Users/USERNAME/Library/Application Support/barrier/SSL
openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem

Client doesn't start and no such directory. Am I missing something?

Can you post the exact commands and output you get?

<!-- gh-comment-id:1186275347 --> @benmordecai commented on GitHub (Jul 16, 2022): > > As a workaround, you can manually create a certificate for it to use. > > In a terminal on the MacOS host: > > ``` > > cd /Users/USERNAME/Library/Application Support/barrier/SSL > > openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem > > ``` > > Client doesn't start and no such directory. Am I missing something? Can you post the exact commands and output you get?
Author
Owner

@Fauzdar1 commented on GitHub (Jul 16, 2022):

That was fast, Thank you. But no issues, I came back again to delete my comment. The terminal did said No directory when CD'ing but I manually opened a terminal by looking up the folder in Finder. Now, I see the SSL fingerprint in the software, but it still stuck at starting in Mac for some reason.

<!-- gh-comment-id:1186276606 --> @Fauzdar1 commented on GitHub (Jul 16, 2022): That was fast, Thank you. But no issues, I came back again to delete my comment. The terminal did said No directory when CD'ing but I manually opened a terminal by looking up the folder in Finder. Now, I see the SSL fingerprint in the software, but it still stuck at starting in Mac for some reason.
Author
Owner

@Fauzdar1 commented on GitHub (Jul 16, 2022):

Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution.

So, to use it a machine as a server, you've to generate SSL certificate manually.

  1. To do that in MAC if you're willing to use MAC as the server:

    1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command
    //Bypassing Space using backward Slash \
    cd /Users/USERNAME/Library/Application\ Support/barrier/SSL 
    
    1. Generate the SSL certificate
    openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem
    
    1. Restart the App in MAC and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.
  2. To generate SSL in Windows for using it as a Server.

    1. Open CMD/PowerShell to its SSL location as in C:\Users\USERNAME\AppData\Local\Barrier\SSL. You can use the explore or the command
    cd C:\Users\USERNAME\AppData\Local\Barrier\SSL
    
    1. Generate the SSL certificate
    openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem
    
    1. Restart the App in Windows and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.

By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in Barrier Menu -> Change Settings -> Require Client Certificate.

This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all.

After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked.

Thank you the community support, I've switched from Share mouse to this and I like it here.

Edit:

If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work.

<!-- gh-comment-id:1186281717 --> @Fauzdar1 commented on GitHub (Jul 16, 2022): Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution. So, to use it a machine as a server, you've to generate SSL certificate manually. 1. To do that in MAC if you're willing to use MAC as the server: 1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command ``` //Bypassing Space using backward Slash \ cd /Users/USERNAME/Library/Application\ Support/barrier/SSL ``` 2. Generate the SSL certificate ``` openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem ``` 3. Restart the App in MAC and you'll see the generated SSL fingerprint. 4. Ready to use it as a server. 2. To generate SSL in Windows for using it as a Server. 1. Open CMD/PowerShell to its SSL location as in `C:\Users\USERNAME\AppData\Local\Barrier\SSL`. You can use the explore or the command ``` cd C:\Users\USERNAME\AppData\Local\Barrier\SSL ``` 2. Generate the SSL certificate ``` openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem ``` 3. Restart the App in Windows and you'll see the generated SSL fingerprint. 4. Ready to use it as a server. By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in `Barrier Menu -> Change Settings -> Require Client Certificate`. This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all. After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked. Thank you the community support, I've switched from Share mouse to this and I like it here. ### Edit: If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work.
Author
Owner

@benmordecai commented on GitHub (Jul 16, 2022):

Glad you got it worked out. Barrier used to do the SSL generation automatically and at one point an update broke it, but that is silent to anyone who already had the SSL generated from the earlier version. As far as I know, it is a bug as opposed to simply poor documentation.

<!-- gh-comment-id:1186284637 --> @benmordecai commented on GitHub (Jul 16, 2022): Glad you got it worked out. Barrier used to do the SSL generation automatically and at one point an update broke it, but that is silent to anyone who already had the SSL generated from the earlier version. As far as I know, it is a bug as opposed to simply poor documentation.
Author
Owner

@Fauzdar1 commented on GitHub (Jul 16, 2022):

Then, It's definitely understandable why it's not mentioned in the docs. But, I still think it should be below the Usage in Readme.md, when we know it's not working anymore. There's no issue pointing it out as a required step to use the software in the docs and not as a bug induced in a random update.

Anyone willing to use this Free and Open source software over paid software like Share mouse should be ready to take bit of efforts to make it work.

Thank you again

<!-- gh-comment-id:1186287478 --> @Fauzdar1 commented on GitHub (Jul 16, 2022): Then, It's definitely understandable why it's not mentioned in the docs. But, I still think it should be below the [Usage](https://github.com/debauchee/barrier#usage) in Readme.md, when we know it's not working anymore. There's no issue pointing it out as a required step to use the software in the docs and not as a bug induced in a random update. Anyone willing to use this Free and Open source software over paid software like Share mouse should be ready to take bit of efforts to make it work. Thank you again
Author
Owner

@sevpants commented on GitHub (Sep 8, 2022):

Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution.

So, to use it a machine as a server, you've to generate SSL certificate manually.

  1. To do that in MAC if you're willing to use MAC as the server:

    1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command
    //Bypassing Space using backward Slash \
    cd /Users/USERNAME/Library/Application\ Support/barrier/SSL 
    
    1. Generate the SSL certificate
    openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem
    
    1. Restart the App in MAC and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.
  2. To generate SSL in Windows for using it as a Server.

    1. Open CMD/PowerShell to its SSL location as in C:\Users\USERNAME\AppData\Local\Barrier\SSL. You can use the explore or the command
    cd C:\Users\USERNAME\AppData\Local\Barrier\SSL
    
    1. Generate the SSL certificate
    openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem
    
    1. Restart the App in Windows and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.

By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in Barrier Menu -> Change Settings -> Require Client Certificate.

This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all.

After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked.

Thank you the community support, I've switched from Share mouse to this and I like it here.

Edit:

If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work.

**Edit - I'm a dunce. My laptop was connecting to old internet access point. Fixed.

So I was able to set up ssl certs for both client (macos) and server (windows 10) and put the files in the right location. Both apps show the ssl fingerprint. On macos client is still get timed out for some reason.

I tried downloading the new release for both OSs to 2.4.0 since the rollback didnt work (and cleared local files too. Not sure what I'm missing.

<!-- gh-comment-id:1240906408 --> @sevpants commented on GitHub (Sep 8, 2022): > Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution. > > So, to use it a machine as a server, you've to generate SSL certificate manually. > > 1. To do that in MAC if you're willing to use MAC as the server: > > 1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command > > ``` > //Bypassing Space using backward Slash \ > cd /Users/USERNAME/Library/Application\ Support/barrier/SSL > ``` > > > > > > > > > > > > > 2. Generate the SSL certificate > > ``` > openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem > ``` > > > > > > > > > > > > > 3. Restart the App in MAC and you'll see the generated SSL fingerprint. > 4. Ready to use it as a server. > 2. To generate SSL in Windows for using it as a Server. > > 1. Open CMD/PowerShell to its SSL location as in `C:\Users\USERNAME\AppData\Local\Barrier\SSL`. You can use the explore or the command > > ``` > cd C:\Users\USERNAME\AppData\Local\Barrier\SSL > ``` > > > > > > > > > > > > > 2. Generate the SSL certificate > > ``` > openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem > ``` > > > > > > > > > > > > > 3. Restart the App in Windows and you'll see the generated SSL fingerprint. > 4. Ready to use it as a server. > > By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in `Barrier Menu -> Change Settings -> Require Client Certificate`. > > This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all. > > After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked. > > Thank you the community support, I've switched from Share mouse to this and I like it here. > > ### Edit: > If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work. **Edit - I'm a dunce. My laptop was connecting to old internet access point. Fixed. So I was able to set up ssl certs for both client (macos) and server (windows 10) and put the files in the right location. Both apps show the ssl fingerprint. On macos client is still get timed out for some reason. I tried downloading the new release for both OSs to 2.4.0 since the rollback didnt work (and cleared local files too. Not sure what I'm missing.
Author
Owner

@beewoolie commented on GitHub (Oct 11, 2022):

I believe it is possible, but /configuring/ to disable SSL isn't
simple.  I think it's a command line options and not a configuration
options.

On 22/3/24 05:30, jiang wrote:

Mac can't turn off ssl?


Reply to this email directly, view it on GitHub
https://github.com/debauchee/barrier/issues/1609#issuecomment-1077577166,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACN5T3BRJKCPGDD2ROM7CDVBRN7ZANCNFSM5QRLLR4A.
You are receiving this because you authored the thread.Message ID:
@.***>

--
/Marc Oscar Singer/
Woollysoft
+1.206.328.1718

<!-- gh-comment-id:1274351606 --> @beewoolie commented on GitHub (Oct 11, 2022): I believe it is possible, but /configuring/ to disable SSL isn't simple.  I think it's a command line options and not a configuration options. On 22/3/24 05:30, jiang wrote: > > Mac can't turn off ssl? > > — > Reply to this email directly, view it on GitHub > <https://github.com/debauchee/barrier/issues/1609#issuecomment-1077577166>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AACN5T3BRJKCPGDD2ROM7CDVBRN7ZANCNFSM5QRLLR4A>. > You are receiving this because you authored the thread.Message ID: > ***@***.***> > -- /Marc Oscar Singer/ *Woollysoft* +1.206.328.1718
Author
Owner

@benmordecai commented on GitHub (Oct 11, 2022):

As a workaround or troubleshooting step perhaps but since barrier shares keystrokes over a network I would not be keen on doing that without SSL enabled, since a packet sniffer would be able to capture keystrokes and passwords, etc.

<!-- gh-comment-id:1274582000 --> @benmordecai commented on GitHub (Oct 11, 2022): As a workaround or troubleshooting step perhaps but since barrier shares keystrokes over a network I would not be keen on doing that without SSL enabled, since a packet sniffer would be able to capture keystrokes and passwords, etc.
Author
Owner

@Rogersiver commented on GitHub (Mar 6, 2023):

I am as well encountering this problem. Installed the ssl .pem files in the correct locations in both mac and windows. Attempting to connect mac client to windows host with latest release. Appears to pair immediately but then times out.

<!-- gh-comment-id:1456382615 --> @Rogersiver commented on GitHub (Mar 6, 2023): I am as well encountering this problem. Installed the ssl .pem files in the correct locations in both mac and windows. Attempting to connect mac client to windows host with latest release. Appears to pair immediately but then times out.
Author
Owner

@Fauzdar1 commented on GitHub (Mar 6, 2023):

I am as well encountering this problem. Installed the ssl .pem files in the correct locations in both mac and windows. Attempting to connect mac client to windows host with latest release. Appears to pair immediately but then times out.

If you trust the network, you can disable the SSL through Barrier configuration by clicking Barrier -> Change Settings -> Untick Enable SSL, then you won't have to mess with SSL or PEM and it will connect perfectly.

<!-- gh-comment-id:1456430311 --> @Fauzdar1 commented on GitHub (Mar 6, 2023): > I am as well encountering this problem. Installed the ssl .pem files in the correct locations in both mac and windows. Attempting to connect mac client to windows host with latest release. Appears to pair immediately but then times out. If you trust the network, you can disable the SSL through Barrier configuration by clicking Barrier -> Change Settings -> Untick Enable SSL, then you won't have to mess with SSL or PEM and it will connect perfectly.
Author
Owner

@claudiusraphael commented on GitHub (Mar 15, 2023):

Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution.

So, to use it a machine as a server, you've to generate SSL certificate manually.

  1. To do that in MAC if you're willing to use MAC as the server:

    1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command
    //Bypassing Space using backward Slash \
    cd /Users/USERNAME/Library/Application\ Support/barrier/SSL 
    
    1. Generate the SSL certificate
    openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem
    
    1. Restart the App in MAC and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.
  2. To generate SSL in Windows for using it as a Server.

    1. Open CMD/PowerShell to its SSL location as in C:\Users\USERNAME\AppData\Local\Barrier\SSL. You can use the explore or the command
    cd C:\Users\USERNAME\AppData\Local\Barrier\SSL
    
    1. Generate the SSL certificate
    openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem
    
    1. Restart the App in Windows and you'll see the generated SSL fingerprint.
    2. Ready to use it as a server.

By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in Barrier Menu -> Change Settings -> Require Client Certificate.

This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all.

After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked.

Thank you the community support, I've switched from Share mouse to this and I like it here.

Edit:

If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work.

Luckily found this comment after spending hours to somehow figure out why on earth it is not possible to establish a connection between two MacBook Pro running Ventura.

This information is a must to include in the Readme or at least Wiki.

On macos Ventura only if you right from the start select client a ssl-key will be generated, if you choose server from the get go it will not be created, even if you remove the application and the .plist in users Libraries for Barrier later on (for example to overcome the problem that barrier can not auto-config after a hostname-change) - why, i was not able to find out.

Also, it is not possible to deactivate SSL on the client, because without ever having had a connection between server and client established you could not access the settings (which can not be accessed at all btw. as there simply is no such entry visible in macos Ventura and barrier 2.4), so creating the SSL-key manually becomes a must for the server.

Why SSL is by default activated and that default can't be overridden on setup is another riddle, especially in a trusted private local network, which i would assume is the most often given case for users of barrier.

Regarding the creation of the SSL-key it is worth noting that the 2-letter country-code that is asked for first is a necessity, while all other requested information can be filled blank by entering a dot on each question.

Another hurdle on macos is that if you do try to delete/reinstall barrier it will not let you proceed because it does not actually check if "Accessibility" right is enabled in Privacy & Security for barrier, meaning the entry will still be there after removing barrier and still enabled but barrier does not detect that, hence not able to go on. Just toggling it to disable quit barrier, launch barrier then enable the entry also has no effect - it is necessary to remove the entry and manually add it back in, as barrier does not add the entry if missing if it was present before.

Leaving those notes for those that by accident or sheer luck stumble over this or for those that care to summarize it and add a note to the wiki/readme for first-time setup on macos.

Good luck.

<!-- gh-comment-id:1469194710 --> @claudiusraphael commented on GitHub (Mar 15, 2023): > Oh, I made it work between Windows and Mac M1 with both machines as Client and Server. The important point, missing in docs, here is that to use a device as the Server, it must have the SSL fingerprint generated and this software for some reason doesn't do it automatically in Windows or Mac either. Hence, you see SSL disabled in it. And, if the SSL is disabled in the Server, the client won't connect to it. You can possibly (I've not checked it) disable this behavior by going in the software settings Barrier -> Change Settings and Disable SSL but, for someone like me who wanted to do this with SSL, here's the solution. > > So, to use it a machine as a server, you've to generate SSL certificate manually. > > 1. To do that in MAC if you're willing to use MAC as the server: > > 1. Open a terminal to its SSL location as in Library -> Application Support -> barrier -> SSL. You can use finder or the command > > ``` > //Bypassing Space using backward Slash \ > cd /Users/USERNAME/Library/Application\ Support/barrier/SSL > ``` > > > > > > > > > > > > > 2. Generate the SSL certificate > > ``` > openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem > ``` > > > > > > > > > > > > > 3. Restart the App in MAC and you'll see the generated SSL fingerprint. > 4. Ready to use it as a server. > 2. To generate SSL in Windows for using it as a Server. > > 1. Open CMD/PowerShell to its SSL location as in `C:\Users\USERNAME\AppData\Local\Barrier\SSL`. You can use the explore or the command > > ``` > cd C:\Users\USERNAME\AppData\Local\Barrier\SSL > ``` > > > > > > > > > > > > > 2. Generate the SSL certificate > > ``` > openssl req -x509 -nodes -days 365 -subj //CN=Barrier -newkey rsa:4096 -keyout Barrier.pem -out Barrier.pem > ``` > > > > > > > > > > > > > 3. Restart the App in Windows and you'll see the generated SSL fingerprint. > 4. Ready to use it as a server. > > By default, the client's SSL is disabled but if you want to go full SSL, you can enable it in `Barrier Menu -> Change Settings -> Require Client Certificate`. > > This is what the docs/Reame.md should mention and it will resolve possibly all issues mentioning it's stuck in MAC or doesn't work at all. > > After making it work, I understand why I found a few comments about this software even before finding this that mentioned it would be awesome if it worked. > > Thank you the community support, I've switched from Share mouse to this and I like it here. > > ### Edit: > If you don't care about the SSL or don't want to go the aforementioned technical way, you can just disable it in the Settings menu as mentioned above in the first para and it will work. Luckily found this comment after spending hours to somehow figure out why on earth it is not possible to establish a connection between two MacBook Pro running Ventura. This information is a must to include in the Readme or at least Wiki. On macos Ventura only if you right from the start select client a ssl-key will be generated, if you choose server from the get go it will not be created, even if you remove the application and the .plist in users Libraries for Barrier later on (for example to overcome the problem that barrier can not auto-config after a hostname-change) - why, i was not able to find out. Also, it is not possible to deactivate SSL on the client, because without ever having had a connection between server and client established you could not access the settings (which can not be accessed at all btw. as there simply is no such entry visible in macos Ventura and barrier 2.4), so creating the SSL-key manually becomes a must for the server. Why SSL is by default activated and that default can't be overridden on setup is another riddle, especially in a trusted private local network, which i would assume is the most often given case for users of barrier. Regarding the creation of the SSL-key it is worth noting that the 2-letter country-code that is asked for first is a necessity, while all other requested information can be filled blank by entering a dot on each question. Another hurdle on macos is that if you do try to delete/reinstall barrier it will not let you proceed because it does not actually check if "Accessibility" right is enabled in Privacy & Security for barrier, meaning the entry will still be there after removing barrier and still enabled but barrier does not detect that, hence not able to go on. Just toggling it to disable quit barrier, launch barrier then enable the entry also has no effect - it is necessary to remove the entry and manually add it back in, as barrier does not add the entry if missing if it was present before. Leaving those notes for those that by accident or sheer luck stumble over this or for those that care to summarize it and add a note to the wiki/readme for first-time setup on macos. Good luck.
Author
Owner

@benmordecai commented on GitHub (Mar 15, 2023):

It's a rather big security exposure to have keyboard and clipboard data shared across a network in plain text as it is almost certain to be putting passwords and security keys on the network, so the SSL being on by default is definitely the right approach. The problem is simply the fact that the initially SSL key generation is not working, which just needs to get fixed.

<!-- gh-comment-id:1469893676 --> @benmordecai commented on GitHub (Mar 15, 2023): It's a rather big security exposure to have keyboard and clipboard data shared across a network in plain text as it is almost certain to be putting passwords and security keys on the network, so the SSL being on by default is definitely the right approach. The problem is simply the fact that the initially SSL key generation is not working, which just needs to get fixed.
Author
Owner

@claudiusraphael commented on GitHub (Mar 15, 2023):

It's a rather big security exposure to have keyboard and clipboard data shared across a network in plain text as it is almost certain to be putting passwords and security keys on the network, so the SSL being on by default is definitely the right approach. The problem is simply the fact that the initially SSL key generation is not working, which just needs to get fixed.

I am aware and in general fully agree. I was referring to the circumstance we talk about initial setup here and that the installer/initial-setup has a known problem that the ssl-key/-fingerprint is not generated due to whatever reason and that this might be a won't-fix-case - so to workaround that and also provide a more relatable setup, splitting it up into separate steps might be considered an opportunity at this point.

I think of defaulting to non-ssl initially and on first successful connection require the postponed step of activating ssl, displaying information why this might be wanted, etc. but as well offer to choose not to aka make it not mandatory (for example for the few cases where you have a sandboxed/virtualized setup with automation in development, where it would hinder/disrupt the development process or for example in case of automated GUI-testing).

Hope this help to understand what I was implying.

<!-- gh-comment-id:1470933067 --> @claudiusraphael commented on GitHub (Mar 15, 2023): > It's a rather big security exposure to have keyboard and clipboard data shared across a network in plain text as it is almost certain to be putting passwords and security keys on the network, so the SSL being on by default is definitely the right approach. The problem is simply the fact that the initially SSL key generation is not working, which just needs to get fixed. I am aware and in general fully agree. I was referring to the circumstance we talk about initial setup here and that the installer/initial-setup has a known problem that the ssl-key/-fingerprint is not generated due to whatever reason and that this might be a won't-fix-case - so to workaround that and also provide a more relatable setup, splitting it up into separate steps might be considered an opportunity at this point. I think of defaulting to non-ssl initially and on first successful connection require the postponed step of activating ssl, displaying information why this might be wanted, etc. but as well offer to choose not to aka make it not mandatory (for example for the few cases where you have a sandboxed/virtualized setup with automation in development, where it would hinder/disrupt the development process or for example in case of automated GUI-testing). Hope this help to understand what I was implying.
Author
Owner

@traisjames commented on GitHub (Apr 7, 2023):

For those not familur with unix based systems, on both Linux and Mac OS, you can escape spaces with \ and then ~ for /Users/USERNAME, so instead of

cd "/Users/USERNAME/Library/Application Support/barrier/SSL"

You can use

cd ~/Library/Application\ Support/barrier/SSL

<!-- gh-comment-id:1499982839 --> @traisjames commented on GitHub (Apr 7, 2023): For those not familur with unix based systems, on both Linux and Mac OS, you can escape spaces with \ and then ~ for /Users/USERNAME, so instead of > cd "/Users/USERNAME/Library/Application Support/barrier/SSL" You can use > cd ~/Library/Application\ Support/barrier/SSL
Author
Owner

@tegedo commented on GitHub (Dec 31, 2023):

Here is what worked for me, connecting Linux and macos:
In Linux Mint as a Server. It generated an SSL Key and Barrier runs. I added the screen name of my mac manually to the server configuration. It may or may not do this automatically, in my case, it didn't.
On macos, Monterey, client, enabled SSL in the Settings, on the GUI it shows "SSL Fingerprint: Disabled"
On both ends, view the logs for clues!

<!-- gh-comment-id:1873005814 --> @tegedo commented on GitHub (Dec 31, 2023): Here is what worked for me, connecting Linux and macos: In Linux Mint as a Server. It generated an SSL Key and Barrier runs. I added the screen name of my mac manually to the server configuration. It may or may not do this automatically, in my case, it didn't. On macos, Monterey, client, enabled SSL in the Settings, on the GUI it shows "SSL Fingerprint: Disabled" On both ends, view the logs for clues!
Author
Owner

@raspberryhead commented on GitHub (Feb 7, 2024):

Had this issue, just generated ssl certs on both machines and they started working.

<!-- gh-comment-id:1932903458 --> @raspberryhead commented on GitHub (Feb 7, 2024): Had this issue, just generated ssl certs on both machines and they started working.
Author
Owner

@benmordecai commented on GitHub (Feb 7, 2024):

Seeing more activity on this issue so it might be worth a few notes for those just getting here troubleshooting their issues:

  1. Input-Leap is a fork of Barrier where it seems there is more development happening than Barrier.
  2. Wayland is a major headache and generally does not work out of the box or at all quite yet. There are plans with Input-Leap and some minor support in some circumstances but it has limitations and the safest method is to use X11 for now.

This is unrelated to the key generation issue but people are likely to encounter this if they are troubleshooting a fresh setup.

<!-- gh-comment-id:1932934337 --> @benmordecai commented on GitHub (Feb 7, 2024): Seeing more activity on this issue so it might be worth a few notes for those just getting here troubleshooting their issues: 1. Input-Leap is a fork of Barrier where it seems there is more development happening than Barrier. 2. Wayland is a major headache and generally does not work out of the box or at all quite yet. There are plans with Input-Leap and some minor support in some circumstances but it has limitations and the safest method is to use X11 for now. This is unrelated to the key generation issue but people are likely to encounter this if they are troubleshooting a fresh setup.
Author
Owner

@liskin commented on GitHub (May 29, 2024):

This was fixed in https://github.com/debauchee/barrier/pull/1425, but never released (as the project isn't active any more). Worth closing perhaps, anyway.

<!-- gh-comment-id:2137737459 --> @liskin commented on GitHub (May 29, 2024): This was fixed in https://github.com/debauchee/barrier/pull/1425, but never released (as the project isn't active any more). Worth closing perhaps, anyway.
Author
Owner

@ccalazans commented on GitHub (Jun 5, 2024):

As a workaround, you can manually create a certificate for it to use.

In a terminal on the MacOS host:

cd "/Users/USERNAME/Library/Application Support/barrier/SSL"
openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem

Did not work for me running Win11 as server and Mac M1 OS14.5 as client keeps like "Barrier is starting" forever on Mac. Also disabled SSL and forced server IP manually.

Log messages on server
[2024-06-05T11:22:16] NOTE: new client disconnected
[2024-06-05T11:22:32] NOTE: accepted client connection
[2024-06-05T11:22:32] NOTE: new client disconnected
[2024-06-05T11:22:48] NOTE: accepted client connection
[2024-06-05T11:22:48] NOTE: new client disconnected

Thanks in advace.

<!-- gh-comment-id:2150161762 --> @ccalazans commented on GitHub (Jun 5, 2024): > As a workaround, you can manually create a certificate for it to use. > > In a terminal on the MacOS host: > > ``` > cd "/Users/USERNAME/Library/Application Support/barrier/SSL" > openssl req -new -x509 -sha256 -days 999 -nodes -out Barrier.pem -keyout Barrier.pem > ``` Did not work for me running Win11 as server and Mac M1 OS14.5 as client keeps like "Barrier is starting" forever on Mac. Also disabled SSL and forced server IP manually. Log messages on server [2024-06-05T11:22:16] NOTE: new client disconnected [2024-06-05T11:22:32] NOTE: accepted client connection [2024-06-05T11:22:32] NOTE: new client disconnected [2024-06-05T11:22:48] NOTE: accepted client connection [2024-06-05T11:22:48] NOTE: new client disconnected Thanks in advace.
Author
Owner

@sciencebased commented on GitHub (Jan 26, 2025):

I solved this issue with the following procedure (Simply disable SSL):

Image

<!-- gh-comment-id:2614508400 --> @sciencebased commented on GitHub (Jan 26, 2025): I solved this issue with the following procedure (Simply disable SSL): ![Image](https://github.com/user-attachments/assets/0be06c5d-9df2-4ab0-a903-9d9c0423ca74)
Author
Owner

@Mr-Technician commented on GitHub (Jan 26, 2025):

@joanEstrada this works, yes, but I think most of us would prefer using SSL even on our home networks.

<!-- gh-comment-id:2614520356 --> @Mr-Technician commented on GitHub (Jan 26, 2025): @joanEstrada this works, yes, but I think most of us would prefer using SSL even on our home networks.
Author
Owner

@benmordecai commented on GitHub (Jan 27, 2025):

Disabling SSL would mean that anyone on the network could log any typed passwords or other sensitive information. It would be better to manually generate the key.

<!-- gh-comment-id:2614749652 --> @benmordecai commented on GitHub (Jan 27, 2025): Disabling SSL would mean that anyone on the network could log any typed passwords or other sensitive information. It would be better to manually generate the key.
Author
Owner

@aphex3k commented on GitHub (Jan 27, 2025):

I solved this issue with the following procedure (Simply disable SSL):

Image

Disabling SSL is not a solution!

<!-- gh-comment-id:2614820859 --> @aphex3k commented on GitHub (Jan 27, 2025): > I solved this issue with the following procedure (Simply disable SSL): > > ![Image](https://github.com/user-attachments/assets/0be06c5d-9df2-4ab0-a903-9d9c0423ca74) Disabling SSL is not a solution!
Author
Owner

@nbolton commented on GitHub (Jan 27, 2025):

I solved this issue with the following procedure (Simply disable SSL):
Image

Disabling SSL is not a solution!

Please try Deskflow or Input Leap as Barrier is no longer in development.

https://github.com/deskflow/deskflow
https://github.com/input-leap/input-leap

Both are compatible with Barrier client/server so you can try on one of your computers.

If this is still an issue in those projects, we would appreciate a cross-post of this issue.

<!-- gh-comment-id:2615554244 --> @nbolton commented on GitHub (Jan 27, 2025): > > I solved this issue with the following procedure (Simply disable SSL): > > ![Image](https://github.com/user-attachments/assets/0be06c5d-9df2-4ab0-a903-9d9c0423ca74) > > Disabling SSL is not a solution! Please try Deskflow or Input Leap as Barrier is no longer in development. https://github.com/deskflow/deskflow https://github.com/input-leap/input-leap Both are compatible with Barrier client/server so you can try on one of your computers. If this is still an issue in those projects, we would appreciate a cross-post of this issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/barrier#1194
No description provided.