безкоштовно з міських телефонів України
Київ | 044 392-73-56 |
Харків | 057 728-49-18 |
Дніпро | 056 790-86-00 |
Одеса | 048 734-56-54 |
Львів | 032 229-58-50 |
Миколаїв | 051 270-12-63 |
Полтава | 053 262-53-74 |
Запоріжжя | 061 228-69-91 |
SFTP (SSH File Transfer Protocol) – це протокол передачі файлів SSH, що дозволяє безпечним способом передавати файли на сервер, використовуючи зашифроване SSH-з'єднання.
Рекомендується створити не root користувача з доступом до sudo.
В інструкції використовується текстовий редактор nano, для якого потрібно виконати команду:
yum install nano
Створюємо нового користувача newuser з правами на передачу файлів:
sudo adduser newuser
Встановлюємо пароль для нового користувача:
sudo passwd newuser
Створюємо каталог передачі файлів:
sudo mkdir -p /var/sftp/uploads
Передаємо права на /var/sftp користувачу root:
sudo chown root:root /var/sftp
Передаємо користувачеві root право на запис у даному каталозі. В інших користувачів матиму право лише на читання та виконання:
sudo chmod 755 /var/sftp
Передаємо каталог uploads користувачу newuser:
sudo chown newuser:newuser /var/sftp/uploads
Відкриваємо конфігураційний файл сервера SSH:
sudo nano /etc/ssh/sshd_config
після чого в кінці файлу додаємо наступні рядки (newuser необхідно замінити на власного користувача):
Match User newuser ForceCommand internal-sftp PasswordAuthentication yes ChrootDirectory /var/sftp PermitTunnel no AllowAgentForwarding no AllowTcpForwarding no X11Forwarding no
Зберігаємо зміну у файлі, натиснувши клавіші Ctrl+x , потім клавішу y і потім клавішу Enter
Перезапускаємо сервіс:
sudo systemctl restart sshd
Тепер SSH-сервер обмежує доступ до передачі файлів, підтримуючи її лише для користувача новогокористувача.
Увійти на сервер як newuser за допомогою звичайного доступу SSH більше неможливо. Для перевірки виконаємо команду:
ssh newuser@localhost
Щоб переконатися, що користувач newuser може використовувати SFTP для передачі файлів, виконуємо команду:
sftp newuser@localhost
Виконуємо команду ls для перегляду вмісту каталогу:
ls
Бачимо створену раніше папку uploads
Щоб переконатися, що для користувача новогокористувача обмежений доступ до каталогів вищого рівня, виконуємо команду переходу на рівень вгору:
cd ..
Ця команда нічого не покаже, але якщо ми повторно виконаємо команду ls , ми побачимо ту саму папку uploads, що означає перехід на рівень вище не був зроблений.
Див. також:
Обмеження доступу до оболонки за допомогою SFTP