Установка программ через ssh

Безопасный шелл (SSH) — это сетевой протокол, обеспечивающий функции шелла на удалённой машине через безопасный канал. SSH несёт в себе различные улучшения безопасности, среди них аутентификация пользователя/хоста, шифрование данных и целостность данных, благодаря чему невозможны популярные атаки вроде подслушивания (eavesdropping), DNS/IP spoofing, подделка данных (data forgery), перехват соединения (connection hijacking) и т. д. Пользователям ftp, telnet или rlogin, которые используют протокол, передающий данные в виде открытого текста, крайне рекомендуется переключиться на SSH.

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

  • OpenSSH сервер: sshd (SSH daemon)
  • OpenSSH клиент: scp (безопасное удалённое копирование), sftp (безопасная передача файлов), slogin/ssh (безопасный удалённый вход), ssh-add (дополнение закрытого ключа), ssh-agent (агент аутентификации), ssh-keygen (управление ключами аутентификации).

Если вы хотите установить сервер/клиент OpenSSH и настроить автоматический запуск сервера OpenSSH, следуйте следующим инструкциям, которые различаются в зависимости от дистрибутива.

Скачивание и установка программ для работы с сервером по ssh

Debian, Ubuntu или Linux Mint

$ sudo apt-get install openssh-server openssh-client

В системах основанных на Debian, сразу после установки, OpenSSH будет запускаться автоматически при загрузке. Если по каким либо причинам сервер OpenSSH не запускается автоматически при запуске системы, вы можете выполнить следущую команду для однозначного добавления ssh в загрузку при старте системы.

$ sudo update-rc.d ssh defaults
Fedora или CentOS/RHEL 7
$ sudo yum -y install openssh-server openssh-clients $ sudo systemctl start sshd service $ sudo systemctl enable sshd.service
CentOS/RHEL 6
$ sudo yum -y install openssh-server openssh-clients $ sudo service sshd start $ sudo chkconfig sshd on
Arch Linux
$ sudo pacman -Sy openssh $ sudo systemctl start sshd service $ sudo systemctl enable sshd.service

Настройка сервера OpenSSH

Если вы хотите настроить сервер OpenSSH, вы можете редактировать общесистемный файл конфигурации размещённый в /etc/ssh/sshd_config.

Есть пара опций OpenSSH, которые могут заинтересовать:

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

ListenAddress 192.168.1.1

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

HostKey /etc/ssh/ssh_host_key
Оция HostKey определяет гда размещён персональный хост ключ.

Как подключиться к серверу через SSH с помощью программы Putty через логин/пароль или ключ


PermitRootLogin no
Оция PermitRootLogin – может ли root входить в систему посредством ssh.
AllowUsers alice bob

Используя опцию AllowUsers вы можете выборочно отключить службу ssh для определённых пользователей Linux. Можно задать множество пользователей, разделяя их пробелами.

После того, как был изменён /etc/ssh/sshd_config , убедитесь, что перезапустили службу ssh.

Для перезапуска OpenSSH на Debian, Ubuntu или Linux Mint:

$ sudo /etc/init.d/ssh restart
Для перезапуска OpenSSH на Fedora, CentOS/RHEL 7 или Arch Linux:
$ sudo systemctl restart sshd.service
Для перезапуска OpenSSH на CentOS/RHEL 6:
$ sudo service sshd restart

Как подключиться к SSH

Подключение к SSH из Linux

Пользователям Linux не нужно устанавливать дополнительных программ.

Подключение к SSH из Windows

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

Ссылка скрыта от гостей

Cygwin – это не просто клиент SSH. Это мощный комбайн, в котором поддерживаются многие команды Linux. Например, в Cygwin очень легко создавать SSL-сертификаты (точно также, как и в Linux). В Windows для создания самоподписанных сертификатов нужно поплясать с бубном. В Cygwin очень удобно пользоваться cURL (не нужно ничего устанавливать отдельно) и т. д. Те, кому не хватает на Windows командной строки и программ Linux, в лице Cygwin найдут себе отдушину.

