- Lab
- A Cloud Guru
Configure an SSH SOCKS5 Proxy as a Jump Point
For this lab, we need to configure an SSH SOCKS5 proxy as a jump point. There are several key things we need to do. First, we need to allow traffic only on port 61613 and only from one IP address. SSH must run on port 61613. Next, we must verify the configuration is valid. Another thing to pay attention to is that the client can use the server as a SOCKS5 proxy.
Path Info
Table of Contents
-
Challenge
Generate a Private/Public Key Pair
This is necessary to use for authentication against the server on the client.
ssh-keygen
-
Challenge
Configure the JumpPointServer
Change the SSH Port from 22 to 61613,
PermitRootLogin
tono
, andPubkeyAuthentication
toyes
.sudo vim /etc/ssh/sshd_config
Port 61613 PermitRootLogin no PubkeyAuthentication yes
ESC :wq ENTER
-
Challenge
On the JumpPointServer Inform SELinux of the Change of Ports and Configure firewalld to Allow Port 61613 for SSH
Inform SELinux of the Change of Ports
sudo semanage port -a -t ssh_port_t -p tcp 61613
Configure firewalld to Allow Port 61613 for the SSH Service
sudo vim /usr/lib/firewalld/services/ssh.xml
<port protocol="tcp" port="61613"/>
ESC :wq ENTER
Reload firewalld
sudo firewall-cmd --reload
Copy the Public Key from the Client to
/home/cloud_user/authorized_keys
Restart SSHD
sudo systemctl restart sshd
Log Back into the JumpPointServer
-
Challenge
On the JumpPointServer Generate a Key Pair for the ContainerServer
ssh-keygen
Copy the Public Key from JumpPointServer to the Following Location on the ContainerServer
/home/cloud_user/authorized_keys
-
Challenge
Configure the ContainerServer
Change the SSH Port from 22 to 61613,
PermitRootLogin
tono
,PubkeyAuthentication
toyes
.sudo vim /etc/ssh/sshd_config
Port 61613 PermitRootLogin no PubkeyAuthentication yes
ESC :wq ENTER
-
Challenge
On the ContainerServer Inform SELinux of the Change of Ports, Configure firewalld to Allow Port 61613 for SSH
Inform SELinux of the Change of Ports
sudo semanage port -a -t ssh_port_t -p tcp 61613
Configure firewalld to Allow Port 61613 for SSH Service
sudo vim /usr/lib/firewalld/services/ssh.xml
<port protocol="tcp" port="61613"/>
ESC :wq ENTER
Reload firewalld
sudo firewall-cmd --reload
Log Back Into the ContainerServer from the JumpPointServer
-
Challenge
Allow Access Only from the JumpPointServer
sudo firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="<IP or NETWORK>" port protocol="tcp" port="<PORT_NUMBER>" accept'
sudo firewall-cmd --reload
Restart SSHD
sudo systemctl restart sshd
Close Off SSH for Others
sudo firewall-cmd --permanent --remove-service=ssh
-
Challenge
Optional - Open a SOCKS5 Proxy from Our Client to the JumpPointServer
ssh -D 1337 -q -C -N -f cloud_user@IP
Configure Our Browser Proxy Settings to Make Use of the SSH Tunnel
PORT: 1337 ADDRESS: localhost or 127.0.0.1
On Firefox This Can Be Configured under Network Settings
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.