Оформление
Настройка системы Linux с помощью SFTP
1. Обзор
Система Linux поставляется с сервисом SFTP. В этой статье на примере системы CentOS 7 рассказывается о том, как использовать SFTP в системе Linux. Конкретные шаги могут отличаться в зависимости от версии и конфигурации операционной системы.
2. Установите сервер OpenSSH
SFTP - это безопасная передача файлов по протоколу SSH, поэтому вам необходимо установить сервер OpenSSH.
2.1 Определение наличия или отсутствия сервера OpenSSH
1) Откройте терминал или интерфейс командной строки. Войдите в систему как пользователь root.
2) Выполните следующую команду, чтобы определить, установлен ли сервер OpenSSH:
yum -q list openssh-server- Если вы видите строки, связанные с OpenSSH, значит, в вашей системе установлен клиент OpenSSH. Убедитесь, что версия сервера OpenSSH выше 4.8p1; если она слишком низкая, ее необходимо обновить.
- Если соответствующий выход OpenSSH не найден и отображается сообщение об ошибке типа "команда не найдена", значит, сервер OpenSSH еще не установлен в системе.

2.2 Установка сервера OpenSSH
Если запрос в разделе 2.2 показывает, что в системе установлен сервер OpenSSH версии 4.8p1 или выше , этот раздел можно пропустить.
Если согласно запросу в разделе 2.1 сервер OpenSSH не был установлен в системе, или версия установленного сервера OpenSSH не соответствует требованиям, то необходимо выполнить операцию, описанную в данном разделе.
1) Откройте терминал или интерфейс командной строки. Войдите в систему как пользователь root.
2) Выполните следующую команду, чтобы обновить список системных пакетов:
sudo yum update
3) Выполните следующую команду для установки сервера OpenSSH:
sudo yum install openssh-server
2.3 Изменение ограничений параллелизма и сеансов
Из-за высокого параллелизма, который может возникнуть при использовании SFTP, необходимо заранее оптимизировать лимиты параллелизма и количества сессий на сервере в зависимости от ожидаемой нагрузки.
В противном случае, в состоянии высокой текучести, SFTP-соединение приведет к ошибке: соединение закрыто иностранным хостом
Описание параметра:
| параметры | инструкции |
|---|---|
| MaxStartups | Используется для ограничения максимального количества одновременных соединений, разрешенных SSH-сервером, и ограничения скорости соединения, т.е. верхнего предела количества клиентов, одновременно подключающихся к серверу.Формат значений параметров - a🅱️c.* a: указывает максимальное количество одновременных соединений * b: указывает временной интервал (в минутах) для инициирования ограничения скорости после определенного количества соединений * c: указывает максимальное количество инкрементных соединений, разрешенных в течение периода ограничения Значение по умолчанию, MaxStartups 10:30:100, указывает, что максимальное количество одновременных подключений равно 10, что ограничено количеством подключений в течение 30-минутного периода и допускает 100 дополнительных подключений каждые 30 минут. |
| MaxSessions | Используется для ограничения количества сеансов SSH, которые пользователь может создавать одновременно.Формат значения параметра - целое число, указывающее на максимальное количество разрешенных сеансовЗначение по умолчанию, MaxSessions 10, означает, что у каждого пользователя может быть одновременно открыто не более 10 сеансов SSH. |
Измените метод:
1) Откройте терминал или интерфейс командной строки. Войдите в систему как пользователь root.
2) С помощью текстового редактора (например, vi или nano) откройте файл /etc/ssh/sshd_config.
3) Найдите в файле строку, содержащую MaxStartups и MaxSessions.
По умолчанию эти две строки находятся в закомментированном состоянии (с помощью # в начале), откомментируйте их. Если нет, добавьте следующую строку в конец файла и сохраните:
MaxStartups 1000:30:1200 MaxSessions 1000
4) Перезагрузите конфигурацию SSH-сервера, чтобы применить изменения. Для перезагрузки сервера OpenSSH можно использовать следующую команду:
sudo systemctl reload sshd2.4 Настройка аутентификации SSH
По умолчанию сервер OpenSSH использует для аутентификации пользователя в системе. Вам необходимо убедиться, что существует учетная запись пользователя, которую можно использовать для входа в систему, и что у пользователя есть соответствующие разрешения.
В примере из этого раздела создается пользователь с именем fanruan, для него задается пароль и права доступа к папкам.
1) Создайте нового пользователя (замените "fanruan" на имя пользователя, которого вы хотите создать)
sudo adduser fanruan
2) Установите пароль для пользователя (замените "fanruan" на имя пользователя, которое вы хотите создать, и следуйте подсказкам, чтобы установить пароль)
sudo passwd fanruan

