Разрешение другим людям перенаправлять порты по ssh на мой Linux VPS

Разрешение другим людям перенаправлять порты по ssh на мой Linux VPS

У меня есть Ubuntu VPS, который я иногда использую как SOCKSпрокси для просмотра интернета. Я использую команду ssh dynamic port-forwarding следующим образом:

ssh -fNTC -D 1080 username@vpsIP

затем установите прокси-сервер моего браузера в localhost:1080качестве SOCKS.

Я создал дополнительного пользователя с именем пользователя 'чуваки' на VPS для нескольких друзей, чтобы иметь возможность переадресовывать порты по SSH и получить что-то вроде VPN (нам не нужна сетевая часть VPN).

Сейчас я действительно не хочу использовать свой VPS в качестве VPN-сервера, поэтому я бы хотел использовать переадресацию портов SSH или что-то подобное.

Как мне предотвратитьчувакипользователь не сможет открыть защищенную оболочку и начать творить беспорядок на VPS?

решение1

А как насчет удаления оболочки пользователя «dudes»?

usermod -s /sbin/nologin dudes

или если в вашей ОС нет nologin:

usermod -s /bin/false dudes

решение2

Есть несколько возможностей. Но, вероятно, самым простым будет вариант ForceCommandв sshd_config. Он не позволит запустить ни одну команду, а если они захотят запустить какую-то, он запустит эту.

Пример фрагмента sshd_config:

Match User dudes  #your dudes user -- you can also match group
  ForceCommand /bin/true

решение3

Если вы используете аутентификацию на основе ключей (что я настоятельно рекомендую вам делать), то вы можете ограничить действия, разрешенные каждому ключу, с помощью файла authorized_keys.

Указание этого параметра command="/bin/false"перед ключом не позволит им вызвать оболочку или любую другую команду, кроме той, которую вы ввели authorized_keys.

Есть и другие ограничения, которые вы можете наложить через authorized_keys. Полный список см. sshdна странице руководства.

Связанный контент