Установка Cygwin проста. Переходим на

Ссылка скрыта от гостей
и скачиваем
Ссылка скрыта от гостей
Ссылка скрыта от гостей

Скачается крошечный файл — это установщик. Установщик графический. Хоть он и содержит большое количество опций, все они довольно простые и многие знакомы по другим графическим установщикам. Если что-то непонятно, просто нажимайте «Далее». Пожалуй, только следующее окно может привести в замешательство:

28789

Здесь представленные все доступные для установки элементы. Нам не нужно прямо сейчас разбираться в них. Поскольку самые востребованные уже помечены для установки. А если чего-то в будущем будет не хватать, то легко можно доустановить нужное.

Соединение SSH (общее для Linux и Windows)

Пользователи Linux открывают консоль, пользователи Windows печатают в Cygwin.

  • IP или имя хоста
  • номер порта
  • имя пользователя
  • пароль пользователя

ssh 192.168.1.36
Я вижу следующее
[email protected] ~ $ ssh 192.168.1.36 The authenticity of host ‘192.168.1.36 (192.168.1.36)’ can’t be established. ECDSA key fingerprint is SHA256:sIxZeSuiivoEQ00RXAQHxylxuEA8SC5r/YPhL8wfp8s. Are you sure you want to continue connecting (yes/no)?

Поскольку я подключаюсь к хосту первый раз, то это незнакомый хост. У меня спрашивают, хочу ли я продолжить. Я набираю yes:

Warning: Permanently added ‘192.168.1.36’ (ECDSA) to the list of known hosts. [email protected]’s password:

28790

Приглашение [email protected] сменилось приглашением [email protected] . Это означает, что мы уже на удалённой машине, т. е. у нас уже произошло соединение. Если нужно указать порт (если он отличается от стандартного), то порт нужно указывать после ключа -p. Например так:

ssh [email protected] -p 10456
После подключения нас встречает примерно такое приветствие:
Linux mint 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Tue Jun 16 15:32:25 2015 from 192.168.1.35

Из него следует, что удалённая машина — это Linux Mint, с ядром 3.16, 64-битная версия. Также важная информация о времени последнего входа и IP адресе с которого произошло соединение. Если время и IP вам незнакомы, а вы являетесь единственным пользователем, то ваша система скомпрометирована и нужно принимать соответствующие меры.

Наберём несколько команд, чтобы убедиться где мы и кто мы: pwd[/B], [B]uname -a и т. д.:

28791

Чтобы закончить сессию (отключиться), наберите

Читайте также:
Программа чтобы заспамить номер телефона

exit

Или нажмите Ctrl+D .

Вход в SSH без ввода пароля

Во-первых, это просто удобнее. Во-вторых, это безопаснее.

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

Если вы успели залогиниться на удалённой системе, разлогинтесь. После этого наберите

ssh-keygen -t rsa

28792

У нас спрашивают имя файла, не нужно ничего вводить, будет использовано имя по умолчанию. Также спрашивается пароль. Я пароль не ввожу.

Теперь на удалённой машине нам нужно создать каталог .ssh. Про выполнение команда на удалённой машине ещё будет рассказано ниже. Пока просто копируете команду, не забывая поменять IP адрес и имя пользователя на свои:

ssh [email protected] mkdir .ssh

Теперь нам нужно скопировать содержимое файла id_rsa.pub на удалённую машину. Сделать это очень просто (не забываем менять данные на свои):

cat .ssh/id_rsa.pub | ssh [email protected] ‘cat >> .ssh/authorized_keys’

28793

Теперь просто логинимся и больше никакой пароль у нас не спрашивают. И так теперь будет всегда.

Выполнение команд на удалённом сервере без создания сессии шелла

Кроме открытия сессии шелла на удалённой системе, ssh также позволяет выполнять отдельные команды на удалённой системе. Например, для выполнения команды tree на удалённом хосте с именем remote-sys и отображением результатов на локальной системе, нужно сделать так:

