Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как через putty передать файл


Как пользоваться PuTTY | Losst

В операционных системах семейства Linux для удаленного доступа между машинами широко используется протокол SSH. Его популярность обусловлена простотой, надежностью и безопасностью соединения. Подключившись по SSH к удаленному компьютеру, вы получаете возможность выполнять на нем любые команды терминала, как будто вы работате на своем компьютере, работает даже автодополение и другие вспомогательные возможности.

Иногда возникает необходимость подключиться к удаленному компьютеру Linux из Windows, но по умолчанию, там нет утилиты предназначенной для этого. Есть сторонняя программа, она называется PuTTY и вы можете установить ее отдельно. В этой статье мы рассмотрим как пользоваться PuTTY для подключения к Linux системам, а также поговорим как выполняется настройка PuTTY для удобного использования.

Содержание статьи:

Установка PuTTY

Сначала нужно скачать установщик программы. Для этого откройте официальный сайт и нажмите "You can download PuTTY here":

 

Затем выберите установщик для вашей архитектуры, x86 или x64 и загрузите его.

 

На первом шаге нажмите "Next":

Папку для установки можно оставить по умолчанию:

 

Компоненты тоже:

Дождитесь завершения установки:

Снимите галочку с "View README" и нажмите "Finish":

Теперь перейдем к тому как выполняется работа в PuTTY.

Как пользоваться PuTTY

1. Интерфейс программы

Сразу же после запуска программы из меню пуск вы увидите графический интерфейс ее настройки. После подключения вы будете видеть только терминал, но настроить программу можно через удобный интерфейс.

Рассмотрим за что отвечают те или иные вкладки программы, чтобы вы ориентировались что и где искать. У нас есть четыре вкладки:

  • Session - отвечает за подключение удаленному серверу, тут мы вводим параметры подключения, порт, адрес, а также можем сохранить все настройки putty, чтобы не настраивать каждый раз заново.
  • Terminal - позволяет включать или отключать возможности терминала;
  • Window - настройка внешнего вида окна, цвет, шрифт, кодировка;
  • Connection - настройка параметров подключения, алгоритма шифрования, сжатия, ключей аутентификации, X11 и других параметров.

Каждая вкладка имеет несколько подразделов, но мы не будем сейчас их трогать, а перейдем сразу к практике и посмотрим как подключиться putty к удаленному узлу.

2. Подключение к удаленному компьютеру PuTTY

Чтобы подключиться к удаленному компьютеру по SSH перейдите на вкладку "Session" , здесь, в поле "Host Name" необходимо прописать ip адрес или имя хоста, компьютера, к которому вы хотите подключиться, в поле порт - нужно указать порт, на котором запущен SSH сервер, по умолчанию используется порт 22:

 

Далее, нажмите кнопку "Open". После этого появится запрос на добавление ключа сервера в список доверенных ключей, нажмите "Да":

Затем вам будет нужно ввести логин пользователя и пароль. Важно заметить, что скопировать логин или пароль у вас не получится, необходимо только вводить вручную:

Теперь авторизация прошла успешно, и вы можете выполнять нужные действия на сервере:

 

3. Сохранение сессии PuTTY

Чтобы не вводить каждый раз ip и порт можно сохранить эти данные в виде сессии, для этого пропишите новое имя в поле "Saved Sessions", а затем нажмите кнопку "Save":

Теперь вы сможете загрузить сохраненную сессию, нажав кнопку "Load".

После того как будет завершена настройка putty и все параметры будут выставлены правильно вы можете сохранить настройки и не вводить их несколько раз.

4. Имя пользователя по умолчанию

Вы можете не вводить имя пользователя каждый раз, для этого перейдите на влкадку "Connection", затем "Data" и в поле "Auto-login Username" пропишите имя пользователя, например, root:

Теперь подключение putty будет выполняться от имени этого пользователя.

5. Авторизация по ключу ssh в PuTTY

Чтобы не вводить каждый раз пароль можно настроить авторизацию по ключу. В Linux такая возможность используется очень широко потому что это удобно. Первым делом необходимо создать ключ. Для этого запустите утилиту PuTTYgen и установите переключатель в положение "SSH-2 RSA" нажмите "Generate":

Обязательно ключ должен быть SSH-2 RSA, если в главном окне нет, выберите в меню "Key". Подвигайте мышкой, чтобы создать достаточное количество энтропии:

Ключ готов, затем, с помощью кнопок "Save Public Key" и "Save Private Key" сохраните оба ключа.

Далее, откройте PuTTY, перейдите на вкладку "Connection", затем "SSH", затем "Auth":

Здесь необходимо нажать кнопку "Browse" и добавить недавно сохраненный приватный ключ:

Далее, возвращаемся на вкладку "Session", выбираем наше сохранение и нажимаем "Save" чтобы сохранить настройки. Осталось только отправить наш открытый ключ на сервер. Для этого авторизуйтесь на нем с помощью пароля и открытый ключ вставьте ключ в конец файла /root/.ssh/authorized_keys.

Ключ можно брать прямо из окна PuTTYgen "Public key for pasting" или из файла открытого ключа:

Все, теперь можно выходить и авторизоваться снова. На этот раз подключение по ssh putty будет выполняться с помощью нашего ключа. Не забывайте сохранять настройки сессии, чтобы не выбирать ключ каждый раз. Теперь вы знаете как пользоваться программой putty, рассмотрим еще передачу файлов.

5. Передача файлов через scp в PuTTY

