Работа с сервером используя ssh

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

Подготовка к подключению

Подключаемся мы по сети, для этого нам нужно знать ip адрес нашего сервера. Посмотреть его можно с помощью команды: 

# ip addr show

Перед подключением убедимся, что на вашем сервере установлен и работает SSH сервер. Сделаем это с помощью пакетного менеджера dpkg:

# dpkg -s openssh-server | grep Status
Status: install ok installed

Если у вас он не установлен, то установите его:

# apt install openssh-server

Проверим что служба сервера запущена:

# systemctl status sshd.service
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; preset: enabled)
     Active: active (running) since Mon 2024-12-16 15:07:18 MSK; 5min ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 497 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 523 (sshd)
      Tasks: 1 (limit: 4623)
     Memory: 7.7M
        CPU: 48ms
     CGroup: /system.slice/ssh.service
             └─523 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

Если не запущена запустим её:

# systemctl start sshd.service

Проверим что есть запущенный процесс ssh (с помjщью команды ps) и узнаем какой порт он слушает (с помощью команды команды ss):

# ps -ax | grep ssh
   1625 ?        Ss     0:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

# ss -tlpn | grep 1625
LISTEN 0      128          0.0.0.0:22        0.0.0.0:*    users:(("sshd",pid=1625,fd=3))

В примере выше мы с помощью утилиты ps нашли процесс sshd. А с помощью утилиты ss узнали какой порт этот процесс слушает. А слушает он 22 порт, то-есть порт по умолчанию для ssh.

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

Подключение с компьютера Windows

Подключение используя «Bitvise SSH Client»

Для того чтобы подключаться по ssh с Windows компьютера к Linux серверу можно использовать разные приложения. Например мне нравится приложение «Bitvise SSH Client«, скачать его можно от сюда.

Для подключения нужно заполнить поля:

  • Host — адрес сервера,
  • Port — порт на котором работает служба ssh,
  • Username — логин пользователя,
  • Initial method — password,
  • Поставьте галку «Store encrypted password in profile» — чтобы сохранить пароль,
  • Password — пароль.

После заполнения всех полей нажмите кнопку «Log in».

Bitvise SSH Client

Дальше соглашаемся с отпечатком сервера (host key):

Bitvise SSH Client. Соглашаемся с отпечатком сервера

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

Bitvise SSH Client. Подключение к серверу

Подключение используя «PowerShell»

Кроме сторонних программ, таких как «Bitvise SSH Client» из Windows вы можете подключаться по SSH к Linux серверам прямо из PowerShell. Такая возможность появилась с Windows 10 и Windows Server 2016. Для этого вы должны ввести следующую команду:

> ssh <имя_пользователя>@<ip_сервера>

Затем вам также нужно будет согласиться с отпечатком сервера (host key) и ввести пароль:

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

Подключение с Десктопного Linux

Если у вас Десктопный Linux, и вы хотите управлять сервером по ssh, то просто запустите эмулятор терминала и воспользуйтесь командой:

$ ssh <имя_пользователя>@<ip_сервера>

В выводе увидите примерно следующее:

The authenticity of host '192.168.0.25 (192.168.0.25)' can't be established. ECDSA key fingerprint is SHA256:VrlVJg28+LrVa69peUUTNYVL/a53XOhLqMwkwTdPGmo.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.25' (ECDSA) to the list of known hosts.
alex@192.168.0.25's password: 

alex@deb12:~$

Здесь вам тоже придется подтвердить отпечаток сервера введя «yes». Затем ввести пароль от пользователя alex и приглашение ввода команды изменится на alex@deb12:~$, что означает что теперь все команды будут выполнены на сервере deb12, от пользователя alex.

Подключение с Android

SSH клиенты есть на Android, например JuiceSSH. Так что с телефона вы тоже можете управлять сервером:

Debian 10. Работа с сервером используя ssh, изображение №4

Различные приглашения ввода команды

Когда вы работаете под обычным пользователем то приглашение ввода команды оканчивается на $. А если вы работаете под суперпользователем root то на #:

  • alex@deb12:~$ — обычный пользователь alex;
  • root@deb12:~# — суперпользователь root.

Другие подобные статьи по Введению в администрирование Linuxдоступны здесь.

Если понравилась статья, подпишись на мой канал в VK или Telegram.

Оставьте комментарий