ssh remote-sys tree
Мой реальный пример:
ssh [email protected] tree

28794

Используя эту технику, можно делать интересные вещи, вроде такой, как выполнение команды ls на удалённой системе и перенаправление вывода в файл на локальной системе:

ssh remote-sys ‘ls *’ > dirlist.txt
Реальный пример:
ssh [email protected] ‘ls *’ > dirlist.txt cat dirlist.txt

28795

Обратите внимание на одиночные кавычки в вышеприведённой команде. Это сделано потому, что мы не хотим, чтобы раскрытие пути было выполнено на локальной машине; поскольку нам нужно это выполнение на удалённой системе. Также если мы хотим стандартный вывод перенаправить в файл на удалённой машине, мы можем поместить оператор редиректа и имя файла внутри одиночных кавычек:

ssh remote-sys ‘ls * > dirlist.txt’

Передача стандартного вывода с локальной машины на удалённую по ssh

Не менее интересный вариант выполнения команд приведён немного выше:

cat .ssh/id_rsa.pub | ssh [email protected] ‘cat >> .ssh/authorized_keys’

  • Команда cat построчно считывает и отображает содержимое файла .ssh/id_rsa.pub , расположенного на локальной машине.
  • | (труба) передаёт то, что должно было бы появиться в стандартном выводе, другой команде.
  • Вместо команды, которая должна была бы обрабатывать передаваемые ей строки, происходит соединение к удалённой системе ( ssh [email protected] ).
  • На удалённую систему приходят строки, для которых предусмотрена команда cat >> .ssh/authorized_keys . Т.е. содержимое стандартного вывода построчно записывается в файл .ssh/authorized_keys, находящийся на удалённой машине.

Для следующего фокуса нужно два компьютера с системой Linux. К сожалению, даже Cygwin с этим трюком не справляется. Причём оба Linux’а должны быть с графическим пользовательским интерфейсом.

Туннелирование с SSH

Среди всего прочего, что происходит когда устанавливается соединение с удалённым хостом через SSH, это создание зашифрованного туннеля, который образуется между локальной и удалённой системами. Обычно, этот туннель используется для того, чтобы набранные на локальной машине команды безопасно были переданы удалённой машине, а результат, также безопасно, прислан обратно.

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

Пожалуй самая часто используемая из этих функций — это возможность транслировать трафик систем X Window. На системе с запущенным X сервером (это машины, которые имеют графический пользовательский интерфейс) возможно запустить программу X клиента (графическое приложение) на удалённой системе и видеть результаты её работы на локальной системе. Сделать это просто. Например, я хочу подключиться к удалённому хосту remote-sys и на нём я хочу запустить программу xload. При этом видеть графический вывод этой программы я смогу на локальном компьютере. Делается это так:

ssh -X remote-sys xload
Реальный пример:
ssh -X [email protected] gedit

Т.е. SSH запускается с ключом -X. А затем просто запускается программа. Посмотрите на скриншот.

28796

Я нахожусь в Kali Linux. Я успешно логинюсь к удалённому компьютеру по SSH. После этого я запустил программу gedit. Этой программы, может быть, даже нет на Kali Linux, но она точно есть в Linux Mint, к которой я и подключился. Результат работы этой программы я могу видеть на экране так, будто бы программа запущена локально.

Но, повторюсь, я хочу, чтобы вы это поняли, запущенной программы gedit на локальном компьютере нет. Если я захочу сохранить результат работы gedit (или любой другой программы, открытой таким образом), то окажется, что она работает в окружении удалённого компьютера, видит его файловую систему и т. д. Это удобно, когда вы хотите настроить удалённый компьютер используя графический интерфейс.

О том, как передать изображение со всего рабочего стола вы узнаете в этой же статье далее, в секции «Как настроить VNC через SSH».