Не все знают, но PuTTY позволяет передавать файлы через ssh также как это делает linux с помощью утилиты scp. Нажмите Win+R, затем пропишите cmd, чтобы запустить командную строку.

 

Синтаксис утилиты pcsp выглядит следующим образом:

pscp опции путь_файлу имя_пользователя@хост:/путь/к/файлу/на/удаленном/хосте

Например, мы можем отправить файл из текущей папки в папку пользователя /root/:

pscp test.txt [email protected]:/root/

 

 

С помощью опции -P можно задать удаленный порт:

pscp -P 2250 test.txt [email protected]:/root/

А опция load позволяет загрузить сохраенные настройки сессии PuTTY:

pscp -load losst-2 test.txt [email protected]:/root/

Теперь вы знаете как использовать putty для передачи файлов.

Выводы

В этой статье мы рассмотрели как пользоваться PuTTY для решения задач администрирования Linux в Windows. Иногда случаются ситуации, что без ssh в windows никуда, тогда эта утилита будет просто незаменимой.

Putty — Как передавать файлы по протоколу ssh на windows машине — b14esh.com

Для этого нужна консольная утилита pscp.exe, входящая в очень полезный пакет утилит putty.

 

ОТКРЫВАЕМ CMD (win-key+R)

путь к PSCP>pscp.exe ЧТО_копируем? имя_юзера_на_сервере@IP-адресс_или_ДНС:/КУДА_КОПИРУЕМ!и_как_назавем!

 

1.[Передача файла в сторону сервера SSH]

c:\Program Files\putty>pscp -P 22 c:\AUTOEXEC.BAT [email protected]:/root/autoexec_copy.txt

После выполнения этой команды на сервере в папке /root появится файл autoexec_copy.txt - точная копия AUTOEXEC.BAT.

 

 

2.[Передача файла от сервера SSH к клиенту]

c:\Program Files\putty>pscp -P 22 [email protected]:/etc/ipnat.rules c:\ipnat_rules_cpy.txt

После выполнения этой команды на диске c: клиента, в корневом каталоге появится файл ipnat_rules_cpy.txt - точная копия ipnat.rules.

 

Опцию -P, указывающую порт подключения, указывать не обязательно, если используется стандартный порт SSH (22 TCP).

 

P.S.

Программа winscp - имеет интерфейс похожий на  total commander, far

Копирование файлов и запуск команд через SSH

Подключение к серверу посредством SSH – один из основных методов управления *nix серверами. Довольно часто возникает необходимость загрузить файл на удаленный сервер, либо выгрузить, и других средств кроме SSH-подключения нет. К счастью, копирование файлов через защищенное соединение – одна из штатных функций этого протокола и реализуется с помощь отдельной команды scp в Linux-системах, либо с помощью pscp.exe, входящей в состав SSH-клиента Putty для операционной системы Windows.

Облачные VPS/VDSСоздайте сервер всего за 1 минуту!от15.9 руб/месяцПопробовать

Работаем на ОС семейства Linux

Используем следующий формат команд:

scp [модификатор] [источник] [место_назначения]

Если в качестве источника или места назначения указывается удаленный сервер, то формат параметра такой:

[пользователь]@[сервер]:[путь_к_файлу]

После запуска команды потребуется ввести пароль от указанной учетной записи удаленного сервера.

Если собрать все вместе, то скопировать локальный файл /home/user/file.tgz в домашний каталог пользователя root удаленного сервера 123.123.123.123 можно командой:

scp /home/user/file.tgz [email protected]:/root

Чтобы скачать этот же файл с удаленного сервера:

scp [email protected]:/root/file.tgz /home/user

За одну операцию можно скопировать несколько файлов, для этого необходимо указать их в качестве источника, разделив пробелом – местом назначения будет считаться последний указанный параметр. Например, загрузить файлы file1.tgz и file2.tgz из локального каталога на удаленный сервер позволит команда:

scp file1.tgz file2.tgz [email protected]:/root

Для копирования каталога потребуется задействовать модификатор команды r. Копируем локальный каталог /home/user/dir на удаленный сервер:

scp –r /home/user/dir [email protected]:/root

В тех случаях, когда SSH-сервер работает на нестандартном порту, поможет опция P. Если нужно подключиться через порт 10022:

scp –P 10022 /home/user/file.tgz [email protected]:/root

Чтобы узнать какие еще модификаторы поддерживает команда, можно просто запустить scp без параметров и прочитать краткую справку.

Работаем на ОС семейства Windows

При использовании операционной системы Windows и Putty в качестве клиента, формат команды остается тот же, меняется только название исполняемого файл и используется синтаксис указания путей к файлам и каталогам Windows при указании источника или места назначения. Запускаем командную строку (cmd.exe) или PowerShell, переходим в каталог, где расположен файл pscp.exe вводим команду:

pscp.exe C:Tempfile.tgz [email protected]:/root

В случае запуска из какой-либо другой папки понадобится указать полный путь к pscp.exe. Если в каком-либо из путей присутствуют пробелы, используются двойные кавычки — “Путь к файлу”:

“C:Program FilesPuttypscp.exe” C:Tempfile.tgz [email protected]:/root

Как и в случае с scp, запустив pscp.exe без параметров, можно увидеть краткую справку по синтаксису команды и перечень поддерживаемых модификаторов.

Запуск команд на удаленном сервере через SSH-подключение

