Встановлення openssh-server
дозволить вам безпечно отримувати доступ до всього диска через Інтернет або з пристроїв у вашому домі, якщо вони підтримують sFTP. Якщо з будь-якої причини цього немає, акція Samba може доповнити це, як детально описано в іншій відповіді. Ось як я встановив шахту:
Встановити OpenSSH сервер :apt-get install openssh-server
Відкрити порт 22 : Я використовую декілька способів зробити це gufw
(можливо, вам знадобиться його встановити, я не впевнений, якщо це за замовчуванням). Якщо ви хочете відкрити його в Інтернеті на більш пізньому етапі, вам потрібно буде переслати порт 22 на сервер від маршрутизатора. Зазвичай це можна зробити через веб-інтерфейс на маршрутизаторі. Якщо ви можете, призначіть серверу статичний ip там (тобто вимкніть DHCP для сервера).
Відредагуйте налаштування ssh config : Створіть резервну копію та відкрийте файл /etc/ssh/sshd_config
та змініть / додайте налаштування
PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary
Для максимальної безпеки ви можете налаштувати вхід на основі ключів, як це детально описано тут https://help.ubuntu.com/community/SSH/OpenSSH/Keys , але цього буде досить, якщо ви просто встановили дійсно надійний пароль і зберегли його на кожен клієнтський апарат.
Ви можете створити користувача для кожної людини, яка підключається. Якщо ви це зробите, ви можете додати їх до однієї групи (ssh_users, скажімо) і дозволити всім із цієї групи підключитися, використовуючи AllowGroups ssh_users
. (Для отримання додаткової інформації див. Http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )
Перевірте, чи налаштування дійсні . Ви можете перевірити, чи помилилися синтаксичні помилки в конфігураційному файліsshd –t
Підключення з сервера до самого себе : У цей момент ви повинні мати можливість підключитися до машини від себе в терміналі шляхом ssh localhost
(якщо ви вже є openssh-client
). Тоді спробуйте з іншого комп'ютера в мережі, ssh <ip-address>
.
Якщо ip сервера статичний у вашій домашній мережі, ви можете додати запис до /etc/hosts
комп'ютера Ubuntu, який з'єднує його з рядком
server_ip_address theserver
Це означає, що ви можете зв'язатись просто ssh theserver
, або як би ви його не назвали. Ви можете зробити те ж саме для Windows (див. Тут: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )
Підключення через sFTP : Якщо ви можете підключитися до сервера з іншої машини домашньої мережі в терміналі, ви можете підключитися до нього через sFTP та надійно переглядати та переносити файли. Особисто я встановив комбінацію клавіш, щоб я міг змонтувати / відключити свій сервер за допомогою команд клавіатури (на Ubuntu):
gvfs-mount sftp://user@ipaddress
gvfs-mount -u sftp://user@ipaddress
( -u
Прапор - це команда umount)
Помістіть їх у поле "Command:" Налаштування системи> Клавіатура> Комбінації клавіш> Спеціальні ярлики> + (Нова ярлика), вкажіть ім'я, натисніть Застосувати, натисніть правий стовпець та введіть комбінацію клавіш ( CTRL+SHFT++
і CTRL+SHFT+-
відповідно здається логічною) .
Ви можете замінити ip-адресу на те, що є /etc/hosts
. Це дозволить встановити сервер як накопичувач у Nautilus, і ви можете переглядати папки так само, як і на локальному комп'ютері. У Windows ви можете підключитися за допомогою програмного забезпечення FTP (Filezilla тощо). Я не пробував цього, але впевнений, що, можливо, є інтеграція sFTP і в сам Windows Explorer.
Ще одна перевага вхідних даних на основі ключа - це те, що вам не потрібно вводити пароль при кожному підключенні (якщо ви не встановили його для захисту ключа). Ви можете заглянути в нього після того, як у вас це буде працювати з паролями (і перед відкриттям назовні).
Підключення ззовні : Останнім кроком буде перевірити, чи можна підключитися з Інтернету, тобто сусіднього будинку чи будь-чого іншого. Якщо у вас немає статичної IP-адреси для вашого будинку, це може бути складно йти в ногу з вашою ip-адресою. Я використовую динамічний сервіс dns ( http://arald.org/ - безкоштовний) особисто, але ви можете знайти інше рішення краще. Тоді ви б замінили ipaddress у наведених вище командах кріплення на динамічну веб-адресу, яка вказує на вашу домашню мережу.
Один остаточний натяк на безпеку - зберігайте вкладки у своєму журналі SSH, якщо ви перейдете на це ( /var/log/auth.log
), щоб переконатися, що нічого не відбувається. Якщо ви виявите, що це так, Fail2Ban - це одне рішення ( http://www.fail2ban.org/wiki/index.php/Main_Page та https://help.ubuntu.com/community/Fail2ban ). Щоб мінімізувати ризик, ви можете змінити порт SSHD, який слухає щось нестандартне, як 500, і змінити відповідні правила переадресації портів на маршрутизаторі та брандмауері сервера (чому: /server/189282 / why-change-default-ssh-port ), хоча я особисто не тестував це gvfs-mount
.