3) Подготовьте папку для хранения файлов проектов приложений FanSoft. Пример /home/fanruan
4) Предоставьте пользователю доступ на запись к папке (замените "/home/fanruan" на путь к вашей папке).
chmod -R 777 /home/fanruan3. Подготовка файловых серверов
3.1 Копирование файла проекта
1) Перейдите в папку приложения Sailsoft %Tomcat_HOME%/webapps/webroot.
2) Скопируйте папку WEB-INF в каталог /home/fanruan (папка, подготовленная в разделе 2.4), подготовленный сервером OpenSSH.
3.2 Запуск службы SFTP
1) Откройте терминал или интерфейс командной строки. Войдите в систему как пользователь root.
2) Выполните следующую команду, чтобы проверить состояние SSH-сервера:
сервис sshd status- Если статус Active (Активный) запущен, SFTP работает.
- Если состояние Active не запущено, SFTP не запускается.
3) Выполните следующую команду, чтобы запустить SSH-сервер:
запустить службу sshd
3.3 Открытые порты
Брандмауэр сервера, на котором размещен SFTP, должен быть открыт для порта 22.
4. Настройка SFTP в качестве файлового сервера для кластера
Администратор вход FineBI системы, нажмите "System Management > Интеллектуальная эксплуатация и обслуживание > Конфигурация кластера", для подробного описания шагов конфигурации, пожалуйста, обратитесь к: Linux системы вручную настроить стандартный кластер добычи.
При настройке файлового сервера выберите SFTP в качестве протокола и заполните абсолютный путь в качестве пути к папке WEB-INF. Как показано на рисунке ниже:

5. условия
5.1 Знания в области эксплуатации и технического обслуживания
service sshd status # Проверьте состояние службы sftp service sshd start # Запустите службу sshd stop #
Остановить службу sshd restart #перезапустить службу sftpПримечание: SFTP запускается по умолчанию при запуске системы. Дополнительную информацию см. в разделе: Cluster Operation and Maintenance Manual - Linux Edition.
5.2 Невозможно загрузить файлы или перезапустить службу sshd
При входе в Sftp для работы с файлом возникает ошибка "550 create directory operation failed" или вы не можете войти в систему и не имеете прав на чтение/запись даже после включения прав 777, рассмотрите следующие действия.
Это проблема с механизмом установки SELinux (Security-Enhanced Linux, реализация АНБ обязательного контроля доступа), который необходимо отключить.
1) Способы окончательного отключения SELinux
vi /etc/selinux/config # Отредактируйте файл конфигурации SELinux SELINUX=enforcing --> SELINUX= disabled # Отключите SELinux навсегда и перезагрузите систему.2) Способы временного отключения SELinux
setenforce 0 # Выполнение команды, только временное отключение, после перезагрузки будет восстановлено исходное состояние3) Не отключайте SELinux
getsebool -a | grep ftpd # Только ftp_home_dir и allow_ftpd_full_access должны быть & nbsp;включены, чтобы vsftpd имел доступ к корневому каталогу ftp, передаче файлов и т. д. setsebool -P ftp_home_dir 1 # Просто запустите его.
nbsp;on для того, чтобы vsftpd имел доступ к корневому каталогу ftp, передаче файлов и т. д. setsebool -P ftp_home_dir1 # Выполнить его.
setsebool -P allow_ftpd_full_access 1 # Просто сделайте это.Примечание: Подробнее о SELinux читайте в разделе Начало работы с SELinux.