Протокол SSH, помимо работы в интерактивном режиме, поддерживает также разовый запуск команд или скриптов на удаленном сервере.

Работаем на ОС семейства Linux

Синтаксис команды:

ssh [пользователь]@[сервер] ‘[команда]’

При запросе вводим пароль указанного пользователя и в консоли получаем вывод команды, если таковой имеется.

Например, получим информацию об установленной на удаленном сервере операционной системе:

ssh [email protected] ‘uname -a’

Чтобы запустить несколько команд за одно подключение, можно использовать символ “;” в качестве разделителя. Проверим сетевые настройки и активные сетевые подключения на удаленном сервере:

ssh  [email protected] ‘ifconfig; netstat -anp tcp’

В случае, если потребуется запустить на удаленном сервере локальный файла сценария, потребуется в SSH-подключении вызвать командный интерпретатор в режиме исполнения сценария (например, bash с ключом -s), и на стандартный ввод передать ему файл сценария. Выглядеть эта конструкция будет так:

ssh  [email protected] ‘bash -s’ < /home/user/myscript.sh

В результате локальный файл /home/user/myscript.sh исполнится на удаленном сервере.

Запуск команды SSH без параметров позволит ознакомиться с краткой справкой по синтаксису и списком дополнительных модификаторов, которые позволяют расширить функциональность команды.

Работаем на ОС семейства Windows

Если мы подключаемся к удаленному серверу с компьютера, работающего на операционной системе Windows, то нам снова потребуется обратиться к терминальному клиенту Putty, в состав которого входит исполняемый файл plink.exe. Работать с этим файлом необходимо из командной строки (cmd.exe) или из PowerShell.

Для запуска команды на удаленном сервере используется следующий синтаксис:

plink.exe [сервер] -ssh -l [пользователь] “[команда]”

Проверим конфигурацию сетевых интерфейсов:

plink.exe 123.123.123.123 -ssh -l root “ifconfig”

Как и при работе с командой SSH в Linux, plink.exe позволяет использовать “;” в качестве разделителя для запуска нескольких команд:

plink.exe 123.123.123.123 -ssh -l root “ifconfig; netstat -anp tcp”

А запуск команд из локального файла можно реализовать с помощью дополнительного ключа m:

plink.exe 123.123.123.123 -ssh -l root -m “C:Tempmyscript.sh”

Запустив команду plink.exe без параметров, можно ознакомиться с краткой справкой по синтаксису и списком дополнительных модификаторов команды.

Средняя оценка: 5.0 Оценили: 2

220140 Минск ул. Домбровская, д. 9

+375 (173) 88-72-49 700 300 ООО «ИТГЛОБАЛКОМ БЕЛ»

220140 Минск ул. Домбровская, д. 9

+375 (173) 88-72-49 700 300 ООО «ИТГЛОБАЛКОМ БЕЛ» 700 300

Копирование файлов по SSH | Блог dоктора Dобрянского

При работе с *nix серверами, иногда бывает надобность быстро залить файл на сервер, или скачать c сервера.

Далеко не всегда в таких случаях есть возможность воспользоваться ftp-сервером, или например, передать файл по http (как я иногда делаю), а есть под рукой только ssh.

Но, как мы знаем, ssh протокол очень универсален, в том числе приспособлен и для передачи файлов.

Для этого есть замечательная утилита scp.

Из ее преимуществ можно выделить : простоту использования, защищенность протокола, хорошую производительность.

В Linux она по-умолчанию идет с ssh-клиентом (если я не ошибаюсь), а для Windows есть pscp, который входит в состав замечательного пакета инструментов — всеми любимого PuTTY.

Короче — меньше текста, больше примеров.

Для Linux:

— скачиваем файл на локальную машину

$ scp [email protected]:/home/user/file.tar.gz /opt

данная команда скачает файл /home/user/file.tar.gz с удаленной машины 11.22.33.44 в папку /opt локальной файловой системы.

— заливаем файл на удаленный сервер

$ scp /opt/file.tar.gz [email protected]:/home/user

думаю, принцип понятен.

Для Windows:

Открываем консоль и лезем в папку, где у нас установлен PuTTY, затем ищем там pscp.exe

— скачать файл

C:\Program Files\PuTTY>pscp.exe [email protected]:/home/user/file.tar.gz "D:\install"

аргументы по аналогии с Linux.

— заливаем файл на удаленный сервер

C:\Program Files\PuTTY>pscp.exe "D:\install\file.tar.gz" [email protected]:/home/user

Ну, в общем вы поняли…

 

Поделиться ссылкой:

ssh - Как мне перенести файл на мой сервер, используя PuTTY?

Нет способа инициировать передачу файла обратно в / из локальной Windows из сеанса SSH, открытого в окне PuTTY.

Хотя последние версии PuTTY поддерживают совместное использование соединений.

Хотя вам все еще нужно запустить совместимый клиент для передачи файлов (pscp или psftp), новый вход в систему не требуется, он автоматически (если включен) использует существующий сеанс PuTTY.

Чтобы включить общий доступ, см .:
Совместное использование SSH-соединения между инструментами PuTTY.


Альтернативный способ - использовать WinSCP, клиент SFTP/SCP с графическим интерфейсом. Пока вы просматриваете удаленный сайт, вы можете в любое время открыть терминал SSH для этого сайта, используя команду « Открыть в PuTTY» .

Смотрите Открытие сессии в PuTTY.

С помощью дополнительной настройки вы можете даже заставить PuTTY автоматически переходить в тот же каталог, который вы просматриваете с помощью WinSCP.

