Я слежу за различными учебными материалами и сообщениями в блоге о настройке машины Ubuntu в качестве резервного «сервера» (я назову его сервером, но он просто запустил рабочий стол Ubuntu), который я нажимаю на новые файлы с помощью rsync. Прямо сейчас, я могу подключиться к серверу с моего ноутбука с помощью rsync и ssh с ключом RSA, который я создал, и без пароля, когда мой ноутбук подключен к моему домашнему маршрутизатору, к которому подключен сервер. Я хотел бы иметь возможность отправлять файлы с моего ноутбука, когда я вдали от дома. В некоторых учебных пособиях, которые я рассмотрел, были некоторые краткие предложения по безопасности, но они не фокусировались на них.
Что мне нужно сделать, чтобы позволить моему ноутбуку отправлять файлы на сервер, не делая слишком легким для кого-то другого, чтобы взломать сервер?
Вот что я сделал до сих пор:
Ran ssh-keygen и ssh-copy-id для создания пары ключей для моего ноутбука и сервера. Создал скрипт на сервере, чтобы записать свой публичный IP-адрес в файл, зашифровать файл и загрузить на ftp-сервер, к которому у меня есть доступ (я знаю, что могу зарегистрировать бесплатную динамическую учетную запись DNS для этой части, но так как я иметь учетную запись ftp и не нужно делать ip общедоступным, я думал, что это может быть лучше).Вот что я видел:
Ran ssh-keygen и ssh-copy-id для создания пары ключей для моего ноутбука и сервера. [!d4 ]Ran ssh-keygen и ssh-copy-id для создания пары ключей для моего ноутбука и сервера.
Создал скрипт на сервере, чтобы записать публичный IP-адрес в файл, зашифровать файл и загрузить на ftp-сервер, к которому у меня есть доступ (я знаю, что могу зарегистрировать бесплатную динамическую учетную запись DNS для этой части, но поскольку у меня есть учетная запись ftp, и мне действительно не нужно делать ip общедоступным, я думал это может быть лучше).Включить брандмауэр (ufw). Будет ли это что-либо делать, или мой маршрутизатор уже заблокирует все, кроме порта, который я хочу?
Все ли это стоит делать? Должен ли я делать что-нибудь еще? Могу ли я настроить сервер, чтобы разрешать соединения только с ключом RSA (а не с паролем), или fail2ban обеспечивает достаточную защиту от попыток вредоносного соединения? Можно ли ограничить типы соединений, разрешенных сервером (например, только ssh)?