Назад | Перейти на главную страницу

Настройте учетную запись ssh, которая может использоваться только для прокси-сервера socks5

У меня есть машина Arch Linux за брандмауэром. Я могу открыть переадресацию порта для порта ssh. Я хочу создать пользователя, которого можно будет использовать только для прокси socks.

ssh -N -D 5000 user@server -p9000

5000 будет локальным портом, который пользователь использует для прокси socks5

server:9000 это ssh-порт сервера (перенаправление портов)

-N означает, что терминал открывать нельзя. Я создам пользователя с оболочкой по умолчанию /sbin/nologin.

Теперь проблема в том, что пользователь может перенаправить локальные порты (-L8080:server2:80), и я хочу этого избежать.

Также я хочу, чтобы прокси не подключался к чему-либо во внутренней сети сервера.

Это легко достижимо или нет?

Есть ли другие подводные камни, о которых я должен подумать?

Вы можете запретить локальную пересылку в sshd_config, например:

Match User your_user
  AllowTcpForwarding no
  PermitOpen none

Это не должно влиять на динамическую пересылку / прокси-сервер SOCKS.

Также я хочу, чтобы прокси не подключался к чему-либо во внутренней сети сервера.

Это нужно настроить где-нибудь еще, а не в ssh.

Так как Jakuje упомянуто, вы можете использовать параметры, чтобы запретить пересылку.

Ограничение исходящего трафика владельцем

Также я хочу, чтобы прокси не подключался к чему-либо во внутренней сети сервера.

Вы можете использовать iptables owner модуль, чтобы разрешить определенным группам и пользователям исходящие сообщения в OUTPUT правила для определенных мест, таких как ваш сервер шлюза ssh, но затем заблокируйте все остальное. Модуль владельца может соответствовать gid или uid. Этот метод также обычно используется вместе с Tor.

Вы также можете использовать это, чтобы разрешить определенным демонам обращаться к определенным службам. например При использовании ldap вы можете разрешить учетной записи службы ldap запрашивать ваш сервер ldap и ничего больше.

Если вы используете iptables в этом поместье, вы можете сначала разрешить (но зарегистрировать) трафик, чтобы знать, что было бы отброшено.