На некоторых системах для этого «фокуса» нужно использовать опцию “ -Y ” вместо опции “ -X ”.

Копирование с/на удалённый компьютер (scp и sftp)

Пакет OpenSSH также включает две программы, которые использует зашифрованный туннель SSH для копирования файлов по сети. Первая программа – scp(«безопасное копирование») – используется чаще, как и схожая с ней программа cp для копирования файлов. Наиболее заметная разница в том, что источником файла может быть удалённый хост после которого следует двоеточие и расположение файла. Например, если мы хотим скопировать документ, названный document.txt из нашей домашней директории на удалённую систему remote-sys в текущей рабочей директории на нашей локальной системе мы можем сделать так:

Реальный пример:

# удалим файл на локальной машине, если он есть rm dirlist.txt # создадим файл на удалённой машине ssh [email protected] ‘ls * > dirlist.txt’ # проверим его наличие ssh [email protected] ‘ls -l’ # скопируем его на локальную машину scp [email protected]:dirlist.txt . # проверим его содержимое cat dirlist.txt

28797

Для копирования файла с локальной машины на удалённую:

scp локальный_файл remote-sys:.
Реальный пример
# создаём новый файл touch nfile.txt # отправляем файл scp nfile.txt [email protected]:. nfile.txt 100% 0 0.0KB/s 00:00 # проверяем наличие файла на удалённой машине ssh [email protected] ‘ls -l’

  • nfile.txt — имя файла,
  • [email protected] — имя пользователя и удалённый хост,
  • . (точка) означает, что файл нужно скопировать в текущую рабочую директорию на удалённом сервере, при этом имя файла останется прежним, т. е. nfile.txt
Читайте также:
Программы которые применяются для решения задач в различных областях науки

Для копирования файла с B на A когда залогинены в B:
scp /path/to/file [email protected]:/path/to/destination
Копирование файла с B на A когда залогинены в A:
scp [email protected]:/path/to/file /path/to/destination

Вторая программа для копирования файлов через SSH — это sftp. Как следует из её имени, она является безопасным заменителем ftp программ. sftp работает как и оригинальная ftp программа. Тем не менее, вместо отправки чистым текстом она использует зашифрованный туннель SSH. Важным преимуществом sftp перед ftp является то, что для неё не требуется запущенный FTP сервер на удалённом хосте.

Для неё требуется только SSH сервер. Это означает, что любая удалённая машина, которая подключена через SSH клиент может также быть использована как FTP-подобный сервер. Вот пример сессии:

[email protected] ~ $ sftp [email protected] Connected to 192.168.1.36. sftp> ls dirlist.txt newfile.txt nfile.txt temp Видео Документы Загрузки Изображения Музыка Общедоступные Рабочий стол Шаблоны sftp> lls dirlist.txt nfile.txt sftp> ls temp temp/TakeMeHome sftp> cd temp/ sftp> get TakeMeHome Fetching /home/mial/temp/TakeMeHome to TakeMeHome sftp> bye

SFTP протокол поддерживается многими графическими файловыми менеджерами, которые можно найти в дистрибутивах Linux. Используя как Nautilus (GNOME), так и Konqueror (KDE), мы можем вводить URI (ссылки) начинающиеся на sftp:// в строку перехода и работать с файлами, расположенными на удалённой системе с запущенным SSH сервером.

Источник: codeby.net

Команды linux shell (putty) ssh шпаргалка

— вывод списка всех файлов и папок в текущей директории отсортированных по алфавиту с отображением размеров директорий и файлов.

cd dirname

— сменить директорию на dirname (cd — change directory)

— смена директории на домашний каталог, а также команда без «~» (тильды) делает то же самое в большинстве шелов

— показать текущий каталог

— показать каталог для текущего пользователя

mkdir dir

— создать каталог dir

rm file
rm -r dir

— удалить каталог dir

rm -f file

— удалить форсированно file

rm -rf dir

— удалить форсированно каталог dir * (без вопросов удалит каталог и все что в нем хранится)