Смотрите Открытие PuTTY в том же каталоге.

(Я автор WinSCP)

Полный список команд для PuTTY, SSH, Unix и Linux серверов

Все известно что для работы с Unix\Linux веб-сервером, используют бесплатную программу PuTTY, которая через защищенный SSH-протокол передает команду, для работы с сервером. Как подключиться к серверу и передавать команды через командную строку читайте здесь. А здесь расписали все типы команд которые могут понадобится для работы с программой.

Операции с файлами

КомандаДействие
lsпоказать список файлов и каталогов
ls -alпоказать все файлы на сервере (даже скрытые) + размер + владельца + права на фалы + дату изменения
cd директорияперейти в указанную директорию;
cdперейти в домашний каталог
pwdпоказать текущую папку
mkdir директориясоздать папку “директория”
rm имя_файлаудалить файл с именем имя_файла
rm -r диреторияудалить папку “директория”
cp файл1 файл2скопировать файл1 в файл2
cp -r папка1 папка2скопировать папка1 в папка2
touch файлсоздать файл и с именем “файл”
cat > файлнаправить стандартный ввод в “файл”
more файлпоказать содержимое файл
head файлпоказывает первые 10 строк из файла
tail файлпоказывает последние 10 строк из файла

Работа с процессами

КомандаДействие
psпоказывает текущие процессы, которые активны
topпоказывает все процессы
kill процессубивает процесс с id “процесс”
killall процубивает все процессы с именем проц
bgпоказывает список фоновых задач, а также остановленных;
bg процесспродолжит выполнение остановленного процесса в фоне

Операции с правами доступа к файлам

КомандаДействие
chmod 755 файлзадает права 755 для файла
find /path/to/dir -type f -exec chmod 0644 {}укажет права 644 на все файлы на сервере
find /path/to/dir -type d -exec chmod 0755 {}укажет права 755 на все папки на сервере

Работа с SSH

КомандаДействие
ssh user@hostподключает к хосту “host” как “user”
ssh -p port user@hostподключает к хосту “host” на порт “port” как “user”
ssh-copy-id user@hostдобавит ключ на “host” для пользователя “user”, при этом операция входа будет происходить без логина, а через ключ

Как искать?

КомандаДействие
grep слово файлищет “слово” в “файле”
locate файлнайдет все файлы с именем “файл”

Информация о системе

КомандаДействие
dateпоказать время и дату
calпоказать календарь
uptimeпроверить аптайм (время безотканой работы)
wпокажет количество пользователей, которые в данный момент используют сервер
whoamiпокажет Ваш логин
finger юзерпокажет инфу о пользователе “юзер”
uname -aинформация про ядро
cat /proc/cpuinfoинформация про CPU
cat /proc/meminfoинформация про память
man командапокажет все о команде
dfинформация о дисках
duпокажет, сколько памяти занимает текущий каталог
freeсколько памяти используется
whereis программанайдет место расположения программы
which программаопределеяет, что “программа” будет запущена первой
vmstatпокажет загрузку процессора

Работа с системой и базами данных

КомандаДействие
apachectl restartперезапуск сервера Apache
apachectl startsslзапуск сервера Apache
apachectl stopвыключение сервера Apache
/usr/local/etc/rc.d/mysql-server restartперезапуск MySQL
mysqldump -u имя_пользователя_БД -pпароль_пользователя_БД имя_бд > /полный/путь/бд.sqlсоздать копию базы данных бд.sql
mysql -u имя_пользователя_БД -pпароль_пользователя_БД -D имя_бд < /полный/путь/бд.sqlимпортировать бд.sql в базу данных mysql на сервере
exitвыйти из системы
rebootперезапуск сервера

Работа с архивами

КомандаДействие
tar cf myfile.tar файлызапаковать “файлы” в архив myfile.tar
tar xf myfile.tarразархивировать myfile.tar
tar czf myfile.tar.gz filesархивировать с использованием Gzip (особое сжатие на сервере)
tar xzf myfile.tar.gzразархивировать Gzip-файл
tar cjf myfile.tar.bz2архивировать с использованием Gzip
tar xjf myfile.tar.bz2разархивировать Bzip2-файл
gzip myfileзапаковать myfile и переименовать в его в myfile.gz
gzip -d myfile.gzраспаковать myfile.gz в myfile

Сеть

КомандаДействие
ping хостпоказывает пинг до хоста
whois домен.компоказывает WHOIS о домене “домен.ком”
dig домен.компоказывает на каких DNS находится домен “домен.ком”
wget myfileзакачивает на компьютер файл myfile
wget -c fileесли закачка была остановлена, то эта команда может ее продолжить
wget https://www.mysite.com/myfile.zipзагрузит файл из интернета (по адресу https://www.mysite.com/myfile.zip) в текущую директорию на сервере

Клавиши

КомандаДействие
Ctrl+Cпрекратить текущую команду
Ctrl+Dвыйти из системы\сменить пользоваателя (вместо этого можно использовать команду exit)
Ctrl+Uудаляет строку
Ctrl+Zостановка текущей команды и продолжить с fg или bg
Ctrl+Wудалить слово в текущей строке
!!повторяет последнюю команду

Передача файла через Putty - qaru. Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании
.

Как получить файлы с помощью PuTTY | Small Business

Дэйв Уилсон Обновлено 16 января 2019 г.

