Configure a SOCKS proxy
In this scenario, we can make MQIPT act as a SOCKS proxy.
Before starting
- Before you start to use this scenario, make sure that we have completed the prerequisite tasks listed in Getting started with IBM MQ Internet Pass-Thru.
- Enable SOCKS on either the whole IBM MQ computer or just the IBM MQ client applications amqsputc and amqsgetc.
- Configure the SOCKS client as follows:
- Use MQIPT as the SOCKS proxy.
- Enable SOCKS Version 5 support.
- Disable user authentication.
- Restrict connections to the MQIPT network address.
This diagram shows the connection flow from the IBM MQ client (called client1.company1.com on port 1415) through MQIPT to the IBM MQ server (called server1.company2.com on port 1414).
Procedure
To configure a SOCKS proxy, complete the following steps:
- Configure and start MQIPT:
- Edit mqipt.conf and add the following route definition:
[route] ListenerPort=1080 Destination=server1.company2.com DestinationPort=1414 SocksServer=trueThe values of the Destination and DestinationPort route properties are ignored as the true destination is obtained from the IBM MQ client during the SOCKS handshaking process.- Open a command prompt and start MQIPT:
C:\mqipt\bin\mqipt C:\mqiptHome -n ipt1where C:\mqiptHome indicates the location of the MQIPT configuration file, mqipt.conf, and ipt1 is the name to be given to the instance of MQIPT. The following messages indicate that MQIPT has started successfully:5724-H72 (C) Copyright IBM Corp. 2000, 2020 All Rights Reserved MQCPI001 IBM MQ Internet Pass-Thru V9.2.0.0 starting MQCPI004 Reading configuration information from mqipt.conf MQCPI152 MQIPT name is ipt1 MQCPI021 Password checking has been enabled on the command port MQCPI011 The path C:\mqiptHome\logs will be used to store the log files MQCPI006 Route 1080 has started and will forward messages to : MQCPI034 ....server1.company2.com(1414) MQCPI035 ....using MQ protocol MQCPI052 ....SOCKS server side enabled MQCPI078 Route 1080 ready for connection requests
- At a command prompt on the IBM MQ client system, enter the following commands:
- Set the MQSERVER environment variable:
SET MQSERVER=MQIPT.CONN.CHANNEL/tcp/10.20.5.6(1414)- Put a message:
amqsputc MQIPT.LOCAL.QUEUE MQIPT.QM1 Hello worldPress Enter twice after typing the message string.- Get the message:
amqsgetc MQIPT.LOCAL.QUEUE MQIPT.QM1The message, "Hello world" is returned.
Parent topic: Getting started with IBM MQ Internet Pass-Thru