find /path/to/dir -name «test» -type d -exec rm -rf {} ;

— удалить форсированно каталог test (без вопросов удалит каталог test и все что в нем хранится)

cp file1 file2 — скопировать file1 в file2

cp -r dir1 dir2 — скопировать dir1 в dir2; так же создаст каталог dir2, если его не существует

cp -rp dir1 dir2 — скопировать dir1 в dir2; так же создаст каталог dir2, если его не существует и оставит все прежние права старой папки

mv file1 file2 — переименовать или переместить file1 в file2. если file2 существующий каталог — переместить file1 в каталог file2

mv -f /dir /var/dir2/— переместить dir в /var/dir2/dir c перезаписью всего что внутри /var/dir2/

ln -s file link — создать символическую ссылку link к файлу file (Create a symbolic link to file)
Примеры:

ln -s /path/to/file /path/to/symlink
ln -s EXISTING_FILE SYMLINK_FILE

touch file — создать file

cat > file — направить стандартный ввод в file

more file — вывести содержимое file

head file — вывести первые 10 строк file

tail file — вывести последние 10 строк file

tail -f file — вывести содержимое file по мере роста, начинает с последних 10 строк

view file — вывести файл на экран

Локальная/удаленная синхронизация файлов (rsync)
Копировать (синхронизировать) все содержимое из папки folder1 в папку cpfolder2, опция —ignore-existing предлагает игнорировать уже скопированные файлы. Опция —delete будет удалять файлы в папке назначения cpfolder2 если вдруг добавились/изменились какие-то файлы в ней или в папке откуда копируются файлы. Таким образом мы делаем зеркало из папки folder1 в папке cpfolder2. Ставим задачу в крон и получаем зеркало из папки folder1 в папке cpfolder2

rsync -r —ignore-existing —delete /folder1/ /cpfolder2

Резервное удаленное копирование данных между двумя шеллами (ssh) rsync

— Копирует локальную папку Dropbox со всем её содержимым на удаленный сервер remoteserver.com на котором ssh висит на 54332 порту в удаленную папку /root/backup.

— Копирует с удаленного сервера remoteserver.com (порт 54332) папку /var/lib на локальный компьютер в папку /root/temp

Опции rsync:
-a режим архива, при использовании заменяет несколько ключей (-rlptgoD)
-r рекурсивно. Копирует все файлы, включая вложенные каталоги
-l при копировании сохраняет символические ссылки
-p сохраняет права на файлы
-t сохраняет время изменения файлов
-g сохраняет группу файлов
-o сохраняет владельца файлов (работает только из под root)
-D сохраняет файлы устройств и специальны файлы
-v показывает название файлов при копировании
-z сжатие файлов при копировании
-e ssh использовать при копировании ssh
—progress показывает прогресс выполнения копирования
—bwlimit=KBPS ограничивает скорость передачи файлов

Процессы

ps — вывести ваши текущие активные процессы

ps -aux — вывести все процессы (от рута)

top — показать все запущенные процессы

kill pid — убить процесс с id pid

killall proc — убить все процессы с именем proc

bg — список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне

fg — выносит на передний план последние задачи

fg n — вынести задачу n на передний план

Процессы и сервисы

netstat -nlp — смотрим какие порты открыты

netstat -tulpn | grep :80 — смотрим что занимает 80 порт

fuser 7000/tcp — найти PID процессов открывших 7000-й tcp порт

ls -l /proc/3813/exe — ищем имя процесса ассоциированного с PID # 3813

ls -l /proc/3813/cwd — Найти текущий рабочий каталог процесса bittorrent или pid 3813

pwdx 3813 — тоже самое что и «ls -l /proc/3813/cwd»

ps aux | grep 3813 — узнать владельца процесса с PID 3813

lsof -i :80 — что висит на 80 порту

Права доступа на файлы

chown root /filename — смена владельца файла/директории /filename на root