Запустите программу PuTTY SSH (Secure Shell), когда вам нужно установить безопасное, зашифрованное сетевое соединение с удаленным компьютером Unix / Linux, на котором хранятся требуемые файлы. Обратите внимание, что программа PuTTY сама по себе не копирует файлы, а только устанавливает соединение между вашим компьютером и удаленным компьютером. Для получения файлов используйте связанную программу pscp.exe, входящую в состав PuTTY.Запустите исполняемый файл pscp.exe в командной строке Windows, чтобы быстро скопировать файлы с удаленного ПК на жесткий диск локального компьютера.

Linux и Windows

Программа, подобная PuTTY, необходима для облегчения работы между компьютерами на базе Microsoft Windows и компьютерами, работающими под управлением «разновидностей» Linux, таких как Fedora, Ubuntu и Debian. Программы, работающие в Windows, не работают в Linux, и наоборот. PuTTY служит «мостом» между двумя системами, позволяя вам получить доступ к ресурсам Linux при использовании ПК с Windows.

PuTTY в ваших руках

PuTTY не является стандартной частью Microsoft Windows; чтобы использовать его, вам сначала нужно его скачать. Он доступен бесплатно для большинства пользователей. Перейдите на сайт www.putty.org, щелкните ссылку для загрузки и установите его, как и другое программное обеспечение Windows.

Откройте командную строку Windows

Нажмите кнопку Пуск на компьютере с Windows и щелкните поле Выполнить или Поиск . Введите cmd в поле, нажмите клавишу Enter , появится окно командной строки.В Windows 10 командная строка отображается в списке результатов поиска. Щелкните его, чтобы открыть командную строку.

Найти программу pscp

Введите cd / path_to_pscp / в командной строке, за исключением замены / path_to_pscp / на точный путь к файлу «pscp.exe». Нажмите клавишу Enter .

Запустить безопасное копирование (pscp)

Введите pscp.exe имя пользователя @ xxxx: / file_path / filename c: \ directory \ filename в командной строке, за исключением замены «username» на имя учетной записи, имеющей разрешения на доступ удаленный компьютер через SSH, замените «x.xxx »на IP-адрес или имя хоста удаленного SSH-компьютера, замените« file_path »на путь к каталогу файла, который вы хотите получить, замените« filename »на фактическое имя файла, который вы хотите передать, и замените« directory »С путем и именем каталога, в котором вы хотите сохранить файл на локальном компьютере.

Передача файлов по SSH

Нажмите клавишу Enter . Введите пароль учетной записи, авторизованной для подключения к удаленному компьютеру SSH, если будет предложено, и нажмите . Введите еще раз.Файл будет передан и сохранен на локальный компьютер.

WinSCP - альтернатива PuTTY

Другая бесплатная программа, WinSCP, также позволяет передавать файлы почти так же, как PuTTY. В отличие от командной строки PuTTY, в которой используются вводимые вами команды, WinSCP имеет удобный и простой в использовании графический интерфейс пользователя (GUI). WinSCP отображает два списка файлов: один в текущем каталоге на вашем ПК с Windows, а другой в удаленном каталоге Linux, в который вы вошли. Вы выбираете файлы, которые хотите передать, а затем перетаскиваете их в список другого каталога.

.

Putty: использование pscp / plink для автоматической передачи файлов и выполнения команд с хоста Windows - Фабиан Ли: Software Architect

Набор Putty содержит несколько исполняемых файлов помимо основного приложения. Он также имеет pscp.exe, клиент scp командной строки, и plink.exe, который является клиентом ssh командной строки.

Эти клиенты могут использоваться для передачи файлов и выполнения команд на хостах в консольном режиме, что идеально подходит для автоматизации повторяющихся задач.

шт.exe для передачи файлов

pscp.exe принимает параметры, очень похожие на scp на базе Linux.

> pscp.exe -pw <пароль> <локальный файл> <пользователь> @ <хост>:  

Например, если вы перемещали текстовый файл с именем README.txt в / tmp удаленного хоста с именем «trusty1» в качестве пользователя «myuser», команда могла бы выглядеть следующим образом:

> pscp.exe -pw myP4ss README.txt myuser @ trusty1: / tmp /. 

При выполнении этой команды появится интерактивная подсказка «Сохранить ключ в кеше? (г / н) ».Вам придется нажать либо y / n, прежде чем двигаться дальше, и это то, чего хотят разработчики Putty из соображений безопасности, но это также затрудняет автоматизацию.

Однако есть способ обойти это. Если вы введете ту же команду, но передадите «y» на стандартный ввод, он ответит за вас.

> cmd.exe / c echo y | pscp.exe -pw myP4ss README.txt myuser @ trusty1: / tmp /. 

plink.exe для команд ssh

plink может подключаться к хосту по ssh и запускать набор команд, используя следующий синтаксис:

> плинк.exe -ssh -t -pw <пароль> <пользователь> @ <хост> -m <скрипт> 

Допустимые команды включают все, что вы можете ввести с обычного клиента ssh.

Если у вас есть текстовый файл с именем «plink-script.txt» с содержимым ниже, он распечатает имя хоста, сообщит вам имя текущего каталога, а затем перечислит файлы в / tmp.

 имя хоста pwd ls / tmp 

Тогда plink может быть вызван как:

> plink.exe -ssh -t -pw myP4ss myuser @ trusty1 -m plink-script.txt 

