Как я могу настроить SSH так, чтобы он был ограничен моей локальной сетью?

Я пытаюсь связать мой новый ноутбук с 11.10 и мой старый ноутбук с 8.04 через мой маршрутизатор, используя SSH.

Этот вопрос задают и отвечают на ubuntuforums здесь:

http://ubuntuforums.org/showthread.php?t=1648965

Я думал, что это будет полезно иметь более точный ответ здесь.

Примечание: мне нужно было сначала установить openssh-сервер на ноутбук, к которому я пытался подключиться, и открыть SSH-порт в брандмауэре с помощью firestarter.

33
задан 1 April 2012 в 11:27

3 ответа

Можно ограничить доступ к ssh серверу во многих отношениях.

IMO самое важное должен использовать ssh ключи и отключить аутентификацию по паролю.

Посмотрите следующие страницы Wiki для деталей

https://help.ubuntu.com/community/SSH/OpenSSH/Keys

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Disable_Password_Authentication

Можно ограничить доступ к определенной подсети несколькими способами. Я предположу, что Ваш ssh сервер находится на подсети 192.168.0.0/16 с IP-адресом 192.168.0.10, корректируйтесь соответственно ;)

Маршрутизатор

Одна линия обороны должна использовать маршрутизатор. Обязательно отключите UPnP и не позвольте перенаправление портов.

Конфигурация SSH

Можно установить несколько опций в /etc/ssh/sshd_config. Каждый - слушать адрес. Если Вы устанавливаете слушать адрес на своей подсети. Частный IP-адрес не routable по Интернету.

http://compnetworking.about.com/od/workingwithipaddresses/f/privateipaddr.htm

ListenAddress 192.168.0.10

Можно также использовать AllowUsers

AllowUsers you@192.168.0.0/16

Несколько связанный, можно также изменить порт

Port 1234

См. http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html

Оболочка tcp

Как обрисовано в общих чертах на сообщении форумов, можно использовать оболочку tcp. Оболочка tcp использует 2 файла, /etc/hosts.allow и /etc/hosts.deny

Править /etc/hosts.allow и добавьте свою подсеть

sshd : 192.168.0.

Править /etc/hosts.deny , и отклоните все

ALL : ALL

См. также http://ubuntu-tutorials.com/2007/09/02/network-security-with-tcpwrappers-hostsallow-and-hostsdeny/

Брандмауэр

В последний раз Вы можете брандмауэр Ваш сервер. Можно использовать iptables, ufw, или gufw.

iptables

sudo iptables -I INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j REJECT

Не используйте ПОНИЖЕНИЕ iptables, см. http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject

ufw

sudo ufw allow from 192.168.0.0/16 to any port 22

gufw имеет графический интерфейс

GUFW

См. https://help.ubuntu.com/community/UFW

https://help.ubuntu.com/community/IptablesHowTo

46
ответ дан 1 April 2012 в 11:27

ssh (безопасная оболочка) используется для безопасного доступа и передачи данных (используется пара RSA_KEYS). Вы можете получить доступ к данным с помощью ssh двумя способами: 1. Командная строка 2. с помощью браузера файлов

Командная строка: для этого вам не нужно ничего устанавливать. Первая задача - войти в другой компьютер.

ssh other_computer_username@other_computer_ip

Эта команда запросит пароль, который является паролем другого компьютера (для определенного имени пользователя). Вы только что вошли в оболочку другого компьютера. Думаю, этот терминал похож на терминал вашего компьютера. Вы можете сделать все, используя shell для другого компьютера, что вы можете сделать на своем компьютере

Файловый браузер: Вам необходимо установить openssh-сервер

sudo apt-get install openssh-server

Для входа в систему перейдите в file-> connectToServer

enter image description here

0
ответ дан 1 April 2012 в 11:27

ОБНОВЛЕНИЕ 2020

Поскольку этот вопрос, теперь возможен простой подход с использованием ключевого слова Match , введенного в OpenSSH 6.5 / 6.5p1 (2014) :

# Disable all auth by default
PasswordAuthentication no
PubkeyAuthentication no

[.. then, at the end of the file ..]

# Allow auth from local network
Match Address  192.168.1.*
    PubkeyAuthentication yes
    # if you want, you can even restrict to a specified user
    AllowUsers stephan

man sshd_config для получения дополнительных сведений

23
ответ дан 20 February 2020 в 12:08

Другие вопросы по тегам:

Похожие вопросы: