Налаштовуємо vpn pptp з'єднання з командного рядка, блог боші

Колись я писав пост про "правильну настройку VPN з'єднання по так званому Gentoo way". Незважаючи на те, що на пост було безліч незгодних з моєю думкою відгуків (до речі, набравшись досвіду я зараз розумію що зробив би теж трохи інакше. Каюсь, грішний), ця тема як виявилося дуже актуальна і затребувана. Мені досі приходять на email різні питання пов'язані з налаштуванням VPN з'єднання на сервері - тобто без графічної оболонки і утиліт. У цьому пості я постараюся якомога більш детально описати цей процес.

Отже приступимо.
Для початку потрібно встановити потрібний пакет. У deb based дистрибутивах він називається pptp-linux:

В інших дистрибутивах пакет може називатися інакше, проте в назві найімовірніше є "pptp". Так що, можна пошукати за назвою, почитати опис і встановити.

Наступне що нам потрібно зробити, це відредагувати параметри для підключення. Відкриємо файл /etc/ppp/options.pptp:

І наведемо приблизно до такого виду:

Один по одному що і для чого:

створюємо файл блокування

вимагати від сервера підтвердити свою автентичність перед початком обміну пакетами

відключаємо аутентифікацію по протоколу pap

відключаємо аутентифікацію по протоколу eap

оотключаем аутентифікацію по протоколу chap

відключаємо аутентифікацію по протоколу mschap

вимагати використання mppe з 128-бітовим шифруванням

відключаємо стиснення BSD-Compress

відключаємо deflate стиснення

намагаємося знову підключитися при розриві

Тепер створимо файл з параметрами підключення:

І додамо туди наступне:

інтервал з яким опитуємо віддалений сервер

кількість не отвеченних запитів від сервера, після чого вони вважаємо що ми відключені

завжди намагатися підключитися якщо відсутній зв'язок

після підключення, додає маршрут за замовчуванням через створений тунель.

створюємо канал для зв'язку з сервером. (Докладніше man pptp)

встановлюємо "ім'я передбачуваної" віддаленої системи для аутентифікації

встановлює логічне ім'я каналу. В даному випадку нам потрібно для зручного "роутінга"

вказуємо де знаходиться файл з параметрами підключення

І додамо логін \ пароль підключення:

Замість login треба підставити логін і замість password пароль відповідно.

Для підключення використовується команда pon.

Наприклад в нашому випадку:

Для відключення poff:

Щоб подивитися стан підключення plog:

Важливо: виконувати потрібно обов'язково потрібно при відключеному VPN з'єднання. В іншому випадку ми отримаємо шлюз PPTP тунелю.
Буде щось на зразок:

10.7.131.11 і буде шлюз. Тепер створимо файл /etc/ppp/ip-up.d/vpn

І додамо в нього невеликий скрипт:

Дамо права на виконання:

Так само при відключенні було б не погано їх видаляти. Якщо не видаляти їх, звичайно, нічого страшного статися не повинно, однак ніколи не знаєш що буде потрібно зробити потім, і про них можна випадково забути. Ось щоб такого не відбувалося, бажано їх видаляти.
Створимо файл /etc/ppp/ip-down.d/vpn

І туди теж додамо невеликий скрипт:

Так само дамо права на виконання:

Тепер залишився останній штрих: підключати VPN з'єднання при завантаженні ПК. Для цього відкриємо / etc / network / interfaces:

І додамо в кінець що-небудь на зразок: