diff --git a/server/TetherControllerTest.cpp b/server/TetherControllerTest.cpp
index 6e77bfe..7ccdc0c 100644
--- a/server/TetherControllerTest.cpp
+++ b/server/TetherControllerTest.cpp
@@ -127,17 +127,22 @@
             "COMMIT\n", intIf);
 
         std::vector<std::string> v4Cmds = {
-            "*raw",
-            StringPrintf("-A tetherctrl_raw_PREROUTING -p tcp --dport 21 -i %s -j CT --helper ftp",
-                         intIf),
-            "COMMIT",
-            "*filter",
-            StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -m state --state"
-                         " ESTABLISHED,RELATED -g tetherctrl_counters", extIf, intIf),
-            StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -m state --state INVALID -j DROP",
-                         intIf, extIf),
-            StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -g tetherctrl_counters",
-                         intIf, extIf),
+                "*raw",
+                StringPrintf(
+                        "-A tetherctrl_raw_PREROUTING -p tcp --dport 21 -i %s -j CT --helper ftp",
+                        intIf),
+                StringPrintf("-A tetherctrl_raw_PREROUTING -p tcp --dport 1723 -i %s -j CT "
+                             "--helper pptp",
+                             intIf),
+                "COMMIT",
+                "*filter",
+                StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -m state --state"
+                             " ESTABLISHED,RELATED -g tetherctrl_counters",
+                             extIf, intIf),
+                StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -m state --state INVALID -j DROP",
+                             intIf, extIf),
+                StringPrintf("-A tetherctrl_FORWARD -i %s -o %s -g tetherctrl_counters", intIf,
+                             extIf),
         };
 
         std::vector<std::string> v6Cmds = {
@@ -199,18 +204,23 @@
             "COMMIT\n", intIf);
 
         std::vector<std::string> v4Cmds = {
-            "*raw",
-            StringPrintf("-D tetherctrl_raw_PREROUTING -p tcp --dport 21 -i %s -j CT --helper ftp",
-                         intIf),
-            "COMMIT",
-            "*filter",
-            StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -m state --state"
-                         " ESTABLISHED,RELATED -g tetherctrl_counters", extIf, intIf),
-            StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -m state --state INVALID -j DROP",
-                         intIf, extIf),
-            StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -g tetherctrl_counters",
-                         intIf, extIf),
-            "COMMIT\n",
+                "*raw",
+                StringPrintf(
+                        "-D tetherctrl_raw_PREROUTING -p tcp --dport 21 -i %s -j CT --helper ftp",
+                        intIf),
+                StringPrintf("-D tetherctrl_raw_PREROUTING -p tcp --dport 1723 -i %s -j CT "
+                             "--helper pptp",
+                             intIf),
+                "COMMIT",
+                "*filter",
+                StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -m state --state"
+                             " ESTABLISHED,RELATED -g tetherctrl_counters",
+                             extIf, intIf),
+                StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -m state --state INVALID -j DROP",
+                             intIf, extIf),
+                StringPrintf("-D tetherctrl_FORWARD -i %s -o %s -g tetherctrl_counters", intIf,
+                             extIf),
+                "COMMIT\n",
         };
 
         return {
