How can I route all traffic through strongSwan VPN?What iptables rules do I need for strongSwan clients?Strongswan vpn tunnel connected but the traffic is not routed through itAWS StrongSwan IPSec VPNRoute all traffic through StrongSwan VPNStrongswan VPN tunnel between two AWS instances won't connectHow to redirect traffic through IPv6 IPSec (strongswan) gateway?How can I secure all traffic using strongSwan/IPSec except SSH access?Routing specific traffic through StrongSwan VPNLEDE 17.01.1, StrongSwan 5.6.0 swanctl NATHow to configure StrongSwan vpn server as a routerstrongswan route traffic to specified IPs only
How to use memset in c++?
How to safely destroy (a large quantity of) valid checks?
貧しい【まずしい】 poor 貧乏【びんぼう】な poor What's the difference?
Thread Pool C++ Implementation
Is it safe to change the harddrive power feature so that it never turns off?
Why 1,2 printed by a command in $() is not interpolated?
I have a problematic assistant manager, but I can't fire him
Warning about needing "authorization" when booking ticket
How did old MS-DOS games utilize various graphic cards?
LuaLaTex - how to use number, computed later in the document
Is it legal for a bar bouncer to confiscate a fake ID
Which languages would be most useful in Europe at the end of the 19th century?
Writing an augmented sixth chord on the flattened supertonic
Who enforces MPAA rating adherence?
Who are the Missing Members of this Noble Family?
Why we don’t make use of the t-distribution for constructing a confidence interval for a proportion?
A word that means "blending into a community too much"
Why does the Mishnah use the terms poor person and homeowner when discussing carrying on Shabbat?
Determining fair price for profitable mobile app business
How to handle (one's own) self-harm scars (on the arm), in a work environment?
Heap allocation on microcontroller
Overlapping String-Blocks
Is it possible to fly backward if you have 'really strong' headwind?
What to do when surprise and a high initiative roll conflict with the narrative?
How can I route all traffic through strongSwan VPN?
What iptables rules do I need for strongSwan clients?Strongswan vpn tunnel connected but the traffic is not routed through itAWS StrongSwan IPSec VPNRoute all traffic through StrongSwan VPNStrongswan VPN tunnel between two AWS instances won't connectHow to redirect traffic through IPv6 IPSec (strongswan) gateway?How can I secure all traffic using strongSwan/IPSec except SSH access?Routing specific traffic through StrongSwan VPNLEDE 17.01.1, StrongSwan 5.6.0 swanctl NATHow to configure StrongSwan vpn server as a routerstrongswan route traffic to specified IPs only
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
Server ipsec.conf
config setup
charondebug="ike 1, knl 1, cfg 0"
uniqueids=never
conn ikev2
auto=add
compress=no
type=tunnel
keyexchange=ikev2
fragmentation=yes
forceencaps=yes
ike=aes256gcm16-sha384-modp3072!
esp=aes256gcm16-sha384-modp3072!
dpdaction=clear
dpddelay=300s
rekey=no
left=%any
leftid=my-vpn.com
leftcert=vpn-server.crt
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightid=%any
rightauth=eap-tls
rightdns=1.1.1.1,1.0.0.1
rightsourceip=10.0.2.0/24
rightsendcert=never
eap_identity=%identity
Server iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 500 -j ACCEPT
-A INPUT -p udp -m udp --dport 4500 -j ACCEPT
-A FORWARD -s 10.0.2.0/24 -m policy --dir in --pol ipsec --proto esp -j ACCEPT
-A FORWARD -d 10.0.2.0/24 -m policy --dir out --pol ipsec --proto esp -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Client ipsec.conf
conn ikev2
auto=start
leftid=client@my-vpn.com
leftsourceip=%config
leftauth=eap-tls
leftcert=vpn-client.crt
right=my-vpn.com
rightid=my-vpn.com
rightauth=pubkey
Client iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 500 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 4500 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
The connection is established but when I run curl https://checkip.amazonaws.com
, the returned IP is the client public IP vs the server public IP (expected). How can I route all traffic through the VPN?
Also, can’t SSH to client from server. Why?
Thanks!
strongswan
add a comment |
Server ipsec.conf
config setup
charondebug="ike 1, knl 1, cfg 0"
uniqueids=never
conn ikev2
auto=add
compress=no
type=tunnel
keyexchange=ikev2
fragmentation=yes
forceencaps=yes
ike=aes256gcm16-sha384-modp3072!
esp=aes256gcm16-sha384-modp3072!
dpdaction=clear
dpddelay=300s
rekey=no
left=%any
leftid=my-vpn.com
leftcert=vpn-server.crt
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightid=%any
rightauth=eap-tls
rightdns=1.1.1.1,1.0.0.1
rightsourceip=10.0.2.0/24
rightsendcert=never
eap_identity=%identity
Server iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 500 -j ACCEPT
-A INPUT -p udp -m udp --dport 4500 -j ACCEPT
-A FORWARD -s 10.0.2.0/24 -m policy --dir in --pol ipsec --proto esp -j ACCEPT
-A FORWARD -d 10.0.2.0/24 -m policy --dir out --pol ipsec --proto esp -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Client ipsec.conf
conn ikev2
auto=start
leftid=client@my-vpn.com
leftsourceip=%config
leftauth=eap-tls
leftcert=vpn-client.crt
right=my-vpn.com
rightid=my-vpn.com
rightauth=pubkey
Client iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 500 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 4500 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
The connection is established but when I run curl https://checkip.amazonaws.com
, the returned IP is the client public IP vs the server public IP (expected). How can I route all traffic through the VPN?
Also, can’t SSH to client from server. Why?
Thanks!
strongswan
add a comment |
Server ipsec.conf
config setup
charondebug="ike 1, knl 1, cfg 0"
uniqueids=never
conn ikev2
auto=add
compress=no
type=tunnel
keyexchange=ikev2
fragmentation=yes
forceencaps=yes
ike=aes256gcm16-sha384-modp3072!
esp=aes256gcm16-sha384-modp3072!
dpdaction=clear
dpddelay=300s
rekey=no
left=%any
leftid=my-vpn.com
leftcert=vpn-server.crt
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightid=%any
rightauth=eap-tls
rightdns=1.1.1.1,1.0.0.1
rightsourceip=10.0.2.0/24
rightsendcert=never
eap_identity=%identity
Server iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 500 -j ACCEPT
-A INPUT -p udp -m udp --dport 4500 -j ACCEPT
-A FORWARD -s 10.0.2.0/24 -m policy --dir in --pol ipsec --proto esp -j ACCEPT
-A FORWARD -d 10.0.2.0/24 -m policy --dir out --pol ipsec --proto esp -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Client ipsec.conf
conn ikev2
auto=start
leftid=client@my-vpn.com
leftsourceip=%config
leftauth=eap-tls
leftcert=vpn-client.crt
right=my-vpn.com
rightid=my-vpn.com
rightauth=pubkey
Client iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 500 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 4500 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
The connection is established but when I run curl https://checkip.amazonaws.com
, the returned IP is the client public IP vs the server public IP (expected). How can I route all traffic through the VPN?
Also, can’t SSH to client from server. Why?
Thanks!
strongswan
Server ipsec.conf
config setup
charondebug="ike 1, knl 1, cfg 0"
uniqueids=never
conn ikev2
auto=add
compress=no
type=tunnel
keyexchange=ikev2
fragmentation=yes
forceencaps=yes
ike=aes256gcm16-sha384-modp3072!
esp=aes256gcm16-sha384-modp3072!
dpdaction=clear
dpddelay=300s
rekey=no
left=%any
leftid=my-vpn.com
leftcert=vpn-server.crt
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightid=%any
rightauth=eap-tls
rightdns=1.1.1.1,1.0.0.1
rightsourceip=10.0.2.0/24
rightsendcert=never
eap_identity=%identity
Server iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 500 -j ACCEPT
-A INPUT -p udp -m udp --dport 4500 -j ACCEPT
-A FORWARD -s 10.0.2.0/24 -m policy --dir in --pol ipsec --proto esp -j ACCEPT
-A FORWARD -d 10.0.2.0/24 -m policy --dir out --pol ipsec --proto esp -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Client ipsec.conf
conn ikev2
auto=start
leftid=client@my-vpn.com
leftsourceip=%config
leftauth=eap-tls
leftcert=vpn-client.crt
right=my-vpn.com
rightid=my-vpn.com
rightauth=pubkey
Client iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 500 -m state --state NEW -j ACCEPT
-A OUTPUT -p udp -m udp --dport 4500 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
The connection is established but when I run curl https://checkip.amazonaws.com
, the returned IP is the client public IP vs the server public IP (expected). How can I route all traffic through the VPN?
Also, can’t SSH to client from server. Why?
Thanks!
strongswan
strongswan
asked May 23 at 18:34
sunknudsensunknudsen
347
347
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You want to configure rightsubet=0.0.0.0/0
on the client. The default is %dynamic
, which resolves to the VPN server's IP address, so only traffic to that will then be tunneled.
Regarding SSH, you need to check the traffic counters (IPsec SAs, firewall rules) to see in which direction that traffic does or doesn't flow.
Triedrightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client10.0.2.0/24
. Ideas? Thanks!
– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed aNO_PROPOSAL_CHOSEN
error in the logs. Had to addike=aes256gcm16-sha384-modp3072!
andesp=aes256gcm16-sha384-modp3072!
to the clientipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!
– sunknudsen
May 24 at 11:12
SSH is working. Once aboveNO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fixPermission denied (publickey).
error. Also had to allow outbound SSH requests on the server usingiptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.
– sunknudsen
May 24 at 11:22
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f968613%2fhow-can-i-route-all-traffic-through-strongswan-vpn%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You want to configure rightsubet=0.0.0.0/0
on the client. The default is %dynamic
, which resolves to the VPN server's IP address, so only traffic to that will then be tunneled.
Regarding SSH, you need to check the traffic counters (IPsec SAs, firewall rules) to see in which direction that traffic does or doesn't flow.
Triedrightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client10.0.2.0/24
. Ideas? Thanks!
– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed aNO_PROPOSAL_CHOSEN
error in the logs. Had to addike=aes256gcm16-sha384-modp3072!
andesp=aes256gcm16-sha384-modp3072!
to the clientipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!
– sunknudsen
May 24 at 11:12
SSH is working. Once aboveNO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fixPermission denied (publickey).
error. Also had to allow outbound SSH requests on the server usingiptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.
– sunknudsen
May 24 at 11:22
add a comment |
You want to configure rightsubet=0.0.0.0/0
on the client. The default is %dynamic
, which resolves to the VPN server's IP address, so only traffic to that will then be tunneled.
Regarding SSH, you need to check the traffic counters (IPsec SAs, firewall rules) to see in which direction that traffic does or doesn't flow.
Triedrightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client10.0.2.0/24
. Ideas? Thanks!
– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed aNO_PROPOSAL_CHOSEN
error in the logs. Had to addike=aes256gcm16-sha384-modp3072!
andesp=aes256gcm16-sha384-modp3072!
to the clientipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!
– sunknudsen
May 24 at 11:12
SSH is working. Once aboveNO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fixPermission denied (publickey).
error. Also had to allow outbound SSH requests on the server usingiptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.
– sunknudsen
May 24 at 11:22
add a comment |
You want to configure rightsubet=0.0.0.0/0
on the client. The default is %dynamic
, which resolves to the VPN server's IP address, so only traffic to that will then be tunneled.
Regarding SSH, you need to check the traffic counters (IPsec SAs, firewall rules) to see in which direction that traffic does or doesn't flow.
You want to configure rightsubet=0.0.0.0/0
on the client. The default is %dynamic
, which resolves to the VPN server's IP address, so only traffic to that will then be tunneled.
Regarding SSH, you need to check the traffic counters (IPsec SAs, firewall rules) to see in which direction that traffic does or doesn't flow.
answered May 24 at 7:41
ecdsaecdsa
2,231916
2,231916
Triedrightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client10.0.2.0/24
. Ideas? Thanks!
– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed aNO_PROPOSAL_CHOSEN
error in the logs. Had to addike=aes256gcm16-sha384-modp3072!
andesp=aes256gcm16-sha384-modp3072!
to the clientipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!
– sunknudsen
May 24 at 11:12
SSH is working. Once aboveNO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fixPermission denied (publickey).
error. Also had to allow outbound SSH requests on the server usingiptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.
– sunknudsen
May 24 at 11:22
add a comment |
Triedrightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client10.0.2.0/24
. Ideas? Thanks!
– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed aNO_PROPOSAL_CHOSEN
error in the logs. Had to addike=aes256gcm16-sha384-modp3072!
andesp=aes256gcm16-sha384-modp3072!
to the clientipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!
– sunknudsen
May 24 at 11:12
SSH is working. Once aboveNO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fixPermission denied (publickey).
error. Also had to allow outbound SSH requests on the server usingiptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.
– sunknudsen
May 24 at 11:22
Tried
rightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client 10.0.2.0/24
. Ideas? Thanks!– sunknudsen
May 24 at 11:01
Tried
rightsubnet=0.0.0.0/0
, but still getting public IP of client. Also, about SSH, I can SSH out to the server’s using public IP but not using its DHCP IP on same subnet as client 10.0.2.0/24
. Ideas? Thanks!– sunknudsen
May 24 at 11:01
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
I guess iOS does all the magic behind the scene to route all traffic through the VPN when a provisioning profile is configured. Having a hard time achieving the same on Linux. Trying to achieve the same as medium.com/@sunknudsen/….
– sunknudsen
May 24 at 11:04
It’s working! I had missed a
NO_PROPOSAL_CHOSEN
error in the logs. Had to add ike=aes256gcm16-sha384-modp3072!
and esp=aes256gcm16-sha384-modp3072!
to the client ipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!– sunknudsen
May 24 at 11:12
It’s working! I had missed a
NO_PROPOSAL_CHOSEN
error in the logs. Had to add ike=aes256gcm16-sha384-modp3072!
and esp=aes256gcm16-sha384-modp3072!
to the client ipsec.conf
as the server is enforcing strong crypto. Still having issues with SSH. Will report back here once I figure it out. Thanks @ecdsa!– sunknudsen
May 24 at 11:12
SSH is working. Once above
NO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fix Permission denied (publickey).
error. Also had to allow outbound SSH requests on the server using iptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.– sunknudsen
May 24 at 11:22
SSH is working. Once above
NO_PROPOSAL_CHOSEN
error was mitigated, had to add the server’s SSH pub key to the client to fix Permission denied (publickey).
error. Also had to allow outbound SSH requests on the server using iptables -A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
. The whole setup is hardened so very little is allowed by default.– sunknudsen
May 24 at 11:22
add a comment |
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f968613%2fhow-can-i-route-all-traffic-through-strongswan-vpn%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown