использование .netrc с sftp

Должный на сумму времен filezilla отказывает, я сделал команду, которая немедленно уничтожает его от вышеупомянутого, можно использовать это для выполнения любой команды, но в этом случае я сделал его для filezilla.

Создают новый файл , называют его, что Вы хотите, просто удостоверяются, что это имеет расширение команды.

ive, названный шахтой killzilla.command

Внутренняя часть файл, это имеет одну строку

pkill -9f filezilla

Теперь, как только filezilla запирается, я дважды щелкаю по тому выполнению по нему в терминальной и мгновенной смерти к боли во мне вкладчик

17
задан dlamblin 3 September 2009 в 15:22
поделиться

2 ответа

Попробуйте заглянуть в scp, так как для этого можно использовать вход без пароля (ключи ssh).

Я не уверен, что вы сможете использовать те же методы с SFTP.

0
ответ дан 30 November 2019 в 13:34
поделиться

Проще говоря, вы не можете использовать .netrc с sftp , scp или ssh . Эти продукты являются частью стандарта OpenSSH, в названии которого есть ключевое слово secure. Автоматизация входа в систему, как это делает .netrc , небезопасна, и стандарт запрещает такую ​​автоматизацию (хранение паролей). Определенно есть альтернатива, на самом деле три.

Авторизация

Для любой из первых двух альтернатив вы захотите настроить ключи и обменяться ими. На машине, к которой вы подключаетесь, выполните ssh-keygen , для ваших целей будет намного проще, если вы не укажете ключу парольную фразу, хотя это рискованно. Теперь у вас есть два файла в .ssh / , id_rsa и id_rsa.pub . Из них id_rsa должен храниться в секрете или защищаться (отсюда и парольная фраза). Файл pub на самом деле представляет собой одну строку текста. Эта одна строка может быть добавлена ​​в файл ~ / .ssh / authorized_keys на стороне принимающего хоста. Вы можете добавить ключ в файл вручную ; но есть также команда быстрого доступа ssh-copy-id , которая делает именно это, а также заботится о правах доступа к файлам. Авторизовав ключ, вы должны иметь возможность подключиться с машины с закрытым ключом к машине, которая имеет авторизованный открытый ключ, когда вы подключаетесь как соответствующий пользователь. Проверьте это с помощью ssh -v . Если вы ввели парольную фразу, вам будет предложено ввести ее; если вы этого не сделали, вы теперь готовы к автоматизации. Вы можете использовать ssh-agent , чтобы держать закрытый ключ активным между сеансами, вводя парольную фразу только один раз. Если вы делаете несколько ssh прыжков, опция пересылки агентов позволит передавать закрытый ключ от ssh-agent исходного блока через каждый прыжок. Лично я считаю это перегруженным и поэтому предлагаю не использовать парольную фразу.

Теперь, когда вы можете устанавливать соединения ssh , sftp и scp без вводя любой пароль или парольную фразу, которую вы готовы автоматизировать.

Альтернатива 1,

является предпочтительной альтернативой, если вы преобразовали свой макрос .netrc в сценарий оболочки или другой вызов сценария несколько команд scp . Это похоже на автоматизацию всех ваших ftp-соединений с помощью curl или wget . EG:

scp -qr $USER@$REMOTE_HOST:$PATH_FILE_OR_DIR $LOCAL_PATH_FILE_OR_DIR #download
scp -qr $LOCAL_PATH_FILE_OR_DIR $USER@$REMOTE_HOST:$PATH_FILE_OR_DIR #upload
scp -pqr $USER@$REMOTE_HOST:$PATH_FILE_OR_DIR $USER@$REMOTE_HOST2:$PATH_FILE_OR_DIR #mirror between separate hosts.
ssh $USER@$REMOTE_HOST chmod 644 $PATH_FILE #set permissions

Альтернатива 2,

с использованием sftp , как вы упомянули, вы можете создать сценарий с помощью команды ожидает , с пакетным файлом , используя Параметр -b или путем передачи команд в sftp . Это немного больше похоже на макрос .netrc , но не имеет преимуществ перед альтернативой 1. Я покажу пример последней:

#!/bin/sh
echo "OK, starting now..."
sftp -b /dev/fd/0 remotehost <<EOF
cd pub
ascii
get filename.txt
bye
EOF

Альтернатива 3,

используйте sftp программа, которая нарушает стандарт SSH, позволяя хранить параметры соединения, такие как пароль. Например, при использовании cyberduck и AppleScript или FileZilla и очереди.

Дополнительные примечания:

Существует ~ /. ssh / config файл , вы можете использовать , чтобы дать имена хостов более короткие имена, установить параметры пересылки, каталоги по умолчанию, имена пользователей по умолчанию и конкретные идентификаторы для каждого хоста. Мне также нравится опция -l в scp , которая ограничивает мою скорость передачи до чего-то более разумного.

PS Можно подумать, что есть инструмент для преобразования . netrc макросов для сценариев оболочки (в стиле альтернативы 1). Но я ничего не нашел. Это крошечная нишевая возможность для бизнеса?

S. Можно подумать, что существует инструмент для преобразования макросов .netrc в сценарии оболочки (в стиле альтернативы 1). Но я ничего не нашел. Это крошечная нишевая возможность для бизнеса?

S. Можно подумать, что существует инструмент для преобразования макросов .netrc в сценарии оболочки (в стиле альтернативы 1). Но я ничего не нашел. Это крошечная нишевая возможность для бизнеса?

20
ответ дан 30 November 2019 в 13:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: