Мы почти закончили переписывать устаревшую систему веб-приложений и переместили доменное имя на новый сервер. Единственная другая функция, которую мы должны сделать, - это небольшая функция, которая должна взаимодействовать с другим сервером, который я не контролирую.
Старая система периодически получала данные с этого другого сервера по незащищенному ftp. Очевидно, другой сервер войдет в наш сервер и поместит файл данных в определенный каталог, который наша система будет читать.
У нас есть имя пользователя и пароль, используемые для входа в систему. Моя идея заключалась в том, чтобы создать учетную запись ftp с тем же именем пользователя и паролем на новом сервере. При этом нам не нужно будет изменять другой сервер.
Я видел много статей, в которых говорилось, что незащищенный ftp небезопасен. Могу ли я сделать что-нибудь, чтобы эта работа работала без ущерба для безопасности остальной части нашего сервера (на котором размещено несколько производственных веб-сайтов). Данные в этом файле будут напрямую отображаться на веб-сайте, поэтому не имеет значения, является ли сам файл безопасным.
Могу ли я настроить что-то, где я создаю пользователя с очень ограниченными привилегиями, который может получать этот файл в определенном каталоге, из которого другой пользователь может читать?
Изменить: мы запускаем сервер Ubuntu 11.04 на Linode, поэтому я полностью контролирую наш сервер.
Если вы не можете каким-либо образом изменить этот другой сервер или найти способ прокси-соединения через SSH, единственное, что не позволяет подключить эту устаревшую систему к вашему серверу с прямым перекрестным соединением на отдельной карте Ethernet, - это изолировать этого пользователя ftp как как можно больше. Заключите в тюрьму доступ пользователя ftp, чтобы он имел минимальный доступ, необходимый для создания этого файла, убедитесь, что пароль пользователя не используется где-либо еще в системе.
Я не помню, чтобы читал, что вы запускаете для сервера; убедитесь, что процесс выполняется как контекст непривилегированного пользователя, и если вы знаете, когда этот файл должен передаваться каждый день, вы можете попробовать создать сценарий, который активирует и деактивирует FTP-сервер, чтобы устаревшая система могла только получить к нему доступ в определенное время суток.
Вы также можете настроить его так, чтобы только устаревшая система могла подключаться к вашему серверу по FTP; все остальные попытки подключения с другого IP-адреса регистрируются, но отклоняются.
Вы, безусловно, можете попытаться ограничить размер ущерба, который может произойти, если пароль учетной записи был взломан. Возможно, вы не сможете сделать это, не повлияв на бизнес-процесс.
Однако вы не говорите, насколько вы контролируете систему отправки. Если возможно, вы можете поменять FTP на SFTP или FPTS или туннелировать соединение с помощью IPSec.