Доступ по SSH: различия между версиями
Нет описания правки |
м (вообще это вышла страничка про один из вариантов применения sshd для sftp, а не именно sshd_config и тем более ssh_config) |
||
Строка 1: | Строка 1: | ||
С помощью '''SSH-сервера''' можно удаленно управлять сервером через консоль (ssh://-соединение) и передавать файлы (sftp-сервер). | С помощью '''[[SSH]]-сервера''' можно удаленно управлять сервером через консоль (<nowiki>ssh://-соединение</nowiki>) и передавать файлы (sftp-сервер). | ||
На сервере переключаемся в режим суперпользователя: | На сервере переключаемся в режим суперпользователя: | ||
$su- | $ su - | ||
И правим следующий файл: | И правим следующий файл: | ||
#cd /etc/openssh | # cd /etc/openssh | ||
#mcedit sshd_config | # mcedit sshd_config | ||
Перед этим делаем на всякий случай бэкап конфига | Перед этим делаем на всякий случай бэкап конфига: | ||
#cd /etc/openssh | # cd /etc/openssh | ||
#cp sshd_config sshd_config.bak | # cp -a sshd_config sshd_config.bak | ||
Потом если что удаляем измененный и восстанавливаем исходный | Потом, если что, удаляем измененный и восстанавливаем исходный: | ||
#cd /etc/openssh | # cd /etc/openssh | ||
#rm sshd config | # rm sshd config | ||
#cp sshd_config.bak sshd_config | # cp -a sshd_config.bak sshd_config | ||
# service sshd reload | |||
Добавляем: | В любом случае при изменениях этого файла стоит обязательно: | ||
Match User petr #имя вашего пользователя на сервере | # держать ''уже'' открытую рутовую сессию через достаточно надёжное соединение; | ||
# перезапустить sshd; | |||
# попытаться подключиться ещё одной рутовой сессией по ключу (либо пользовательской с поднятием привилегий, что несколько менее предпочтительно), | |||
чтобы убедиться в том, что удалённый доступ к системе всё ещё функционирует. | |||
Добавляем в конец файла(!)<ref>обратите внимание на описание ключевого слова Match в {{cmd|man sshd_config}}: после секции Match берутся строчки до следующей секции Match либо до конца файла</ref> конфигурацию, которая для заданного пользователя отключит интерактивный доступ и оставит только sftp до заданного каталога: | |||
Match User ''petr'' #имя вашего пользователя на сервере | |||
X11Forwarding no | X11Forwarding no | ||
AllowTcpForwarding no | AllowTcpForwarding no | ||
Строка 23: | Строка 30: | ||
===Обмен файлами=== | ===Обмен файлами=== | ||
Обмен файлами с сервером будет по SSH. | Обмен файлами с сервером будет происходить по протоколу SSH. | ||
Создаем каталог: | Создаем каталог: | ||
#mkdir /home/files | # mkdir /home/files | ||
Этот же каталог прописываем в ChrootDirectory. | Этот же каталог прописываем в ChrootDirectory. | ||
Даем себе полные права: | Даем себе полные права: | ||
#chown petr:petr /home/files | # chown ''petr'':''petr'' /home/files | ||
#chmod -R u+rwx /home/files | # chmod -R u+rwx /home/files | ||
Подключаем его на | |||
Подключаем его на [[Workstation]]: | |||
*Открываем Caja | *Открываем Caja | ||
*Файл | *Файл > Соединиться с сервером: | ||
**IP | **IP | ||
**Тип:SSH | **Тип: SSH | ||
**Папка:/home/files | **Папка: /home/files | ||
**Имя пользователя | **Имя пользователя: ''petr'' (учетка на сервере, которой мы дали права) | ||
**Пароль: (соответствующий) | |||
**Можно поставить галочку "Добавить закладку" | **Можно поставить галочку "Добавить закладку" | ||
== Примечания == | |||
<references/> | |||
{{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} |
Версия от 22:48, 25 апреля 2021
С помощью SSH-сервера можно удаленно управлять сервером через консоль (ssh://-соединение) и передавать файлы (sftp-сервер).
На сервере переключаемся в режим суперпользователя:
$ su -
И правим следующий файл:
# cd /etc/openssh # mcedit sshd_config
Перед этим делаем на всякий случай бэкап конфига:
# cd /etc/openssh # cp -a sshd_config sshd_config.bak
Потом, если что, удаляем измененный и восстанавливаем исходный:
# cd /etc/openssh # rm sshd config # cp -a sshd_config.bak sshd_config # service sshd reload
В любом случае при изменениях этого файла стоит обязательно:
- держать уже открытую рутовую сессию через достаточно надёжное соединение;
- перезапустить sshd;
- попытаться подключиться ещё одной рутовой сессией по ключу (либо пользовательской с поднятием привилегий, что несколько менее предпочтительно),
чтобы убедиться в том, что удалённый доступ к системе всё ещё функционирует.
Добавляем в конец файла(!)[1] конфигурацию, которая для заданного пользователя отключит интерактивный доступ и оставит только sftp до заданного каталога:
Match User petr #имя вашего пользователя на сервере X11Forwarding no AllowTcpForwarding no PermitTTY no ForceCommand internal-sftp ChrootDirectory /home/files #корневой каталог при доступе через SSH
Обмен файлами
Обмен файлами с сервером будет происходить по протоколу SSH.
Создаем каталог:
# mkdir /home/files
Этот же каталог прописываем в ChrootDirectory.
Даем себе полные права:
# chown petr:petr /home/files # chmod -R u+rwx /home/files
Подключаем его на Workstation:
- Открываем Caja
- Файл > Соединиться с сервером:
- IP
- Тип: SSH
- Папка: /home/files
- Имя пользователя: petr (учетка на сервере, которой мы дали права)
- Пароль: (соответствующий)
- Можно поставить галочку "Добавить закладку"
Примечания
- ↑ обратите внимание на описание ключевого слова Match в man sshd_config: после секции Match берутся строчки до следующей секции Match либо до конца файла