Jump to content
Калькуляторы

VPN сервер (pppd, pptpd)

Есть машинка (q6600, 8гб) Centos 5.3-xen, pppd, pptpd. В течение недели работы оной машинкаи в качестве VPN сервера нагрузка в top постепенно растет, хотя количество подключений меняется (50-200 соединений, ночью меньше, днем больше) и общая скорость также меняется (не более 30Mbit). Top может достигать значений 11-12. Если однажды сбросить все соединения (через несколько секунд юзеры переподключаются и продолжают работать, кол-во соединений не уменьшается), то нагрузка в top резко падает и в течение пары дней не поднимается выше 1, затем опять постепенно начинает расти до 11-12.

Как с этим бороться (кроме сброса подключений) и лечится ли это как-нибудь?

 

ps: pppd 2.4.4, pptpd 1.3.4

Share this post


Link to post
Share on other sites

Зависают pptp сессии, известный глюк. Вызывается чаще всего тупыми роутерами, которые постоянно долбятся при неправильном пароле или блокировке (если биллинг дает auth-reject при минусовом балансе например). Лечится установкой лимита на количество попыток подключения с одного адреса в минуту, пример:

 

iptables -A INPUT -p tcp -m tcp --dport 1723 -m state --state NEW -m hashlimit --hashlimit 1/min --hashlimit-burst 5 --hashlimit-mode srcip --hashlimit-name PPTP --hashlimit-htable-expire 3600000 -j ACCEPT

iptables -A INPUT -p tcp -m tcp --dport 1723 -m state --state NEW -j REJECT --reject-with icmp-admin-prohibited

iptables -A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT

Share this post


Link to post
Share on other sites
Зависают pptp сессии, известный глюк. Вызывается чаще всего тупыми роутерами, которые постоянно долбятся при неправильном пароле или блокировке (если биллинг дает auth-reject при минусовом балансе например). Лечится установкой лимита на количество попыток подключения с одного адреса в минуту, пример:

 

iptables -A INPUT -p tcp -m tcp --dport 1723 -m state --state NEW -m hashlimit --hashlimit 1/min --hashlimit-burst 5 --hashlimit-mode srcip --hashlimit-name PPTP --hashlimit-htable-expire 3600000 -j ACCEPT

iptables -A INPUT -p tcp -m tcp --dport 1723 -m state --state NEW -j REJECT --reject-with icmp-admin-prohibited

iptables -A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT

зависшие сессии рублю скриптом (это когда pptpctrl начинает жрать под 100% проца). А тут именно жрут ресурсы живые pppd. Или они не такие уж живые? ps: Проверял на своей текущей сессии.

Edited by rsst

Share this post


Link to post
Share on other sites

Может и не живые, как определяете?

Share this post


Link to post
Share on other sites
Может и не живые, как определяете?

смотрю по пиду своей текущей сессии

ps ax | grep мой_ip

 

и вижу что этот pppd жреть уже 3% проца, хотя если его сбросить и заново подключиться, ничего не жреть

Edited by rsst

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this