Но, как и в случае с pscp, если ключ хоста еще не был кэширован в реестре, вы получите интерактивный запрос «Сохранить ключ в кеше? (y / n) », что не подходит для пакетного сценария.

И еще раз, способ обойти это - передать «y» на стандартный ввод, что дает команду:

> cmd.exe / c echo y | plink.exe -ssh -t -pw myP4ss myuser @ trusty1 -m plink-script.txt 

plink и sudo с запросом пароля

В приведенном выше примере мы имели дело с простыми командами, которые не требовали ввода и повышения привилегий с помощью sudo (hostname, pwd).Но часто команды, которые мы хотим запускать в пакетных процессах, требуют sudo, который вызывает интерактивный запрос пароля.

Я тестировал несколько целевых хостов, и иногда мне удавалось повторить пароль для sudo из файла сценария, но в других случаях запрос пароля для sudo должен предоставляться в консоли клиента ssh.

Подход 1: пароль Sudo выводится эхом и встраивается в скрипт plink

Убедитесь, что вы вызываете plink с «-t», чтобы настроить tty.Затем выполните sudo в оболочке и введите пароль в стандартный ввод перед запуском нужной команды с помощью sudo.

 / bin / echo -e "myP4ss \ n" | sudo -S / bin / bash sudo apt-get update 

Или вы можете ввести пароль напрямую в команду, которую хотите запустить как sudo.

 / bin / echo -e "myP4ss \ n" | sudo apt-get update 

Подход 2: эхо-пароль на локальной консоли

В других случаях я замечал, что подход №1 не работает, и вы должны повторить пароль sudo на стороне клиента.Чтобы это работало, вы должны сначала создать файл, содержащий две строки, первая строка содержит пароль, а затем новую строку с пустой второй строкой (назовем ее sudopass.txt).

Затем при вызове plink отправьте содержимое локального файла sudopass.txt на stdin:

 $ введите sudopass.txt | plink.exe -ssh -t -pw myP4ss myuser @ trusty1 -m plink-script.txt 

ССЫЛКИ

https://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter7.html#plink

https: // www.ssh.com/ssh/putty/putty-manuals/0.68/Chapter5.html

https://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter5.html#pscp

https://superuser.com/questions/971345/is-there-any-way-to-automatically-accept-ssh-host-keys-even-when-keys-are-change (причина, по которой прием хоста не отключен)

https://git.tartarus.org/?p=simon/putty.git;a=blob;f=contrib/kh3reg.py;hb=HEAD (скрипт для добавления известных_хостов в реестр)

https://forums.ni.com/t5/LabVIEW/How-to-automatically-accept-ssh-host-key/td-p/1223974 (эхо - да, чтобы автоматизировать принятие)

https: // stackoverflow.com / questions / 20248009 / execute-sudo-command-on-linux-from-plink-exewindows (эхо пароля для sudo)

ПРИМЕЧАНИЯ

Расположение сохраненных ключей хоста в реестре: \\ HKCU \ Software \ SimonTatham \ PuTTY \ SshHostKeys

.

putty - перенос файлов из Linux в Windows с помощью pscp или другого инструмента

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

Basic SSH Commands - Список наиболее часто используемых команд Putty в Linux

Базовые команды SSH (PuTTY) помогут вам ориентироваться и эффективно работать с файлами в терминале Linux. В этой статье мы составили список команд PuTTY, их параметры и способы использования.

Содержание

Что такое команды SSH (PuTTY)?

Протокол Secure Shell (SSH) позволяет пользователю подключаться к удаленному компьютеру с одного компьютера.Это общение происходит посредством защищенного процесса шифрования. Такое соединение можно использовать для передачи файлов и выполнения других удаленных команд. Протокол SSH следует модели клиент-сервер, в которой соединение устанавливается клиентом SSH с сервером SSH. Клиент SSH использует криптографию с открытым ключом, чтобы гарантировать безопасное соединение с сервером SSH. После установки соединения клиент SSH также гарантирует, что конфиденциальность и целостность данных поддерживаются по всей сети с помощью симметричного шифрования, асимметричного шифрования и алгоритмов хеширования.

Изображение, показывающее основные команды ssh

Модель команд SSH или команд PuTTY на основе клиент-сервер позволяет аутентифицировать две удаленно расположенные системы при шифровании данных, которые проходят через них. По умолчанию SSH работает на TCP-порту 22, но при необходимости его можно изменить. Клиент подключается к серверу, выполняя установление связи TCP с сервером, которое предназначено для проверки того, совпадает ли информация, предоставленная пользователем, с предыдущей записью информации, которая хранится в файле хранилища ключей RSA.Перед установкой соединения и клиент, и сервер должны согласовать стандарты шифрования для обеспечения безопасной и защищенной связи, а затем пользователь должен выполнить проверку аутентификации.


Теперь, чтобы использовать команды PuTTY, требуется эмулятор терминала, который соединяет клиента с сервером. PuTTY - один из таких эмуляторов с открытым исходным кодом, который можно загрузить бесплатно. Кроме того, в Windows нет предустановленного SSH-сервера или клиента. Итак, предварительные условия для использования команд SSH (PuTTY) следующие:

  • Сервер на базе Linux, к которому вы будете подключаться.
  • PuTTY для облегчения процесса подключения.
  • IP-адрес сервера, который действует как местоположение сервера, к которому вы пытаетесь подключиться.
  • Имя пользователя и пароль, чтобы убедиться, что вы авторизованы для подключения к серверу.