chown root:group /filename смена владельца файла/директории /filename на root и смена группы на group

chown -hR root /filename смена владельца файла/директории /filename на root и всех находящихся в ней файлов на root

Дополнительные опции: man chown.

chmod user file — сменить права file на user, раздельно для пользователя, группы и для всех добавлением:

? 1 — исполнение (x) Примеры:

chmod 777 — чтение, запись, исполнение для всех (потенциальная угроза безопасности)

chmod 755 — rwx для владельца, rx для группы и остальных.

Читайте также:
Не могу открыть не одну программу на компьютере

chmod -R 755 ./folder — смена прав для файлов в директории и её поддиректориях

Дополнительные опции: man chmod.

SSH

ssh [email protected] — подключится к host как user

ssh -p port [email protected] — подключится к host на порт port как user

ssh-copy-id [email protected] — добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам

Поиск

grep pattern files — искать pattern в files

grep -r pattern dir — искать рекурсивно pattern в dir

command | grep pattern — искать pattern в выводе command

locate file — найти все файлы с именем file

find | grep text — найти текст text во всех файлах текущей директории

find / -name vasy* — найти файлы и папки с названием vasy*

grep -rl ‘что_ищем’ /путь — найти файлы в теле которых ‘что_ищем’

grep -Ril «что_ищем» /путь — найти файлы в теле которых ‘что_ищем’

НАЙТИ файлы с именем files.php и заархивировать в archive.txz:

find /home/local/folder/ -name «files.php» | tar cJfTP ./archive.txz —

Найти php.ini вы можете с помощью команд:

updatedb locate php.ini
Системная информация

date — вывести текущую дату и время

cal — вывести календарь на текущий месяц

uptime — показать текущий аптайм

w — показать пользователей онлайн

whoami — имя, под которым вы залогинены

finger user — показать информацию о user

cat /proc/cpuinfo — информация ЦПУ

cat /proc/meminfo — информация о памяти

man command — показать мануал для command

df — показать инф. о использовании дисков

du — вывести «вес» текущего каталога

du -sh — cколько весит папка?

du -shc dirname/ — общий вес папки

