I'd like to be able to terminate a user's connection to my pptp server from the server itself without interrupting anyone else's connection. Problem is - I have no idea how and have found no useful information via the usual channels (google, basically).

Any help is much appreciated!

Edit I'm using Debian.

  • What type of PPTP server are you running? – Zoredache Oct 27 '10 at 17:13
  • The standard pptp package on Debian. – Joe Oct 27 '10 at 17:13

I'm fairly sure that Debian uses the PoPToP pptpd, which in turn uses pppd. The pptpd process forks for each new user connection so you should just be able to kill the 'pppd' process related to the user you want to terminate.

The process list doesn't show the username associated with the pppd process for a given connection, so you'll probably have to use the last command to figure out what IP address user the user logged-on from and then kill the appropriate pppd process. pptpd, by default, updates the wtmp file with logons, so last should show you from what ip address a user logged-on from. Then it's a matter of grepping the process list for that pppd instance.


Assuming this is a Windows PPTP server we're talking about, you can go to Administrative Tools->Routing and Remote access and then select "Remote Access Clients" on the left. From there, you can disconnect them.

  • Ah no, I'm using Debian Linux. – Joe Oct 27 '10 at 17:12

I'm using Ubuntu as PPTP-VPN Server.

  1. last | grep ppp | head to show current connected clients.
  2. ps aux|grep pptpd to show connected clients's pid and assigned ip.
  3. killall pppd to kill all client's connection
  4. kill $pid to kill specific client and disconnect it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.