Я перемещаю сервер Debian в Ubuntu 16.04. Один из пакетов на сервере Debian scponly
который действует как оболочка и разрешает соединения SSH в scp целях только (не, входят в систему или выполнение чего-либо кроме scp
двоичный файл). Детали могут быть найдены здесь. Этот пакет уже был на Debian посредством по крайней мере 2 обновлений физического сервера, бесчисленных обновлений операционной системы и вероятно дат приблизительно с 2007.
scponly
не находится ни в каких 16,04 репозиториях и не компилируется на панели запуска. Пока я довольно способен к установке его из источника, это получило меня задающийся вопросом ли в последних 10 + годы, там лучший способ настроить ssh, чтобы разрешить, чтобы scp управлял только, который является большим количеством дружественной Ubuntu 16.04, и менее основанной в тусклом и удаленном прошлом. Какие-либо идеи?
Согласно этому serverfault.com ответ Позволяет SCP, но не фактический вход в систему с помощью SSH, один в настоящее время поддерживаемый путь при помощи rssh
, который доступен от universe
репозиторий:
sudo apt-add-repository universe
sudo apt-get install rssh
Для разрешения SCP необходимо не прокомментировать соответствующую строку в /etc/rssh.conf
файл (плюс любые другие протоколы Вы хотите включить):
allowscp
#allowsftp
#allowcvs
#allowrdist
#allowrsync
#allowsvnserve
Затем это - просто вопрос изменения оболочки входа в систему пользователя к оболочке rssh, например.
sudo chsh -s /usr/bin/rssh steeldriver
Можно затем протестировать тот SCP работы, например.
$ scp steeldriver@localhost:~/Pictures/somefile.png ./
steeldriver@localhost's password:
somefile.png 100% 34KB 33.7KB/s 00:00
$
но SSH должен перестать работать с сообщением отклонения как
$ ssh steeldriver@localhost
steeldriver@localhost's password:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-88-generic x86_64)
* Documentation: https://help.ubuntu.com/
Last login: Wed Jul 6 16:23:47 2016 from localhost
This account is restricted by rssh.
Allowed commands: scp
If you believe this is in error, please contact your system administrator.
Connection to localhost closed.
Обратите внимание, что это, кажется, не необходимо добавить /usr/bin/rssh
к списку позволенного входа в систему окружает в/etc/shells