Подключение через PuTTY

  • Чтобы подключиться к серверу, введите IP-адрес сервера в поле Host Name или IP-адрес, как показано на изображении, и оставьте порт как 22, а тип подключения как SSH.Вы также можете сохранить конфигурацию для дальнейшего использования.
  • Теперь откроется терминал PuTTY с запросом имени пользователя и пароля для подключения.
  • Вы войдете на сервер, к которому вы пытаетесь установить соединение.

Если вы используете операционную систему на базе Linux или Mac, вам не нужен такой клиент, как PuTTY, поскольку в Linux есть собственный терминал SSH. Вам просто нужно использовать следующую команду для подключения к серверу:

ssh пользователь @ serverip

Эта команда подключит вас к серверу с IP-адресом «serverip».«Пользователь» - это имя пользователя, которому разрешено подключаться к серверу.

При вводе вышеуказанной команды вам будет предложено ввести пароль.

Чтобы закрыть соединение с удаленным сервером, просто введите «exit» в окне терминала. Это вернет вас на локальный компьютер.

Список основных команд PuTTY

Теперь, чтобы управлять сервером Linux и работать на нем, нужно освоить основных 17 команд SSH , чтобы максимально использовать их.Давайте рассмотрим некоторые из основных команд SSH-связи.

  1. pwd : Как только вы войдете на сервер, в первую очередь необходимо проверить текущее местоположение, в котором вы находитесь. Об этом позаботится команда «pwd». Просто введите «pwd» и нажмите Enter.
  2. cd : Теперь вы находитесь в одном месте и хотите перейти к другому. Введите «cd / location», и вы попадете в это место. Это означает «изменить каталог».
    • «cd.» заставляет вас оставаться в том же каталоге, в котором вы находитесь.
    • «cd ..» заставляет вас переместиться на один каталог назад. Например, вы находитесь в «/ home / task / files», набираете «cd ..» и нажимаете Enter. Это переместит вас в «дом / задание».
    • «cd -» заставляет вас перейти в предыдущее место, где вы были. Например, вы были в «/ home», но перешли в «/ dir». Набрав команду «cd-», вы вернетесь в «/ home».
    • «cd ~» перенесет вас в ваш домашний каталог, а «cd /» перенесет вас в корневой каталог.
  3. mkdir : это означает make каталог и, как следует из названия, он помогает вам создать новый каталог с именем, которое вы выбираете в текущем пути к каталогу. Синтаксис: mkdir directoryName
  4. ls : обозначает команду списка, которая используется для отображения всего содержимого папки или каталога. «Ls / home / folder» зарегистрирует все содержимое в каталоге «folder».
    • «ls -a» покажет вам все файлы в каталоге ».
    • «ls -h» покажет файлы, а также их размеры.
    • «ls -r» рекурсивно покажет подкаталоги каталога
    • «ls -alh» покажет вам более подробную информацию о файлах, содержащихся в папке. Подробности включают разрешения пользователя, дату последнего обновления, дату создания, время и предоставленные ему разрешения, такие как чтение, запись и обновление.
  5. cp : Это означает команду копирования, которая в основном копирует файл в Linux.Синтаксис: cp filename.extension /dir/filename.extension Приведенная выше команда скопирует файл «filename.extension» (источник) и сохранит его в папку / dir (место назначения) с тем же именем файла.
    • «cp -r» копирует все содержимое папки.
    • Чтобы скопировать и переименовать, используйте команду «cp filename.extension /dir/filename1.extension». Файл «filename.extension» будет скопирован в «filename1.extension, который находится в / dir».
    • «cp -f» заставит процесс копирования, удалив целевой файл, если файл с таким же именем окажется там в месте назначения.
    • «cp -i» выдаст предупреждающее сообщение перед тем, как фактически продолжить процесс копирования.
    • «cp -u» обновит файл в папке назначения, только если файлы имеют другое содержимое.
    • «cp -n» сначала проверит, существует ли файл, и если он существует, он просто не будет копироваться. Он не перезаписывает файл.
    • «cp -a» архивирует файл.
  6. mv : команда перемещения перемещает файл из одного места в другое вместо его копирования, не оставляя никаких следов файла в исходной папке.Синтаксис: mv filename.extension /dir/filename.extension.
    • Чтобы переместить и переименовать файл, используйте команду «mv filename.extension /dir/filename1.extension».
    • Вы также можете переместить файл на одну папку назад, используя команду «mv filename / ..».
  7. touch : Используя команду «touch», вы можете создать в текущем каталоге новый файл с любым расширением, например text, php, html и т.д. Вы также можете создать файл без какого-либо расширения.Синтаксис: touch filename.extension
  8. rm : команда remove позволяет удалить файл с сервера. Синтаксис: rm filename.extension
    • «rm * имя папки» удалит все файлы или содержимое в каталоге.
    • «rmdir» удалит весь каталог или папку.
    • «rm -r имя папки» удалит папку, а также папки внутри нее.
  9. cat : эта команда используется для отображения содержимого файла на экране.Он копирует стандартный ввод в стандартный вывод. Эта команда также позволяет прокручивать, если отображаемый текст не умещается полностью на экране. Синтаксис: cat filename.extension
    • Команда cat также используется для объединения двух файлов и отображения их содержимого как одного.
      Синтаксис: cat file1.txt file2.txt> mergedfile.txt
      «>» - это символ перенаправления вывода
    • Команду cat также можно использовать для создания нового файла.
      Синтаксис: cat> filename.добавочный
  10. head : команда head позволяет прочитать первые десять строк содержимого внутри файла. Синтаксис: заголовок имя файла.расширение.
    • Вы также можете указать имена более чем одного файла в команде head, и она покажет первые десять строк каждого файла отдельно.
      Синтаксис: head / dir / file1 / var / file2
    • Вы также можете изменить количество строк, которые должны отображаться на экране, а не первые десять строк по умолчанию.
      Синтаксис: head -n15 / temp / filename
      Приведенная выше команда отобразит первые пятнадцать строк содержимого из данного файла.
  11. tail : Так же, как команда head дает вам первые десять строк, команда tail дает вам последние десять строк содержимого из файла. Синтаксис: tail filename.extension
    • Кроме того, вы можете указать несколько имен файлов для команды tail, чтобы она показывала последние десять строк из каждого из упомянутых файлов.
      Синтаксис: tail / dir / file1 / dir / file2
    • Подобно команде head, команда tail также позволяет вам изменить количество строк, которые вы хотите отобразить, кроме номера по умолчанию.
      Синтаксис: tail -n15 / temp / filename
      Приведенная выше команда отобразит последние пятнадцать строк содержимого из данного файла.
  12. zip : Утилита сжатия и упаковки файлов в unix, команда zip сжимает размер файла.Он также помещает один или несколько файлов в один zip-архив. Синтаксис: zip -r имя папки. Zip имя папки.
    • Используя команду «zip -d filename.zip filename», вы можете удалить файл из zip-архива.
    • Используя команду «zip -u filename.zip filename», можно обновить указанный список файлов в zip-архиве.
    • «zip -m filename.zip filename» удаляет исходный файл после создания его zip-архива.
  13. unzip : команда unzip используется для распаковки файла.Синтаксис: unzip filename.zip
    • Вы можете распаковать несколько файлов одновременно, используя команду «unzip file1.zip file2.zip file3.zip».
    • Вы также можете исключить один или несколько файлов из распаковки.
      Синтаксис: unzip filename.zip -x excludedfile.zip
      Приведенная выше команда извлечет все файлы из сжатого архива, кроме excludefile.zip.
  14. tar : обозначает ленточный архив. Также используется для сжатия и распаковки папок.Синтаксис: Команда для сжатия, создающая архив для «папки» .tar -czvf folder1.tar.gz folder Команда для распаковки
    tar -xvf folder1.tar.gz
  15. chmod: chmod обозначает режим изменения. Используя эту команду, вы можете изменить права доступа к файлу или каталогу. Эти разрешения могут быть представлены цифрами от 0 до 7 или буквенно-цифровыми символами. 4 представляет разрешение на чтение, 2 представляет разрешение на запись, 1 представляет разрешение на выполнение и 0 означает отсутствие разрешения.Синтаксис: chmod 754 filename
    • В приведенной выше команде 7,5,4 представляет разрешение для пользователя, группы и других, где 7 - это комбинация 4,2 и 1, что указывает, что пользователю даны все три разрешения.
    • Аналогично, 5 - это комбинация 4, 0 и 1, которая указывает на чтение, отсутствие записи и разрешение на выполнение.
    • Кроме того, 4 - это комбинация 4, 0 и 0, которая указывает на чтение, отсутствие записи и отсутствие разрешения на выполнение.
    • «chmod -r» позволяет вам изменить права доступа к папке и всем файлам внутри нее.
  16. grep : Если вы хотите найти определенную строку внутри файла или папки, grep - это то, что вам нужно. Он возвращает всю строку, содержащую фразу, если находит идеальное совпадение.
    Синтаксис: grep «строка» имя файла
    • Параметр i в команде «grep -i« строка »имя_файла» позволяет искать строку в файле без учета регистра.
    • Вы можете подсчитать количество появлений строки в данном файле, используя команду «grep -c« string »filename».
    • Вы можете отобразить имя файла, содержащее определенный шаблон или строку, используя команду «grep -l« string »*».
    • Вы также можете отобразить номер строки вместе с результатом, используя команду «grep -n« string »filename».
  17. find : эта команда ищет файл внутри папки.Файлы с определенными критериями также можно отфильтровать с помощью этой команды. Вы можете запустить команду find, чтобы найти файлы по разрешениям, пользователям, группам, типу файла, размеру и т. Д. Синтаксис: find. -name filename.extension Вышеупомянутая команда найдет все файлы с именем «filename.extension» в текущем каталоге.
    • Если вы хотите найти файл в каком-либо каталоге, используйте команду «find / directory -name filename.extension».
    • Вы можете найти любой тип файла, например файл php, используя команду «find.введите f -name filename.php ».
  18. vi : Команда vi позволяет войти в текстовый редактор. Синтаксис: vi имя файла

    Приведенная выше команда откроет файл на экране, и если файл не существует, он создаст новый с тем же название.
    • Клавиша выхода позволяет вам отменить любую команду, которую вы запустили в режиме редактора vi.
    • Чтобы выйти из редактора vi, введите «: q», только если вы не внесли никаких изменений в файл.
    • Если вы хотите отменить изменения, внесенные в файл, введите «: q!» выйти.

Итак, это некоторые из базовых команд SSH (PuTTY) , которые очень удобны для пользователя для управления основными функциями и обработки файлов и папок на веб-сервере Linux.

.Окна

. Можно ли отправить содержимое текстового файла через PuTTY через последовательный порт?

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
.

Смотрите также