Глава 3: Using PuTTY – Руководство пользователя PuTTY

4 Using X11 forwarding in SSH

The SSH protocol has the ability to securely forward X Window System graphical applications over your encrypted SSH connection, so that you can run an application on the SSH server machine and have it put its windows up on your local machine without sending any X network traffic in the clear.

In order to use this feature, you will need an X display server for your Windows machine, such as Cygwin/X, X-Win32, or Exceed. This will probably install itself as display number 0 on your local machine; if it doesn’t, the manual for the X server should tell you what it does do.

You should then tick the «Enable X11 forwarding» box in the X11 panel (see section 4.26) before starting your SSH session. The «X display location» box is blank by default, which means that PuTTY will try to use a sensible default such as :

Now you should be able to log in to the SSH server as normal. To check that X forwarding has been successfully negotiated during connection startup, you can check the PuTTY Event Log (see section It should say something like this:

2001-12-05 17:22:01 Requesting X11 forwarding
2001-12-05 17:22:02 X11 forwarding enabled

If the remote system is Unix or Unix-like, you should also be able to see that the DISPLAY environment variable has been set to point at display 10 or above on the SSH server machine itself:

4.3 Changing the action of the function keys and keypad

This option affects the function keys (F1 to F12) and the top row of the numeric keypad.

  • In the default mode, labelled ESC [n~, the function keys generate sequences like ESC [11~, ESC [12~ and so on. This matches the general behaviour of Digital’s terminals.
  • In Linux mode, F6 to F12 behave just like the default mode, but F1 to F5 generate ESC [[A through to ESC [[E. This mimics the Linux virtual console.
  • In Xterm R6 mode, F5 to F12 behave like the default mode, but F1 to F4 generate ESC OP through to ESC OS, which are the sequences produced by the top row of the keypad on Digital’s terminals.
  • In VT400 mode, all the function keys behave like the default mode, but the actual top row of the numeric keypad generates ESC OP through to ESC OS.
  • In VT100 mode, the function keys generate ESC OP through to ESC O[
  • In SCO mode, the function keys F1 to F12 generate ESC [M through to ESC [X. Together with shift, they generate ESC [Y through to ESC [j. With control they generate ESC [k through to ESC [v, and with shift and control together they generate ESC [w through to ESC [{.

If you don’t know what any of this means, you probably don’t need to fiddle with it.

Convert huawei e3372h-153 from hilink/router-mode to stick/modem-mode [ updated 2022-09-02 ]

This is updated version of my original post. I purchased additional modem that’s externally identical to old one but had different serial port USB ID (USBVID_12D1&PID_1442&MI_00) missing from earlier driver pack causing original instructions to fail. I have also included latest Stick-mode firmware I’ve found and corrected some incorrect information on original post.

Modern Huawei USB LTE modems can be used in two very different modes. Default is HiLink mode where it functions as router doing NAT and other nastiness much like more traditional 4G routers connected over WLAN or Ethernet. Unsurprisingly default mode is HiLink, but luckily it can be changed to Stick mode getting rid at least one layer of NAT and related issues.

Actually there’s also third mode which is subset of Stick, instead of native NCM interface it uses legacy PPP over emulated serial port. This can be sometimes useful with older routers with USB port but you won’t be able to reach full speed in this mode.

Internet has plenty of information on how to do that. As it often is not all of that is true. Most interesting bits are also written in Russian. Despite huge improvements in translations from Google Translate it’s still a bit of hit and miss.

Following these instructions will also resolve Error Code 19 and “brick” with Error Code 13 (rapidly flashing green led). Which is also why some steps may seem bit pointless at first. Feel free to skip them and then start again from beginning when Mr Error #19 and Mrs. Error #13 bite you. 🙂

You’ll need Windows PC for this. I’ve used 64-bit Windows 7 and Windows 10 PCs myself.

If you’ve tried this before coming to here I’m sure you’ve seen those “open” instructions. Those are for older models like E3372s and won’t work with E3372h.

Hold tight!

  • Visit either one of these sites to calculate device specific “Flash code” based on your IMEI and write it down. Depending on current firmware running on your device you may or may not need Flash code later. Better be safe and get one ready so you don’t get stuck.
  • Download and extract this ZIP that contains required tools, drivers and firmware images
  • Install “[1] Mobile Broadband HL Service” by running mbbServiceSetup.exe
  • Install “[2] Datacard Driver” by running Driver_Upgrade.vbs
  • Insert E3372h-153 with HiLink firmware to USB port
  • Run “sw_project_mode.cmd” from “[3] Switchmode E3372h” folder
  • Run “Update_WEBUI_17.” from “[4] Huawei E3372h WebUI”
  • Run “sw_project_mode.cmd” from “[3] Switchmode E3372h” folder
  • Run “E3372h-153_Update_22.” from “[5] Huawei E3372h-153 HiLink FW” folder.
  • Run “sw_project_mode.cmd” from “[3] Switchmode E3372h” folder
  • Run “E3372h-153Update_21.” from “[6] Huawei_E3372h-153 Stick FW” folder.
  • Run “putty.exe” from “[7] Putty” folder
    • Find serial port name from Device Manager, for example in case of “HUAWEI Mobile Connect – PC UI Interface (COM15)” port name is COM15
    • Click Serial on right hand side of Putty screen and type COM15 or whatever your port is.
    • Click Open on botton of Putty
    • Type ‘ ATE1 ‘ without quotes, you won’t see what you type and DO NOT try to use backspace. If you did it right you got ‘ OK ‘ as reply. Ignore ^RSSI etc. lines you might also see.
    • Type following commands one per line to see info about your device and verify connection works. 
    • Get current SETPORT value by typing ‘ AT^SETPORT? ‘. You might want to write these down if you ever want to revert back to defaults. Mine was ‘ ^SETPORT:A1,A2;12,1,16,A1,A2 ‘.
    • Set new SETPORT value by typing ‘ AT^SETPORT=”FF;12,16″ ‘, this is claimed to disable CD emulation and modeswitch requirement but actually it only disables unnecessary ports appearing after modeswitch. So you still need automated switch from CD emulation to WWAN with “Mobile Broadband HL Service” or “usb-modeswitch” in Linux.
    • If you want to keep PPP support for example for older router with USB port use ‘ AT^SETPORT=”FF;12,10,16″ ‘ instead. Remember that you won’t get full speed with PPP.
    • Reset modem by typing ‘ AT^RESET ‘.
    • Close Putty now.
  • Done. 

Your E3372h is now in stick mode, presents itself as NCM device that’s compatible with Windows Mobile Broadband feature and also with huawei_cdc_ncm under Linux. You don’t need 3rd party mobile tools on Windows. This means to connect Internet use built in features of your operating system, stay away from “Mobile Partner” etc. 

Работа с файлами

Программа позволяет делать операции с файлами. Чтобы закачать файл на сервер, находящийся под управлением Linux Ubuntu (с компьютера на ОС Windows), нужно действовать по приведенной ниже инструкции.

  1. Сохранить тестовый файл «mydoc.txt» на диске C: вместе с исполняемым файлом для безопасного копирования — pscp.exe.
  2. Открыть командную строку Windows: «Win R → cmd → Enter».
  3. Зайти в папку с программой pscp.exe, для чего ввести команду: «cd /d c:Puttypscp.exe»*, где «c:Putty» — путь к файлу pscp.exe.
    * Путь к файлу «c:Puttypscp.exe» приведен в качестве примера.
  4. Далее можно приступать непосредственно к работе с файлом. Например, передать файл «mydoc.txt» на сервер «»* со стандартным портом и пользователем Ubuntu74 в папку «root» можно командой:
    * IP-адрес «» приведен только в качестве примера.

    pscp.exe mydoc.txt [email protected]:/root/

    Если для соединения используется нестандартный порт (например, 25), то команда примет вид:

    pscp.exe -P 25 mydoc.txt [email protected]:/root/
  5. Ввести пароль для Ubuntu74.

Смена порта ssh-сервера как мера защиты от брутфорса

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

В этой статье мы опишем, как сконфигурировать SSH-сервер на альтернативном порту.

Особо отметим, что не стоит воспринимать описанный здесь метод, как панацею. Китайская мудрость гласит — «Security by Obscurity is no Security at all». Не забывайте и про другие методы защиты SSH, такие как правильная настройка межсетевого экрана, разрешение доступа только ограниченному набору IP-адресов, отказ от парольной аутентификации и использование ключей RSA/DSA, и т.п.

Конфиг SSH-сервера обычно располагается в /etc/ssh/sshd_config. Для редактирования этого файла вам потребуются привилегии суперпользователя root, или возможность выполнить sudo для получения таких привилегий текстовым редактором.

Выполните команду, например:

nano /etc/ssh/sshd_config

В открывшемся файле найдите следующую строку:

Port 22

Закомментируйте её и добавьте новую строку со случайным номером порта, например 58291. Номер порта не должен превышать 65535. Также удостоверьтесь, что выбранное вами значение не конфликтует с другими сервисами в системе, например mysqld использует порт 3306, httpd — 80, ftpd — 21. Рекомендуем выбрать пятизначное значение.

На всякий случай, для просмотра уже открытых в системе портов, выполните следующую команду:

netstat -tupln | grep LISTEN

После модификации, участок файла конфигурации SSH должен выглядеть примерно так:

#Port 22
Port 58291

Что-бы SSH-сервер начал слушать новый порт вместо прежнего, его нужно перезапустить:

/etc/init.d/ssh restart


/etc/init.d/sshd restart

Итак, теперь когда у нас есть SSH-сервер, слушающий альтернативный порт, как с ним соединяться? Если вы попытаетесь соединиться при помощи командной строки Linux, то по умолчанию SSH-клиент попытается использовать стандартный порт, и это приведёт к ошибке подключения:

ssh putty.org.ru
ssh: connect to host putty.org.ru port 22: Connection refused

Вместо этого вы должны передать SSH-клиенту номер порта значением параметра -p, примерно так:

ssh -p 58291 putty.org.ru

Теперь соединение пройдёт успешно.

Если вы используете свободный SSH-клиент PuTTY, то укажите порт в настройках сессии, как показано на картинке:

Шаг №1

Для начала, нужно выполнить ряд действий на компьютере с ОС Windows.

  1. Установить  программу для генерации ключа «Putty Key Generator» и запустить ее.
  2. Задать параметр «RSA» и активировать процесс кнопкой «Generate». Нужно постоянно вводить указателем мыши в зоне окна выполнения операции для успешной генерации.
    Использование SSH-ключей PuTTY
  3. Сохранить private key, для чего скопировать текст из консоли в документ. Предварительно нужно указать тип файла «.ppk».
    Использование SSH-ключей PuTTY
  4. Затем сохраняем public key. Для этого необходимо скопировать и вставить текст из буфера обмена в любой пустой текстовый файл.
    Использование SSH-ключей PuTTY
  5. Свернуть программу.

Шаг №2

Далее необходимо перенести SSH-ключ на сервер Ubuntu, выполнив перечисленные ниже действия.

  1. Запустить программу PuTTY.
  2. Подключиться к серверу, используя его параметры для доступа (хост, порт и SSH-протокол).
  3. Командой «mkdir .ssh» создаем папку «.ssh». Затем командой «ll» проверяем наличие папки.
    Использование SSH-ключей PuTTY
  4. Прописываем права доступа для папки .ssh только для владельца, командой «сhmod 700 .ssh/».
    Использование SSH-ключей PuTTY
  5. При помощи команды «cd .ssh» переходим в системную папку «./ssh».
    Использование SSH-ключей PuTTY
  6. Создаем файл «authorized_keys», используя редактор nano, командой:
    touch authorized_keys

    Использование SSH-ключей PuTTY

  7. Прописываем права доступа для файла «authorized_keys», только для владельца, командой:
    сhmod 600 authorized_keys

    Использование SSH-ключей PuTTY

  8. Редактируем файл с помощью команды:
    cat >> authorized_keys << EOF»
  9. Добавляем ваш public key и заканчиваем редактирование файла командой «EOF».
    Использование SSH-ключей PuTTY

Оцените статью
Huawei Devices
Добавить комментарий