Я хочу редактировать файлы в моем /etc
из winscp.
У меня есть права администратора на этом компьютере. Как я могу редактировать файлы и сохранять их из Winscp в папках, требующих sudo
быть написано перед любыми модифицирующими изменениями.
Я хотел бы сделать это, потому что я ненавижу редактировать файлы в терминале на компьютере с Windows, а Winscp предоставляет хороший редактор, который часто намного удобнее.
Пожалуйста и спасибо.
Как я могу редактировать файлы и сохранять их из Winscp в папках, для которых требуется запись sudo перед любыми изменениями.
Учитывая это требование, что вы вошли в систему как непривилегированные пользователи с доступом sudo, прямого способа сделать это с помощью соединения winscp нет.
Что вы можете сделать, так это включить SSH-доступ к root с помощью ключа, а затем настроить аутентификацию на основе ключей. Для этого вы должны установить PermitRootLogin without-password
в твоем /etc/ssh/sshd_config
, а затем вы должны сгенерировать ключ с помощью вашего любимого инструмента (например, puttygen.exe) и поместить общедоступный компонент в /root/.ssh/authorized_keys. Если вы выполните поиск на этом сайте, вы найдете множество вопросов и ответов об аутентификации на основе ключей. Затем просто используйте winscp для подключения в качестве учетной записи root, и у вас будет возможность редактировать вещи по мере необходимости.
Я предупреждаю вас, что если вы сделаете это, чрезвычайно важно использовать текстовый редактор, который будет создавать текстовые файлы с использованием окончаний строк в стиле UNIX. Что-то вроде блокнота или блокнота серьезно испортит ваши файлы конфигурации.
Вам также не следует даже думать об этом, пока у вас не будет создана система для резервного копирования, на всякий случай, если что-то действительно облажается.
Кроме того, я бы посоветовал вам использовать что-то вроде etckeeper, чтобы ваш каталог / etc хранился в системе контроля версий. Это позволит вам быстро вернуться к предыдущим версиям при правильном использовании.
Другой метод может быть лучше и по-прежнему дает вам текстовый редактор с графическим интерфейсом пользователя: установить сервер X11 на Windows и редактор графического интерфейса на сервере, например SciTE. Затем вы должны использовать SSH с включенной пересылкой X11, и вы можете запустить текстовый редактор графического интерфейса и редактировать файлы. (Мой ответ на аналогичный вопрос можно найти здесь https://superuser.com/questions/134688/putty-external-text-editor/134694#134694)
Cakemox правильный. Однако можно использовать ssh-соединение для изменения системных файлов. Вы можете использовать putty для подключения вашего ssh-сервера.
Я использую WinSCP для передачи файлов и Putty для удаленного подключения.
Хотя я НАСТОЯТЕЛЬНО не рекомендую редактировать системные файлы таким образом (вам действительно следует войти в систему с помощью клиента ssh, такого как putty, а затем отредактировать файлы с помощью vim, emacs, joe, nano и т. Д.), Это кажется возможным:
http://winscp.net/eng/docs/faq_su
Для некоторых файлов, таких как /etc/sudoers
, /etc/passwd
, и /etc/shadow
, вам действительно стоит использовать такие команды, как visudo
и vipw
вместо того, чтобы редактировать файлы напрямую. Редактирование этих файлов с помощью редактора, запускаемого через WinSCP, пропускает некоторые меры безопасности, которые обеспечивают эти команды.
Но на самом деле не делайте этого. Не для системных файлов.
scp может быть опасным редактированием системных файлов, скажем, ваше соединение умирает посреди отправки / etc / shadow (маловероятно), это было бы болезненно, если бы у вас не было физического доступа к машине или какого-либо доступа к консоли !