mirror of
https://github.com/ProxymanApp/Proxyman.git
synced 2026-04-25 16:15:55 +03:00
[GH-ISSUE #264] Traffic Not Captured While on VPN #260
Labels
No labels
Discussion
Feature request
In Progress...
Plugins
Waiting response
Windows
Windows
bug
duplicate
enhancement
feature
good first issue
iOS
macOS 10.11
question
wontfix
✅ Done
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Proxyman#260
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @aaronvegh on GitHub (Aug 26, 2019).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/264
Originally assigned to: @NghiaTranUIT on GitHub.
Proxyman version? (Ex. Proxyman 1.4.3)
1.5.0 (1500)
macOS Version? (Ex. mac 10.14)
10.14.6
Steps to reproduce
I have tried this with TunnelBear as the VPN. When the VPN is active, ProxyMan doesn't capture traffic. I have seen it work sometimes, but it's not reliable at all.
I've tried it both with Proxyman started before the VPN, and vice versa. When on VPN, no traffic is logged. As soon as you jump off the VPN, it works normally again.
Expected behavior
I would love to see traffic logged while on VPN!
@shirshak55 commented on GitHub (Aug 26, 2019):
u can just change application to use proxy.
App -> Proxy -> VPN
but i doubt if all application have proxy option
@aaronvegh commented on GitHub (Aug 26, 2019):
In my case, I need to capture traffic in an iOS Simulator, or on a connected device. Is there a procedure for that case?
@NghiaTranUIT commented on GitHub (Aug 27, 2019):
Hey @aaronvegh can you double check whether the TunnelBear overrides the System HTTP/HTTPS Proxy in Network.prefPanel to different port when it starts?
Technically, Proxyman only captures if the System Proxy is pointing to port 9090.
From my case, I tested with Private Network Access (PNA) VPN app.
@aaronvegh commented on GitHub (Aug 27, 2019):
@NghiaTranUIT thanks for your response! When TunnelBear is connected I can see that as a separate VPN connection in my macOS Network settings:
And it doesn't affect the Proxy settings on my Wi-Fi network connection at all.
When I open Proxyman, I can see my Proxy settings are updated; they look like what you posted above, except I have nothing in the "Bypass proxy settings for these Hosts & Domains:" box. I also had the Passive FTP Mode checked. But even matching your settings, it doesn't seem to matter.
@NghiaTranUIT commented on GitHub (Aug 27, 2019):
My Private Internet Network app does't install any VPN setting in Network.prefPanel. I will check the Tunnel Bear and give you the update soon 👍
@NghiaTranUIT commented on GitHub (Aug 27, 2019):
Hey @aaronvegh I just installed TunnelBear, and what I see that TunnelBear doesn't install any VPN setting in Network.prefPanel, and Proxyman just works as usual.
I googled but couldn't find the way to setup the VPN connection for TunnelBear like you. How can you do that? 🤔
@aaronvegh commented on GitHub (Aug 27, 2019):
I'm mystified...! How else could it work? Did you install the helper tool that comes with the app? I think that's what does the actual configuration in the Network pref pane.
I see there's a LaunchAgent installed at
~/Library/LaunchAgents/com.tunnelbear.mac.tbeara.plistwhich points to an executable at/Library/Application Support/TunnelBear/com.tunnelbear.mac.tbeara— do you have that too?@NghiaTranUIT commented on GitHub (Aug 27, 2019):
Hey, Tunnel Bear just prompts to install the VPN Config to my Network after three time quit.
I will check it out now 👍 Thank for quick reply
@NghiaTranUIT commented on GitHub (Aug 27, 2019):
I just investigated and it turns our that the TunnelBear VPN Config works different way and it doesn't respect the HTTP Proxy config.
I'm not sure how TunnelBear install the VPN config, but I couldn't list it out by running
networksetup -listallnetworkservicesor relevant CLIs. As I couldn't find it, I couldn't override the Proxy of Tunnel Bear to 9090.Ref: https://github.com/ProxymanApp/Proxyman/issues/211#issuecomment-511768750
The interesting is that I
SystemConfigurationto list out all conneciton, but no Tunnel Bear VPN, but it still shows other VPN 😮I will keep investigating and update you later. For now, please turn off Tunnel Bear for temporary.
Thank you in advance 👍
@aaronvegh commented on GitHub (Aug 27, 2019):
What a revelation! TunnelBear is doing something weird! I just tried a different VPN provider and I'm able to see my traffic through ProxyMan. Thank you so much! I'm sure others will appreciate a solution to this provider, but I'm taken care of for now, at least.
A.
@shirshak55 commented on GitHub (Aug 27, 2019):
it depends on vpn. like in firefox there is way to not choose systemproxy
etc. if u want to make sure all traffic must use proxy i recommend using
firewall. On osx i use iptables directly .
On Tue, Aug 27, 2019, 10:24 PM Aaron Vegh notifications@github.com wrote:
@NghiaTranUIT commented on GitHub (Aug 28, 2019):
Thank you @aaronvegh and @shirshak55. I will keep taking it into account 👍
@shirshak55 commented on GitHub (Sep 4, 2019):
I think we can close the issue as vpn is very complex issue. We will need to use firewall which is not related to this proxy :)
@NghiaTranUIT commented on GitHub (Sep 5, 2019):
I suppose that we just keep it opens since it's opened by @aaronvegh.
He will close when he's satisfied. 👍
We just make it
Resolved@aaronvegh commented on GitHub (Sep 5, 2019):
I'm satisfied from the perspective that some VPNs do work with Proxyman. The provider I moved to isn't as good as TunnelBear, but it's more important that I be able to monitor traffic, so here we are. Thank you all for your assistance!
@andersonalex commented on GitHub (Jun 10, 2020):
@NghiaTranUIT It looks like Proxyman does not capture traffic when I use my employer's VPN through NordVPN, and I need to be connected to this VPN to test my iOS application in the development environment. Is there any way I can get Proyman to work with NordVPN?
@NghiaTranUIT commented on GitHub (Jun 11, 2020):
Hey @andersonalex, VPN is notorious that it doesn't work well with any Man-in-the-middle apps because all traffic forcibly goes through the VPN rather than going to Proxyman's port at 9090. Thus, traffic doesn't appear on the app.
Here are some solutions that might work:
It means that we don't use the NordVPN app on macOS, but we use External Proxy on Proxyman to forward all traffic to your VPN. Here is how to setup:
Thus, Traffic on macOS or iOS Simulator -> Go to Proxyman 9090 -> Then forwarding to NordVPN (External Proxy).
Let try it.
Disclaimer: I haven't had any change to test it 😄
@shirshak55 commented on GitHub (Jun 11, 2020):
@NghiaTranUIT i don't think that will work because most software can use no proxy setup. There should be way to capture before packets leave nic?
Like good way to test is how to make mozilla firefox work with proxy man in no proxy setup.
@NghiaTranUIT commented on GitHub (Jun 11, 2020):
@shirshak55 It’s possible if I create a dummy proxyman VPN, to navigate traffic to proxyman port. This setup could work with Firefox (even though we set no Proxy in preference).
But I’m not sure if it works with another VPN (Nord)
@shirshak55 commented on GitHub (Jun 11, 2020):
@NghiaTranUIT that will at least solve the issue related to app that don't obey system proxy etc.
Regarding vpn i think most of them create their own adapter. So if we can hook proxyman in the adapter may be it is possible. Sorry i don't know to much in detail.
@calendee commented on GitHub (Sep 10, 2020):
My company uses the Cisco AnyConnect VPN. For a long time, I was able to use it and Proxyman at the same time by opening Proxyman first.
Then, IT enabled some extra security check that detected the proxy and would refuse to connect; so, I had to give up on Proxyman for a while.
I finally figured out how to solve it with one stupidly easy change.
Just uncheck this box. Then, open Proxyman first and then connect to the VPN.
@NghiaTranUIT commented on GitHub (Sep 10, 2020):
Thanks for the hint 🙌
To summary what I tried with a dummy VPN. If Proxyman adds a dummy VPN to the Network system. It will forward all traffic to Proxyman Proxy Server (port 9090), so, all traffic will appear on Proxyman, including traffic from apps that don't obey the HTTP Proxy config (ex: curl, ...). It's really good
However, the traffic won't go through the first VPN anymore. For instance, if I use the Cisco VPN, then opening Proxyman and set up a dummy VPN, the traffic will go from Client -> Dummy VPN -> Proxyman -> the Internet. As a result, users might not be able to access the Internet anymore since it doesn't go through the Cisco VPN.
@NghiaTranUIT commented on GitHub (Sep 10, 2020):
I also did try to create a virtual network interface (tun/tap), but the result is the same.
There is no way that could achieve Client -> [Middlewares] -> Proxyman HTTP Proxy Server -> cooperated VPN -> the Internet.
I'm still looking for a solution.
@tgeorgiop commented on GitHub (Nov 20, 2020):
Hello, I have cisco anyconnect too from my company and proxyman does not work. According to previous comments,
@calendee had success. Is there any way to Proxyman to work?
@calendee commented on GitHub (Nov 20, 2020):
My trick above did work for a while. Then, somehow Cisco Anyconnect started blocking it again.
Fortunately, I don't work there anymore; so, I don't have to deal with it 🤣!
@NghiaTranUIT commented on GitHub (Nov 21, 2020):
Unfortunately, there is no feasible solution to make VPN apps work with Proxyman or other web debugging apps, like Charles and Fiddler : <
VPN and HTTP Proxy usually have not cooperated well
@NghiaTranUIT commented on GitHub (Nov 21, 2020):
For the tun/tap virtual interface, I tried and I'm able to reroute all traffic from the system to Proxyman app.
However, I couldn't achieve this: macOS -> my tun/tap interface -> your VPN -> Proxyman -> the Internet.
Because the VPN app is actually a tun/tap interface (behind the scenes) and the system only allows one tun/tap interface at one time. Therefore, it doesn't work
@shirshak55 commented on GitHub (Nov 21, 2020):
well i think its the vpn issue so i think its easy if user connect vpn using another pc / router while testing ? If VPN doesn't obey can we do anything?
@NghiaTranUIT commented on GitHub (Nov 22, 2020):
If the VPN doesn't have any option to set HTTP Proxy, it seems like there is no way to make Web debugging proxy apps work with VPN apps :/
@koryhutchison commented on GitHub (Apr 8, 2021):
My employer also uses Cisco AnyConnect, but I was able to find a work around! In my case at least, when I had Proxyman open and then tried to connect to my VPN, the connection would fail, but Proxyman would at least show me the host where the connection did fail. So what I did to get around it was to enter in that host into the "Bypass proxy settings for these Hosts & Domains" section in System Preferences -> Network -> Wi-Fi > Advanced -> Proxies. Once I added it in, and applied the changes, Cisco was able to connect without any issues. Hopefully this helps people!
@NghiaTranUIT commented on GitHub (Apr 8, 2021):
Thank you so much @koryhutchison . I've shared your solution to some Proxyman users, who are struggled with Cisco AnyConnect VPN 🙌
@Tymoteusz24 commented on GitHub (Apr 13, 2021):
@aaronvegh You said that it starts working with a different VPN provider. Can you share what provider are you using? I have the same problem with NordVPN.
@NghiaTranUIT commented on GitHub (Apr 13, 2021):
@Tymoteusz24 If you can find a Proxy Config in NordVPN's Preference, it means you can set HTTP/HTTPS Proxy to Proxyman (at localhost:9090). Then Proxyman and other Proxy tools will work.
Otherwise, there is no solution because VPN would force all traffic to go the VPN, instead of the Proxy Server (Proxyman)
@haphanquang commented on GitHub (Jun 4, 2021):
Workaround with Cisco VPN AnyConnect
Enjoy magic.
@ganjarpanji commented on GitHub (Sep 21, 2021):
im also facing problem using pulsesecure vpn.
its stated here but i couldn't make it work
@NghiaTranUIT commented on GitHub (Sep 21, 2021):
Hey @ganjarpanji please try this Document from Pulse Secure VPN
It guides you on how to set HTTP/HTTPS proxy to a Proxy Server. Then you can set IP=127.0.0.1, port=9090
@weitieda commented on GitHub (Oct 27, 2021):
Same issue with PulseSecure VPN, unable to make it work, but Charles did work... I may end up with opening both 🥺
@NghiaTranUIT commented on GitHub (Oct 27, 2021):
Sorry to hear that @weitieda. Just wondering: Does this solution https://github.com/ProxymanApp/Proxyman/issues/264#issuecomment-923793997 fix your problem?
@weitieda commented on GitHub (Oct 27, 2021):
I saw that one, but the
In the admin console, choose Users > Resource Policies > Web.looks like setting on IT side, not on user side since I've tried click around, didn't find anywhere I could setup resource policies...btw, Proxyman can catch traffic in Safari/Chrome with VPN connected, but just not in simulator.
just tried this magic, no luck 😂
wondering if Charles able to catch with pulse secure vpn connected, technically should be doable in Proxyman? oh just remember, I have to use this tool to make it work with pulse secure vpn
@NghiaTranUIT commented on GitHub (Oct 29, 2021):
@weitieda it's hard to tell that if I can fix it because the problem is from the VPN. Basically, Proxyman just opens a socket at 127.0.0.1 port 9090, then listening all incoming requests. If the VPN doesn't send any request, Proxyman might not capture it.
From what I know, PulseSecure VPN might have an exception for Charles Proxy but not Proxyman at the moment.
Wow, I wasn't aware that there is a solution.
If it doesn't work at all, you might check out Atlantis framework, it will capture all traffic from your iOS simulator regardless of the VPN.
@weitieda commented on GitHub (Oct 29, 2021):
just to be clear, I mean this tool make Charles work with PulseSecure vpn 😅
No worries, thanks for all your replies. Keep up the great work, Proxyman is still my first choice :)
@Calvincac commented on GitHub (Jul 11, 2022):
Hello,
koryhutchison which host do you mean? When i check proxyman doc it just mentions "your host". Is it the host of my machine? is it the host that i want to run some tests? I didn't quite follow. I would be great if there was an example. I also use Cisco AnyConnect
Thanks in advance.
cc: NghiaTranUIT
@NghiaTranUIT commented on GitHub (Jul 11, 2022):
@calendee it's the host (domains) that failed when using Proxyman + Cisco VPN. By adding them to the "Bypass", this host (domain) will use the VPN without going to Proxyman -> Not failed.
Maybe you should try the solution from https://github.com/ProxymanApp/Proxyman/issues/264#issuecomment-854390481
@koryhutchison commented on GitHub (Jul 11, 2022):
Yeah @Calvincac when I use Cisco Anyconnect with my company, there’s an initial domain that’s in the box that you connect to. So all you would do is put that domain in the box like I described.
@3257 commented on GitHub (Apr 30, 2024):
A bit late to the party but I used Tunnelblick and it worked great. These are the instructions I followed https://support.nordvpn.com/hc/en-us/articles/19924903986961-Manual-connection-setup-with-Tunnelblick-on-macOS.
@InderKumarRathore commented on GitHub (Aug 29, 2024):
For Cisco VPN this solution worked for me.
@seidnerj commented on GitHub (Oct 16, 2024):
For NordVPN you can use the below to set up a local http/https proxy that will router through NordVPN and then use that proxy server as an external proxy in Proxtman.
https://github.com/edgd1er/nordlynx-proxy
@NghiaTranUIT commented on GitHub (Oct 16, 2024):
Thanks, I added to the VPN Troubleshooting doc: https://docs.proxyman.io/troubleshooting/proxyman-does-not-work-with-vpn-apps#nord-vpn