Linux - статьи

Изменение файла authorized_keys{2}


Поставим некоторые ограничения на SSH-идентификатор, предоставленный клиентом, добавив поле начальных опций в файл ~sshvpn/.ssh/authorized_keys{2}. Чтобы упростить наши программы, мы заставим VPN-сервер автоматически загружать наш скрипт vpn-server. Это также повысит и безопасность сервера, поскольку если идентификатор окажется каким-либо образом похищенным, атакующий не сможет соединиться с сервером, он (или она) может только попытаться создать VPN.

Мы также присвоим переменной vpn-network значение, соответствующее имени VPN (vpn1). Эта переменная будет контролировать следующее:

  • Имя локальной машины и имя пользователя, необходимые для PPP-аутентификации, в данном случае – vpn1-server
  • Файл конфигурации, используемый скриптом vpn-server. В нашем случае /opt/ssh-vpn/etc/vpn1

Можно добавить аргумент from, чтобы ограничить число машин, которые могут попытаться установить VPN-соединение. Также мы включим все ограничительные опции no-*-forwarding, поскольку они не являются необходимыми для VPN, они только добавляют сложности и могут потенциально быть угрозой безопасности. Таким образом наш пример будет выглядеть так: from=”client.example.com”,
command=”/opt/ssh-vpn/bin/vpn-server pppd vpn1”,
no-port-forwarding,no-X11-forwarding,no-agent-forwarding“
1024 35 128494554020444581541671425906529809779416661821446...

Единственные необходимые для наших целей элементы – это команда и опция. Отметьте, что мы загружаем vpn-server с двумя аргументами – pppd и именем VPN (vpn1), программа будет использовать эти аргументы, чтобы понять, что ей следует делать. Без этих аргументов наши скрипты функционировать не будут.



Содержание раздела