If you want to setup SSH tunnel with your remote server using your Macbook, you can easily do so using the default Terminal application available in the Mac OS. Yes, we do not have to install any other application for doing so, like we do in Windows.
Mac OS X Cheetah. Mac OS X version 10.0, code named Cheetah, is the first major release of Mac OS X, Apple's desktop and server operating system. Mac OS X v10.0 was released on March 24, 2001 for a price of US$129. It was the successor of the Mac OS X Public Beta and the predecessor of Mac OS. MacOS (originally named 'Mac OS X' until 2012 and then 'OS X' until 2016) is the current Mac operating system that officially succeeded the classic Mac OS in 2001. Although the system was originally marketed as simply 'version 10' of Mac OS, it has a history that is largely independent of the classic Mac OS.
If you are a Windows user, I would recommend using Mobaxterm application for doing this.
![Perish Perish](https://www.playonmac.com/images/apps/min/81.jpg)
What is SSH Tunneling?
An SSH tunnel or SSH port forwarding is a mechanism to establish a secure connection between a client machine and a server.
Let's take a simple example to understand this. If we have a database server, let's say MySQL running on a remote server with some IP address XXX.XXX.XXX.XXX and for which the port number 3306 which is the default port for MySQL is only available on the local network of the remote server. In this case, if you want to access the DB server from your local machine(connected to the internet), you won't be able to do it. In such a scenario, we set up an SSH tunnel with the remote server, to securely connect to the local network of the remote server to access the 3306 port on the remote server.
Let's take another example If we are using AWS service and we have two servers one is a DB server and another is the SSH server on which the Web Server is running. On the SSH server, because we are running the Web server, port 80 would be open to all, because then only the website or the web application hosted on that server will be available to its users. But, for security, the DB server is never exposed to the internet and is kept on the local network, which will be accessible via the SSH server, as the SSH server is on the same local network.
Now, if you want to check something or do something on the DB server. or want to connect your local SQL client with the remote database, you won't be able to do it directly. But because the DB server is accessible via the SSH server, we can setup an SSH tunnel with the SSH server to reach the DB server.
I hope the two examples are clear, and now you know, why SSH tunneling is needed. So let's see how we can do this.
Using MacOS/Ubuntu Terminal
We can use the ssh
command to set up an SSH tunnel with a remote server, considering the SSH port which is port number 22 is open for the remote server.
If our remote server name is my-remote-server.host and the SSH user is st-user, and on the same server a DB service let's say MySQL is installed which is accessible via localhost:3306 on the remote server.
Then to connect to the DB server, we can run the following command to setup an SSH tunnel:
Here,
8888: This is the local port that we will open for the SSH tunnel on the local machine. Here you can give any port number after 1024, because until 1024 port number, all ports are privilege ports.
127.0.0.1: This is the IP for the localhost running on the remote server, this is also the destination we aim to reach via the SSH server.
3306: This is the destination port, assigned to the MySQL sever on the remote SSH server.
and then [email protected] is the username and the IP address/URI for the SSH server.
Once you do this, you will be prompted to enter the password for the user st-user, so enter the password an hit Enter, and the SSH tunnel will be created. Now, you will be able to access the MySQL server using 127.0.0.1:8888 address from your local machine.
Using a .pem file
If your remote server is an EC2 instance on AWS and you have a .pem file as the SSH key, run the following command for the above scenario:
In this case you will not be asked for the password, as authentication will be done using your SSH key.
This was the scenario where the DB server was running on the localhost of the remote server. Next, let's see how to connect to a separate DB server via a remote server.
Connect to Destination server via Remote Server:
If our DB server is my-db-server.host on which port 3306 is available for connection on the private network access to the remote SSH server my-remote-server.host, as shown in the picture below.
Then we can run the following command:
Note: If SSH connection is enabled on a different port other than the port number 22, then we can specify the port number in the above command using -p [PORT_NUMBER]
argument. So, for example we have 2200 port for SSH enabled on our remote server, then the command would be:
Conclusion:
I hope this article helped you in understanding what SSH tunneling is and how we can setup an SSH tunnel using the Terminal in MacOS and in Ubuntu or other Linux based operating systems. If you were not able to do this or faced any issue running the above command do share in the comments below and we will help you out.
David Adams - (updated Wed 7 Apr 2021 13:27)
Publish or Perish version 7 is available as a native macOS application. You no longer need a virtual machine with Windows inside as you did for previous versions of Publish and Perish.
Note: If you currently run Publish or Perish 6 or earlier on your macOS system, then the new Publish or Perish 7 for macOS can import your searches from the earlier version. At present this requires some manual work; see the instructions below.
License agreement
Publish or Perish is provided courtesy of Harzing.com. It is free for personal non-profit use; please refer to the End User License Agreement for the full licensing terms and conditions.
System requirements
Check that your computer meets the following minimum system requirements:
- macOS 10.13 (High Sierra) or later, including macOS 11 (Big Sur)
- Some memory (enough to run the operating system, not much more)
- Some hard disk space (ditto)
- An Internet connection
As of release 7.28 (11 December 2020) both Intel and Apple Silicon binaries are included. Earlier Intel-only versions of Publish or Perish will also run on Apple Silicon systems thanks to Apple's Rosetta 2 translation layer, but we recommend using the dual-binary version if you are using Publish or Perish on an Apple Silicon system.
Earlier versions of macOS: If your iMac, MacBook, Mac Mini, or other macOS device runs an earlier version of macOS (formerly called Mac OS X), then you might be able to upgrade for free through the Apple App Store:
- Upgrade to macOS 10.13 High Sierra (minimum required)
- Upgrade to macOS 11 Big Sur (recommended if your hardware is supported)
Download information
Download the Publish or Perish software installer from the Harzing.com web site:
Publish or Perish installer for macOS (2.3 MB)
Version: 7.31.3306 (7 April 2021) [Changes in this version]
Installing Publish or Perish on macOS
Publish or Perish 7 for macOS includes a standard macOS installer package.
Start the PoP7Mac.pkg installer package by double-clicking on the file that you just downloaded (it may also open automatically, depending on your browser settings). The remaining steps should be straightforward.
After installation, Publish or Perish is available in the normal Applications folder. Use Launchpad or Finder to open it; once opened, you can pin it to the Dock if desired.
Note: The installer package is digitally signed by Tarma Software Research Ltd and notarized by Apple. It should install without issue on any up to date macOS system. If you do see a Gatekeeper error, then you might have to change the Security & Privacy settings on your system to allow downloaded applications from identified developers (see screenshot below).
Support Publish or Perish
The development of the Publish or Perish software is a volunteering effort that has been ongoing since 2006. Download and use of Publish or Perish is and will remain free (gratis), but your support toward the costs of hosting, bandwidth, and software development are appreciated. Your support helps further development of Publish or Perish for new data sources and additional features.
Transferring queries from Windows (real or virtual machine) to macOS
To transfer you old Windows-based queries to the new macOS-based Publish or Perish version, follow this procedure EXACTLY.
- Exit all running instances of Publish or Perish.
- In the Windows real or virtual machine, use Windows Explorer to go to the %APPDATA% folder.
- In that folder, find the Publish or Perish subfolder and enter that.
- On the macOS side, use Finder to go to the ~/Library/Application Support/Publish or Perish folder. You will probably have to use the Go to Folder command for this (Shift+Command+G) because your personal Library folder is normally hidden in Finder.
- If you DO NOT need your most recent macOS results, then simply copy Queries6.qml plus the entire Results6 folder from the Windows side to the macOS side, overwriting the macOS queries and results. Then you're done.
- If you DO need to retain your recent macOS results, then continue with the next steps.
- Copy the contents (i.e., all the .json files) from the Windows Results6 folder to the macOS Results6 folder.
- Now you need to merge the contents of the Queries6.qml file from the Windows edition to its macOS counterpart. This requires a plain text editor, preferably a programmer's editor. BBEdit has a free option that is suitable for this if you do not already have a text editor (TextEdit is NOT ideal for this.)
If you get the copy & paste procedure wrong, you will lose your queries, so make sure that you know what you are doing. If in doubt, don't. Also, make a backup of the macOS Queries6.qml file before you start. - Open both Queries6.qml files in separate instances (or at least separate windows) of the plain text editor.
- In the Windows edition, copy the elements inside the PoPRoot as a single set to the clipboard. This is not the PoPRoot tag itself, nor its attributes, but everything that follows on the lines after its opening '{' brace up to and including the line immediately before its closing '}' brace at the end of the file.
- Paste this lot into the macOS copy of Queries6.qml immediately before the closing '}' brace in that file.
- Save the macOS copy (the Windows copy should be unmodified).
- Now start the macOS edition of Publish or Perish; your older queries should be there.
Support Publish or Perish
Study Or Perish Mac Os 7
The development of the Publish or Perish software is a volunteering effort that has been ongoing since 2006. Download and use of Publish or Perish is and will remain free (gratis), but your support toward the costs of hosting, bandwidth, and software development are appreciated. Your support helps further development of Publish or Perish for new data sources and additional features.
Product name | Unit price | Quantity |
---|---|---|
Publish or Perish donation (small) | GBP 1.00 | |
Publish or Perish donation (medium) | GBP 10.00 | |
Publish or Perish donation (large) | GBP 50.00 | |
Publish or Perish donation (corporate) | GBP 500.00 | |
Publish or Perish guide (PDF, 2010) | GBP 14.95 | |
Publish or Perish tutorial (PDF, 2016) | GBP 9.95 |
Note: all prices are in Pounds Sterling (GBP). For UK and EU customers, VAT at the local rate is included in the price.
Study Or Perish Mac Os 8
Copyright © 2021 David Adams. All rights reserved. Page last modified on Wed 7 Apr 2021 13:27
Study Or Perish Mac Os Catalina
Web master of Harzing.com and developer of the Publish or Perish software, among other things. He holds BSc and MSc degrees in Electrical Engineering, a PhD in Operations Research, and likes to watch academic life from a safe distance.