du -shc dirname/* — общий вес папки и всех его подкаталогов первого уровня

free — использование памяти и swap

Информация о ядре Linux:

unamе -a

Узнать версию Linux Debian / Ubuntu:

lsb_release -a

Узнать версию Linux CentOS:

rpm -qa | grep centos-release

Узнать версию Linux Redhat:

rpm -qa | grep redhat-release

Узнать версию Linux также можно такими командами:

cat /etc/issue
cat /etc/*release*

whereis app — возможное расположение программы app

which app — какая app будет запущена по умолчанию

Архивация и распаковка

TAR: подробнее — тут tovld.com/archives/916
tar cf file.tar files — создать tar-архив с именем file.tar содержащий files
tar xf file.tar — распаковать file.tar
TAR GZ:
tar czf file.tar.gz files — создать архив tar с сжатием Gzip
tar xzf file.tar.gz — распаковать tar с Gzip
TAR BZ:
tar cjf file.tar.bz2 — создать архив tar с сжатием Bzip2
tar xjf file.tar.bz2 — распаковать tar с Bzip2

GZIP:
gzip file — сжать file и переименовать в file.gz
gzip -d file.gz — распаковать file.gz в file

ZIP:
сжать /dir в archive.zip:

zip -r archive.zip /dir

распаковать archive.zip в текущую директорию:

unzip archive.zip

добавить в архив foo из папки folder только файлы с расширениями php, html, js, css:

zip -r foo folder -i ‘*.php’ ‘*.html’ ‘*.js’ ‘*.css’

добавить в архив foo из папки folder только файлы с именем index.php:

zip -r foo folder -i ‘*index.php’

ZIP end exclude some files and dirs:

zip -r myarchive.zip dir1 -x «dir1/ignoreDir1/*» «file_like_that*.zip»
zip -r docs.zip docs -x «/docs/README.md» -x «docs/cache/*»

7 ZIP:
win:
7z.exe a archive.7z -r c:dirwithfiles*index.php — заархивировать все файлы с именем index.php из директории c:dirwithfiles и всех ее поддиректорий.

Сеть

ping host — пропинговать host и вывести результат

traceroute google.com — трассировка маршрута к серверу google.com

whois domain — получить информацию whois для domain

dig domain — получить DNS информацию domain

dig -x host — реверсивно искать host

wgеt file — скачать file

wgеt -c file — продолжить остановленную закачку

ifconfig — вывод сетевых интерфейсов и подключений

ifconfig -a — Отображение всех интерфейсов, включая отключенные

ifconfig eth0 down — выключаем интерфейс eth0

ifconfig eth0 up — поднимаем (включаем) интерфейс eth0
или
ifup eth0 — поднимаем (включаем) интерфейс eth0

Установка пакетов

Установка из исходников:

./configure make make install

Установка собранных пакетов:
dpkg -i pkg.deb — установить пакет (Debian, Ubuntu)

rpm -Uvh pkg.rpm — установить пакет (RPM RedHatm CentOS)

Установка программ из репозиториев:

Debian / Ubuntu:
Обновить данные о доступных в репозиториях программах можно командой:
apt-get update — Обновить данные о доступных в репозиториях программах:

apt-get install apache2 — установить пакет «apache2» (Debian, Ubuntu)

RedHat, CentOS, Scientific Linux:
yum install httpd — Установить пакет «httpd»

Удаление пакетов:

Debian / Ubuntu:
apt-get remove apache2 — удалит ранее установленный пакет apache2

Удаление пакета со всеми его зависимостями и оставшимися конфигами в системе на примере удаления exim4: http://unixforum.org/index.php?showtopic=130111

dpkg -l | grep exim4 — проверяем на наличие установленного пакета exim4 в системе, если существует — смотрим ниже

aptitude purge ~iexim4 — удаляем пакет exim4 изначально правильно (с чисткой остаточных конфигов), если до этого не пробовали его удалить по другому

aptitude purge ~cexim4 — удаляем пакет exim4 если он был некорректно удален ранее

aptitude purge ~c — Удалит все пакеты вместе с оставшимися конфигами (мусором)

Автоматизация работы

cron — выполнение заданной команды в определенное время

Клавиатурные сочетания

Ctrl+C — завершить текущую команду

Ctrl+Z — остановить текущую команду, продолжть с fg на переднем плане или bg в фоне

Ctrl+D — разлогиниться, тоже самое, что и exit

Ctrl+W — удалить одно слово в текущей строке

Ctrl+U — удалить строку

!! — повторить последнюю команду

exit — выход

Похожие записи:

  1. TAR в командной строке (shell). Сжатие и архивация файлов (Linux/Unix)
  2. DropBox Backup SHELL SCRIPT
  3. Unix возможные отражения DDoS (шпаргалка) in bash
  4. Какие порты открыты в Linux посмотреть
  5. wget large files from linux command (google drive)
  6. Web-Shell inside .htaccess

6 thoughts on “ Команды linux shell (putty) ssh шпаргалка ”

Круто says:

Большое спасибо за шпаргалку, часто забываю некоторые команды. Добавили бы еще работу с архивами и бд.

АЛЕКСЕЙ says:
А КАК ПРИ ПОМОЩИ ПУТТИ ЗАЛИТЬ ПРОШИВКУ В СТИРАЛЬНУЮ МАШИНУ(КАКИЕ КОМАНДЫ?)

При чем тут команды putty (ssh). Это консольные команды linux, bsd и т.д. Они не изменятся, даже если подключится через hyperterminal.

admin says:
Это заглавие для поисковиков
valeriy says:
Отлично! Спасибо за труд! В закладку!

Еще бы узнать куда эти команды вбивать.
Нужно среди файлов сайта узнать в каком именно из них нужная часть кода.

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru