Я пытаюсь связать мой новый ноутбук с 11.10 и мой старый ноутбук с 8.04 через мой маршрутизатор, используя SSH.
Этот вопрос задают и отвечают на ubuntuforums здесь:
http://ubuntuforums.org/showthread.php?t=1648965
Я думал, что это будет полезно иметь более точный ответ здесь.
Примечание: мне нужно было сначала установить openssh-сервер на ноутбук, к которому я пытался подключиться, и открыть SSH-порт в брандмауэре с помощью firestarter.
Можно ограничить доступ к 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 и не позвольте перенаправление портов.
Можно установить несколько опций в /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 использует 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 имеет графический интерфейс
ssh (безопасная оболочка) используется для безопасного доступа и передачи данных (используется пара RSA_KEYS). Вы можете получить доступ к данным с помощью ssh двумя способами: 1. Командная строка 2. с помощью браузера файлов
Командная строка: для этого вам не нужно ничего устанавливать. Первая задача - войти в другой компьютер.
ssh other_computer_username@other_computer_ip
Эта команда запросит пароль, который является паролем другого компьютера (для определенного имени пользователя). Вы только что вошли в оболочку другого компьютера. Думаю, этот терминал похож на терминал вашего компьютера. Вы можете сделать все, используя shell для другого компьютера, что вы можете сделать на своем компьютере
Файловый браузер: Вам необходимо установить openssh-сервер
sudo apt-get install openssh-server
Для входа в систему перейдите в file-> connectToServer
Поскольку этот вопрос, теперь возможен простой подход с использованием ключевого слова 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
для получения дополнительных сведений