Putty ssh network error connection refused

предыдущая глава | содержание | следующая глава

предыдущая глава | содержание | следующая глава

  • 10.1 «The server’s host key is not cached in the registry»
  • 10.2 «WARNING — POTENTIAL SECURITY BREACH!»
  • 10.3 «SSH protocol version 2 required by our configuration but remote only provides (old, insecure) SSH-1»
  • 10.4 «The first cipher supported by the server is … below the configured warning threshold»
  • 10.5 «Remote side sent disconnect message type 2 (protocol error): «Too many authentication failures for root»»
  • 10.6 «Out of memory»
  • 10.7 «Internal error», «Internal fault», «Assertion failed»
  • 10.8 «Unable to use key file», «Couldn’t load private key», «Couldn’t load this key»
  • 10.9 «Server refused our key», «Server refused our public key», «Key refused»
  • 10.10 «Access denied», «Authentication refused»
  • 10.11 «No supported authentication methods available»
  • 10.12 «Incorrect MAC received on packet» or «Incorrect CRC received on packet»
  • 10.13 «Incoming packet was garbled on decryption»
  • 10.14 «PuTTY X11 proxy: various errors»
  • 10.15 «Network error: Software caused connection abort»
  • 10.16 «Network error: Connection reset by peer»
  • 10.17 «Network error: Connection refused»
  • 10.18 «Network error: Connection timed out»
  • 10.19 «Network error: Cannot assign requested address»

This chapter lists a number of common error messages which PuTTY and its associated tools can produce, and explains what they mean in more detail.

We do not attempt to list all error messages here: there are many which should never occur, and some which should be self-explanatory. If you get an error message which is not listed in this chapter and which you don’t understand, report it to us as a bug (see appendix B) and we will add documentation for it.

10.1 «The server’s host key is not cached in the registry»

This error message occurs when PuTTY connects to a new SSH server. Every server identifies itself by means of a host key; once PuTTY knows the host key for a server, it will be able to detect if a malicious attacker redirects your connection to another machine.

If you see this message, it means that PuTTY has not seen this host key before, and has no way of knowing whether it is correct or not. You should attempt to verify the host key by other means, such as asking the machine’s administrator.

If you see this message and you know that your installation of PuTTY has connected to the same server before, it may have been recently upgraded to SSH protocol version 2. SSH protocols 1 and 2 use separate host keys, so when you first use SSH-2 with a server you have only used SSH-1 with before, you will see this message again. You should verify the correctness of the key as before.

See section 2.2 for more information on host keys.

10.2 «WARNING — POTENTIAL SECURITY BREACH!»

This message, followed by «The server’s host key does not match the one PuTTY has cached in the registry», means that PuTTY has connected to the SSH server before, knows what its host key should be, but has found a different one.

This may mean that a malicious attacker has replaced your server with a different one, or has redirected your network connection to their own machine. On the other hand, it may simply mean that the administrator of your server has accidentally changed the key while upgrading the SSH software; this shouldn’t happen but it is unfortunately possible.

You should contact your server’s administrator and see whether they expect the host key to have changed. If so, verify the new host key in the same way as you would if it was new.

See section 2.2 for more information on host keys.

10.3 «SSH protocol version 2 required by our configuration but remote only provides (old, insecure) SSH-1»

By default, PuTTY only supports connecting to SSH servers that implement SSH protocol version 2. If you see this message, the server you’re trying to connect to only supports the older SSH-1 protocol.

If the server genuinely only supports SSH-1, then you need to either change the «SSH protocol version» setting (see section 4.19.4), or use the -1 command-line option; in any case, you should not treat the resulting connection as secure.

You might start seeing this message with new versions of PuTTY (from 0.68 onwards) where you didn’t before, because it used to be possible to configure PuTTY to automatically fall back from SSH-2 to SSH-1. This is no longer supported, to prevent the possibility of a downgrade attack.

10.4 «The first cipher supported by the server is … below the configured warning threshold»

This occurs when the SSH server does not offer any ciphers which you have configured PuTTY to consider strong enough. By default, PuTTY puts up this warning only for Blowfish, single-DES, and Arcfour encryption.

See section 4.22 for more information on this message.

(There are similar messages for other cryptographic primitives, such as host key algorithms.)

10.5 «Remote side sent disconnect message type 2 (protocol error): «Too many authentication failures for root»»

This message is produced by an OpenSSH (or Sun SSH) server if it receives more failed authentication attempts than it is willing to tolerate.

This can easily happen if you are using Pageant and have a large number of keys loaded into it, since these servers count each offer of a public key as an authentication attempt. This can be worked around by specifying the key that’s required for the authentication in the PuTTY configuration (see section 4.23.8); PuTTY will ignore any other keys Pageant may have, but will ask Pageant to do the authentication, so that you don’t have to type your passphrase.

On the server, this can be worked around by disabling public-key authentication or (for Sun SSH only) by increasing MaxAuthTries in sshd_config.

10.6 «Out of memory»

This occurs when PuTTY tries to allocate more memory than the system can give it. This may happen for genuine reasons: if the computer really has run out of memory, or if you have configured an extremely large number of lines of scrollback in your terminal. PuTTY is not able to recover from running out of memory; it will terminate immediately after giving this error.

However, this error can also occur when memory is not running out at all, because PuTTY receives data in the wrong format. In SSH-2 and also in SFTP, the server sends the length of each message before the message itself; so PuTTY will receive the length, try to allocate space for the message, and then receive the rest of the message. If the length PuTTY receives is garbage, it will try to allocate a ridiculous amount of memory, and will terminate with an «Out of memory» error.

This can happen in SSH-2, if PuTTY and the server have not enabled encryption in the same way (see question A.7.3 in the FAQ).

This can also happen in PSCP or PSFTP, if your login scripts on the server generate output: the client program will be expecting an SFTP message starting with a length, and if it receives some text from your login scripts instead it will try to interpret them as a message length. See question A.7.4 for details of this.

10.7 «Internal error», «Internal fault», «Assertion failed»

Any error beginning with the word «Internal» should never occur. If it does, there is a bug in PuTTY by definition; please see appendix B and report it to us.

Similarly, any error message starting with «Assertion failed» is a bug in PuTTY. Please report it to us, and include the exact text from the error message box.

10.8 «Unable to use key file», «Couldn’t load private key», «Couldn’t load this key»

Various forms of this error are printed in the PuTTY window, or written to the PuTTY Event Log (see section 3.1.3.1) when trying public-key authentication, or given by Pageant when trying to load a private key.

If you see one of these messages, it often indicates that you’ve tried to load a key of an inappropriate type into PuTTY, Plink, PSCP, PSFTP, or Pageant.

You may have tried to load an SSH-2 key in a «foreign» format (OpenSSH or ssh.com) directly into one of the PuTTY tools, in which case you need to import it into PuTTY’s native format (*.PPK) using PuTTYgen – see section 8.2.12.

Alternatively, you may have specified a key that’s inappropriate for the connection you’re making. The SSH-2 and the old SSH-1 protocols require different private key formats, and a SSH-1 key can’t be used for a SSH-2 connection (or vice versa).

10.9 «Server refused our key», «Server refused our public key», «Key refused»

Various forms of this error are printed in the PuTTY window, or written to the PuTTY Event Log (see section 3.1.3.1) when trying public-key authentication.

If you see one of these messages, it means that PuTTY has sent a public key to the server and offered to authenticate with it, and the server has refused to accept authentication. This usually means that the server is not configured to accept this key to authenticate this user.

This is almost certainly not a problem with PuTTY. If you see this type of message, the first thing you should do is check your server configuration carefully. Common errors include having the wrong permissions or ownership set on the public key or the user’s home directory on the server. Also, read the PuTTY Event Log; the server may have sent diagnostic messages explaining exactly what problem it had with your setup.

Section 8.3 has some hints on server-side public key setup.

10.10 «Access denied», «Authentication refused»

Various forms of this error are printed in the PuTTY window, or written to the PuTTY Event Log (see section 3.1.3.1) during authentication.

If you see one of these messages, it means that the server has refused all the forms of authentication PuTTY has tried and it has no further ideas.

It may be worth checking the Event Log for diagnostic messages from the server giving more detail.

This error can be caused by buggy SSH-1 servers that fail to cope with the various strategies we use for camouflaging passwords in transit. Upgrade your server, or use the workarounds described in section 4.28.11 and possibly section 4.28.12.

10.11 «No supported authentication methods available»

This error indicates that PuTTY has run out of ways to authenticate you to an SSH server. This may be because PuTTY has TIS or keyboard-interactive authentication disabled, in which case see section 4.23.4 and section 4.23.5.

10.12 «Incorrect MAC received on packet» or «Incorrect CRC received on packet»

This error occurs when PuTTY decrypts an SSH packet and its checksum is not correct. This probably means something has gone wrong in the encryption or decryption process. It’s difficult to tell from this error message whether the problem is in the client, in the server, or in between.

In particular, if the network is corrupting data at the TCP level, it may only be obvious with cryptographic protocols such as SSH, which explicitly check the integrity of the transferred data and complain loudly if the checks fail. Corruption of protocols without integrity protection (such as HTTP) will manifest in more subtle failures (such as misdisplayed text or images in a web browser) which may not be noticed.

Occasionally this has been caused by server bugs. An example is the bug described at section 4.28.8, although you’re very unlikely to encounter that one these days.

In this context MAC stands for Message Authentication Code. It’s a cryptographic term, and it has nothing at all to do with Ethernet MAC (Media Access Control) addresses, or with the Apple computer.

10.13 «Incoming packet was garbled on decryption»

This error occurs when PuTTY decrypts an SSH packet and the decrypted data makes no sense. This probably means something has gone wrong in the encryption or decryption process. It’s difficult to tell from this error message whether the problem is in the client, in the server, or in between.

If you get this error, one thing you could try would be to fiddle with the setting of «Miscomputes SSH-2 encryption keys» (see section 4.28.10) or «Ignores SSH-2 maximum packet size» (see section 4.28.5) on the Bugs panel.

10.14 «PuTTY X11 proxy: various errors»

This family of errors are reported when PuTTY is doing X forwarding. They are sent back to the X application running on the SSH server, which will usually report the error to the user.

When PuTTY enables X forwarding (see section 3.4) it creates a virtual X display running on the SSH server. This display requires authentication to connect to it (this is how PuTTY prevents other users on your server machine from connecting through the PuTTY proxy to your real X display). PuTTY also sends the server the details it needs to enable clients to connect, and the server should put this mechanism in place automatically, so your X applications should just work.

A common reason why people see one of these messages is because they used SSH to log in as one user (let’s say «fred»), and then used the Unix su command to become another user (typically «root»). The original user, «fred», has access to the X authentication data provided by the SSH server, and can run X applications which are forwarded over the SSH connection. However, the second user («root») does not automatically have the authentication data passed on to it, so attempting to run an X application as that user often fails with this error.

If this happens, it is not a problem with PuTTY. You need to arrange for your X authentication data to be passed from the user you logged in as to the user you used su to become. How you do this depends on your particular system; in fact many modern versions of su do it automatically.

10.15 «Network error: Software caused connection abort»

This is a generic error produced by the Windows network code when it kills an established connection for some reason. For example, it might happen if you pull the network cable out of the back of an Ethernet-connected computer, or if Windows has any other similar reason to believe the entire network has become unreachable.

Windows also generates this error if it has given up on the machine at the other end of the connection ever responding to it. If the network between your client and server goes down and your client then tries to send some data, Windows will make several attempts to send the data and will then give up and kill the connection. In particular, this can occur even if you didn’t type anything, if you are using SSH-2 and PuTTY attempts a key re-exchange. (See section 4.20.2 for more about key re-exchange.)

(It can also occur if you are using keepalives in your connection. Other people have reported that keepalives fix this error for them. See section 4.14.1 for a discussion of the pros and cons of keepalives.)

We are not aware of any reason why this error might occur that would represent a bug in PuTTY. The problem is between you, your Windows system, your network and the remote system.

10.16 «Network error: Connection reset by peer»

This error occurs when the machines at each end of a network connection lose track of the state of the connection between them. For example, you might see it if your SSH server crashes, and manages to reboot fully before you next attempt to send data to it.

However, the most common reason to see this message is if you are connecting through a firewall or a NAT router which has timed the connection out. See question A.7.8 in the FAQ for more details. You may be able to improve the situation by using keepalives; see section 4.14.1 for details on this.

Note that Windows can produce this error in some circumstances without seeing a connection reset from the server, for instance if the connection to the network is lost.

10.17 «Network error: Connection refused»

This error means that the network connection PuTTY tried to make to your server was rejected by the server. Usually this happens because the server does not provide the service which PuTTY is trying to access.

Check that you are connecting with the correct protocol (SSH, Telnet or Rlogin), and check that the port number is correct. If that fails, consult the administrator of your server.

10.18 «Network error: Connection timed out»

This error means that the network connection PuTTY tried to make to your server received no response at all from the server. Usually this happens because the server machine is completely isolated from the network, or because it is turned off.

Check that you have correctly entered the host name or IP address of your server machine. If that fails, consult the administrator of your server.

Unix also generates this error when it tries to send data down a connection and contact with the server has been completely lost during a connection. (There is a delay of minutes before Unix gives up on receiving a reply from the server.) This can occur if you type things into PuTTY while the network is down, but it can also occur if PuTTY decides of its own accord to send data: due to a repeat key exchange in SSH-2 (see section 4.20.2) or due to keepalives (section 4.14.1).

10.19 «Network error: Cannot assign requested address»

This means that the operating system rejected the parameters of the network connection PuTTY tried to make, usually without actually trying to connect to anything, because they were simply invalid.

A common way to provoke this error is to accidentally try to connect to port 0, which is not a valid port number.

by Tashreef Shareef

Tashreef Shareef is a software developer turned tech writer. He discovered his interest in technology after reading a tech magazine accidentally. Now he writes about everything tech from… read more


Updated on December 13, 2022

  • Connecting to a remote server for file transfers can be accomplished using a software like PuTTY. It is a very old software that continues to be updated and works very well.
  • If a network error show with Connection Refused message, make sure that the server is configured, check if the port used is the same as your setup or look at your firewall and make sure PuTTY is not blocked.

Network error Connection Refused

XINSTALL BY CLICKING THE DOWNLOAD FILE

To fix various PC problems, we recommend Restoro PC Repair Tool:
This software will repair common computer errors, protect you from file loss, malware, hardware failure and optimize your PC for maximum performance. Fix PC issues and remove viruses now in 3 easy steps:

  1. Download Restoro PC Repair Tool that comes with Patented Technologies (patent available here).
  2. Click Start Scan to find Windows issues that could be causing PC problems.
  3. Click Repair All to fix issues affecting your computer’s security and performance
  • Restoro has been downloaded by 0 readers this month.

PuTTy is a free and open-source terminal application that allows the system administrator to log in to a remote server over SSH. This small yet highly stable application is also used to transfer files securely via SCP and SFTP.

If you work in IT or have your own set of servers that need to be connected, PuTTy is not an alien concept to you. However, what can be an alien concept is the Putty  Fatal error.

The error “Network error: connection refused” is one of the common PuTTY related errors that you may face while working with Putty. The error pops up when you try to connect to a remote server for the first time or the 100th time.

I have had my fair share of problems with PuTTy, but most of the time the errors are caused by small but not so obvious issues.

If you are one of those trying to diagnose a connection refused error, this article will help you to resolve the error.

In this article, I have listed all the possible solutions to the PuTTy connection refused error. Make sure you try each one of them a try until the issue is resolved.

What causes Network error: Connection Refused errors?

The error can occur due to several reasons. Some of them are listed below.

  • The users may encounter “Network error: connection refused” error:
  • If the application tries to access the services not offered/supported by the server
  • If the application tries to connect to a telnet server not supported by the server.
  • If your router blocks the connection due to security reasons.
  • If the server does not support the default port used by the system administrator on PuTTy.

These are some of the common reasons for network error: connection refused error in PuTTy. Below are some common solutions that you can try to fix the issue.

How can I fix Network Error: Connection Refused errors?

Fix 1: Contact the system/network administrator

If you are not a system administrator, it is a better idea to start by contacting your system administrator.

System Administrators may change some permissions in the router if they notice any unknown device trying to connect or for other security reasons from time to time.

If that’s the case, you can easily resolve the issue by contacting the system admin before trying to resolve the issue on your end. While you are at it, you can also tell him about how NetCrunch Tools could help with their daily tasks.

Fix 2: Check if SSH connection is enabled

Depending on the device you are trying to connect, the network error – connection refused error may appear if the device settings have SSH disabled.

For example, if you are using Raspberry Pi to connect through your PC, make sure the ssh is enabled in the configuration. Here is how to do it.

In Raspberry Pi, go to Configuration > Interfaces > ssh. Enable the service and try again.

The settings may change depending on the device you are using, but the end result should be a working network connection through PuTTy.

Fix 3: Check if your domain records points to the server

If you are working with a new server and a fresh domain, the error can occur due to an incorrect DNS server address in the domain settings. All the domain registrar allows you to point your domain to you any third-party hosting provider using the name server.

If you have only installed a server and did not change the name server, you might end up with a network error: connection refused error.

To fix the problem, log in to your domain name provider and check the name server settings to see if the name servers are pointing to your hosting provider.

Fix 4: Check for Blacklisted and Whitelisted IP Address in the server

Some PC issues are hard to tackle, especially when it comes to corrupted repositories or missing Windows files. If you are having troubles fixing an error, your system may be partially broken.
We recommend installing Restoro, a tool that will scan your machine and identify what the fault is.
Click here to download and start repairing.

For security reasons system administrator may allow connection from only computers with known IP address and that is already whitelisted in the configuration file.

If your ISP IP address has changed or if you are new to the job, you probably need to ask the network admin to make an exception.

The same can also happen if your IP address is blacklisted by the network admin accidentally.

So, check with your network admin for both scenarios and see if that can help you resolve the issue.

Fix 5: Disable Firewall

If you are using Windows, your anti-virus or the default Windows Security firewall and network protection feature may block incoming connections resulting in a connection refused error.

Try disabling the firewall temporarily to see if that can resolve the connection refused error. If it does, you may need to tweak the firewall setting to fix the error completely.

Disable Firewall in Windows Security

Disable Anti-virus Firewall

If you have a third-party anti-virus program running, you may also need to disable the firewall offered by the application. You can disable the firewall from the anti-virus settings option.

Try to connect using PuTTy now. If the connection goes through, you need to tweak Firewall settings to fix the problem.

Even so, having a compatible antivirus solution installed on your PC keeps you safe and protected all the time, without interfering with your tasks or activities.

Therefore, we strongly recommend choosing the best antivirus for your PC, even though right now as a temporary workaround you had to disable the Firewall and fix this issue. It is not recommendable to be vulnerable to dangerous attacks throughout the network.

Other Fixes

If none of the fixes worked for you, you can try to restart the SSH server or reboot the servers.

If your server was set up by someone else, the possibility is that they may have moved the default port as per their convenience. Contact and ask for the configuration nodes to get a better idea of the ports.

If you are using a fully managed server, contact support. If the issue is from the hosting provider’s end, the system administrator will fix the issue.

Last but not the least, start using other alternatives to Putty such as other SH terminals can help you in case you encounter an error that is specific to PuTTY.

Conclusion

The Putty Fatal error “Network error: connection refused error can occur due to several reasons and I have tried to list the most common problems and solutions for the same.

However, if the fixes listed in this article don’t work for you, you may ask in forums related to your device or OS on which the error is appearing.

Do let us know if any of the fixes worked for you or if you have a solution that is not listed in the article in the comments below.

newsletter icon

Newsletter

25 мая, 2017 11:40 дп
86 521 views
| Комментариев нет

Linux, SSH

В первой статье этой серии вы узнали о том, как и в каких ситуациях вы можете попробовать исправить ошибки SSH. Остальные статьи расскажут, как определить и устранить ошибки:

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

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

Требования

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

Основные ошибки

Разрешение имени хоста

Большинство ошибок подключения возникает тогда, когда ссылка на хост SSH не может быть сопоставлена с сетевым адресом. Это почти всегда связано с DNS, но первопричина часто бывает не связана с DNS.

На клиенте OpenSSH эта команда:

ssh user@example.com

может выдать ошибку:

ssh: Could not resolve hostname example.com: Name or service not known

В PuTTY может появиться такая ошибка:

Unable to open connection to example.com Host does not exist

Чтобы устранить эту ошибку, можно попробовать следующее:

  • Проверьте правильность написания имени хоста.
  • Убедитесь, что вы можете разрешить имя хоста на клиентской машине с помощью команды ping. Обратитесь к сторонним сайтам (WhatsMyDns.net, например), чтобы подтвердить результаты.

Если у вас возникают проблемы с разрешением DNS на любом уровне, в качестве промежуточного решения можно использовать IP-адрес сервера, например:

ssh user@111.111.111.111
# вместо
ssh user@example.com.

Истечение времени соединения

Эта ошибка значит, что клиент попытался установить соединение с SSH-сервером, но сервер не смог ответить в течение заданного периода ожидания.

На клиенте OpenSSH следующая команда:

ssh user@111.111.111.111

выдаст такую ошибку:

ssh: connect to host 111.111.111.111 port 22: Connection timed out

В PuTTY ошибка выглядит так:

Network error: Connection timed out

Чтобы исправить ошибку:

  • Убедитесь, что IP-адрес хоста указан правильно.
  • Убедитесь, что сеть поддерживает подключение через используемый порт SSH. Некоторые публичные сети могут блокировать порт 22 или пользовательские SSH-порты. Чтобы проверить работу порта, можно, например, попробовать подключиться к другим хостам через этот же порт. Это поможет вам определить, не связана ли проблема с самим сервером.
  • Проверьте правила брандмауэра. Убедитесь, что политика по умолчанию – не DROP.

Отказ в соединении

Эта ошибка означает, что запрос передается на хост SSH, но хост не может успешно принять запрос.

На клиенте OpenSSH следующая команда выдаст ошибку:

ssh user@111.111.111.111
ssh: connect to host 111.111.111.111 port 22: Connection refused

В PuTTY ошибка появится в диалоговом окне:

Network error: Connection refused

Эта ошибка имеет общие с ошибкой Connection Timeout причины. Чтобы исправить её, можно сделать следующее:

  • Убедиться, что IP-адрес хоста указан правильно.
  • Убедиться, что сеть поддерживает подключение через используемый порт SSH. Некоторые публичные сети могут блокировать порт 22 или пользовательские SSH-порты. Чтобы проверить работу порта, можно, например, попробовать подключиться к другим хостам через этот же порт.
  • Проверить правила брандмауэра. Убедитесь, что политика по умолчанию – не DROP, и что брандмауэр не блокирует этот порт.
  • Убедиться, что сервис запущен и привязан к требуемому порту.

Рекомендации по исправлению ошибок подключения

Брандмауэр

Иногда проблемы с подключением возникают из-за брандмауэра. Он может блокировать отдельные порты или сервисы.

Читайте также: Что такое брандмауэр и как он работает?

В разных дистрибутивах используются разные брандмауэры. Вы должны научиться изменять правила и политики своего брандмауэра. В Ubuntu обычно используется UFW, в CentOS – FirewallD. Брандмауэр iptables используется независимо от системы.

Читайте также:

  • Основы UFW: общие правила и команды фаервола
  • Настройка брандмауэра FirewallD в CentOS 7
  • Основы Iptables: общие правила и команды брандмауэра

Чтобы настроить брандмауэр, нужно знать порт сервиса SSH. По умолчанию это порт 22.

Чтобы запросить список правил iptables, введите:

iptables -nL

Такой вывод сообщает, что правил, блокирующих SSH, нет:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Если в выводе вы видите правило или политику по умолчанию REJECT или DROP, убедитесь, что цепочка INPUT разрешает доступ к порту SSH.

Чтобы запросить список правил FirewallD, введите:

firewall-cmd --list-services

Список, появившийся на экране, содержит все сервисы, которые поддерживаются брандмауэром. В списке должно быть правило:

dhcpv6-client http ssh

Если вы настроили пользовательский порт SSH, используйте опцию –list-ports. Если вы создали пользовательское определение сервиса, добавьте опцию –list-services, чтобы найти SSH.

Чтобы проверить состояние UFW, введите:

ufw status

Команда вернёт доступные порты:

Status: active
To                         Action      From
--                         ------      ----
22                         LIMIT       Anywhere
443                        ALLOW       Anywhere
80                         ALLOW       Anywhere
Anywhere                   ALLOW       192.168.0.0
22 (v6)                    LIMIT       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
80 (v6)                    ALLOW       Anywhere (v6)

В списке должен быть порт SSH.

Проверка состояния сервиса SSH

Если вы не можете подключиться к серверу по SSH, убедитесь, что сервис SSH запущен. Способ сделать это зависит от операционной системы сервера. В более старых версиях дистрибутивов (Ubuntu 14.04, CentOS 6, Debian 8) используется команда service. Современные дистрибутивы на основе Systemd используют команду systemctl.

Метод проверки состояния сервиса может варьироваться от системы к системе. В более старых версиях (Ubuntu 14 и ниже, CentOS 6, Debian 6) используется команда service, поддерживаемая системой инициализации Upstart, а в более современных дистрибутивах для управления сервисом используется команда systemctl.

Примечание: В дистрибутивах Red Hat (CentOS и Fedora) сервис называется sshd, а в Debian и Ubuntu – ssh.

В более старых версия используйте команду:

service ssh status

Если процесс работает должным образом, вы увидите вывод, который содержит PID:

ssh start/running, process 1262

Если сервис не работает, вы увидите:

ssh stop/waiting

В системах на основе SystemD используйте:

systemctl status sshd

В выводе должна быть строка active:

sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: active (running) since Mon 2017-03-20 11:00:22 EDT; 1 months 1 days ago
Process: 899 ExecStartPre=/usr/sbin/sshd-keygen (code=exited, status=0/SUCCESS)
Main PID: 906 (sshd)
CGroup: /system.slice/sshd.service
├─  906 /usr/sbin/sshd -D
├─26941 sshd: [accepted]
└─26942 sshd: [net]

Если сервис не работает, вы увидите в выводе inactive:

sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: inactive (dead) since Fri 2017-04-21 08:36:13 EDT; 2s ago
Process: 906 ExecStart=/usr/sbin/sshd -D $OPTIONS (code=exited, status=0/SUCCESS)
Process: 899 ExecStartPre=/usr/sbin/sshd-keygen (code=exited, status=0/SUCCESS)
Main PID: 906 (code=exited, status=0/SUCCESS)

Чтобы перезапустить сервис, введите соответственно:

service ssh start
systemctl start sshd

Проверка порта SSH

Существует два основных способа проверить порт SSH: проверить конфигурационный файл SSH или просмотреть запущенный процесс.

Как правило, конфигурационный файл SSH хранится в /etc/ssh/sshd_config. Стандартный порт 22 может переопределяться любой строкой в этом файле, определяющей директиву Port.

Запустите поиск по файлу с помощью команды:

grep Port /etc/ssh/sshd_config

Читайте также: Использование Grep и регулярных выражений для поиска текстовых шаблонов в Linux

Команда вернёт:

Port 22

Если вы уже убедились, что сервис работает, теперь вы можете узнать, работает ли он на требуемом порте. Для этого используйте команду ss. Команда netstat –plnt выдаст аналогичный результат, но команду ss рекомендуется использовать для запроса информации сокета из ядра.

ss -plnt

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

State       Recv-Q Send-Q              Local Address:Port                       Peer Address:Port
LISTEN      0      128                 *:22                                     *:*                   users:(("sshd",pid=1493,fd=3))
LISTEN      0      128                 :::22                                    :::*                  users:(("sshd",pid=1493,fd=4))

Символ * и 0.0.0.0 указывает, что все интерфейсы сервера прослушиваются. Строка 127.0.0.1 значит, что сервис не является общедоступным. В sshd_config директива ListenAddress должна быть закомментирована, чтобы прослушивать все интерфейсы, или должна содержать внешний IP-адрес сервера.

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

Tags: firewalld, Iptables, OpenSSH, PuTTY, SSH, UFW

PuTTY is a free to use open source software that is used for terminal emulation, serial console and network file sharing purposes. It can be used freely, modified and copied without any limitations. However, quite recently a lot of reports have been coming in of a “Network Error Connection Refused” error while trying to establish a connection. In this article, we will tell you about the reasons due to which this error is triggered and also guide you with viable solutions to fix this issue.

Network Error on PuTTY

What Causes the “Network Error Connection Refused” Error on PuTTY?

After receiving numerous reports from multiple users, we decided to investigate the issue and identify the root causes of the problem. some of the most common ones are listed below:

  • Invalid IP Address: It is possible that you are not using the Raspberry Pi IP Address while trying to establish the connection. The Raspberry Pi IP Address is needed in order to establish a connection with the servers.
  • Misconfigured Login: In some cases, if you are trying to login to your Raspberry Pi using “ssh”, it triggers the error. It needs to be reconfigured using a specific command in order to work properly.

Now that you have a basic understanding of the nature of the problem, we will move on towards the solutions. Make sure to implement these in the specific order in which they are provided to avoid any conflicts.

Solution 1: Implementing Correct IP Address

It is possible that the IP Address you are using isn’t the Raspberry Pi one. Therefore, in this step, we will be identifying the correct IP Address and using that to connect. In order to do that:

  1. Click this link to download the “Advanced IP Scanner” tool.
    Note: This tool is free to use and can be easily used to identify the IP Address.
  2. Click on the “.exe” and follow the on-screen instructions to install it.
  3. Once installed, run the tool and click on the “Scan” button.
    Clicking on the “Scan” button
  4. Wait for the scanning process to be completed.
  5. Check to see if there is a “RaspberryPi” named connection in the list.
  6. If there isn’t, press “Windows” + “R” and type in “ncpa.cpl“.
    Typing in “ncpa.cpl” and pressing “Enter”
  7. Press “Shift” and click on a “LAN” connection and the current “Wifi” connection.
    Pressing shift and clicking on two connections
  8. Click on the “Bridge Connections” option in order to establish a bridge.
    Bridging connections

    Note: If it shows an error, right-click on Wifi and select Properties. Click on “Sharing” and uncheck both options.

  9. Once the bridge is established, open the IP Scanning Application again and click on “Scan”.
  10. A “RaspberryPi” named Connection will show up, copy the IP Address listed in it and paste it in the “Host Name” for PuTTY Configuration.
  11. Click on “Open” and check to see if the issue persists.

Solution 2: Executing a CLI Command

It is possible that a misconfiguration has occurred during the login process to Raspberry Pi due to which you cannot log in with an “ssh” command. Therefore, it is recommended to try and log in with the command listed below

$ sudo rm /etc/ssh/ssh_host_* && sudo dpkg-reconfigure openssh-server

Photo of Kevin Arrows

Kevin Arrows

Kevin is a dynamic and self-motivated information technology professional, with a Thorough knowledge of all facets pertaining to network infrastructure design, implementation and administration. Superior record of delivering simultaneous large-scale mission critical projects on time and under budget.

Back to top button

PuTTY provides a convenient way to access servers.

But, things can go wrong when it can’t communicate with the server, and users see an error like “localhost connection refused” in their PuTTY client.

Is this a server side or a client side problem? Well, it can happen at both sides.

At Bobcares we help server owners resolve these errors as part of our Support Services for web hosts.

Today, we’ll discuss the top 5 reasons for this error and how we fix them.

‘localhost connection refused’ error in PuTTY – What’s this?

Users usually use the PuTTY client to access the server remotely through SSH.

A Connection refused error means that the server refused the connection made by the application. In a PuTTY client, users see the below error message when trying to connect to the server.

Putty Fatal Error
Network Error: Connection Refused

And, this means the connection to the SSH host is routed, but the host doesn’t accept that request.

‘localhost connection refused’ error in PuTTY – Causes & Fixes

Now let’s see the main reasons for this error in PuTTY client and how our Support Engineers help customers resolve this problem.

1) Firewall restrictions

Firewall blocking connections from a specific IP address/IP ranges or target SSH ports is one of the common reasons for this error.

We’ve seen cases in which the IP address or IP range of the customer is blocked on the server due to an abnormal behavior.

Similarly, server owners switch the default SSH port to a custom one, but failed to open that port on the server.

How we fix?

Firstly, our Hosting Engineers check that the IP address of the user is blocked in the server firewall. For example, we use the following command to check the rules in iptables firewall.

iptables -nL

And if it’s blocked, we unblock that IP address and restore the connectivity immediately. After that, we check the server logs to identify the reason for the block.

In addition to that, we check the connectivity to the SSH port with the telnet command.

telnet xx.xx.xx.xx 22

If we find any firewall rules that interfere with the connection to the SSH port, we’ll remove that rule from the firewall configuration.

For example, if we see a DROP or REJECT rule on SSH port for all connections, we’ll remove that rule from the firewall. Further, we edit the firewall configuration to accept all connections to the SSH port.

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

2) Service Downtime

Similarly, another common reason for this error is that the SSH service is not running or the SSH server is broken.

In other words, SSH service uses sshd daemon to process incoming connections, authentication requests, etc. If this service fails, the PuTTY SSH client can’t communicate with the SSH server, resulting in ‘localhost connection refused‘ error.

How we fix?

The reason for service failure could be disk errors, resource outages, traffic spikes, etc. Our Hosting Engineers determine if the SSH service is listening using the netstat command.

If the service fails or doesn’t respond, we kill the dead process and restart the service. For example, we use the following command for restarting the SSH service on CentOS 7 servers.

systemctl restart sshd

Most importantly, we identify the reason for the service downtime and fix it permanently.

3) Custom SSH port

Standard SSH ports are prone to attacks. That’s why server owners enable SSH service on custom ports, which are hard to guess.

But, if the users access the server using the wrong port, they will be kicked out of the server with the error ‘localhost connection refused‘.

How we fix?

Inorder to confirm the SSH port, we access the server via Console and check the SSH configuration file /etc/sshd/sshd_config. The Port parameter specifies the SSH port used by the server. Alternatively, we use the netstat command to check the SSH port.

Once we identify the correct port, we check the SSH client details and confirm that custome ruses the correct port.

4) Wrong PuTTY configuration

Similarly, a common mistake we see is that customers configure SSH clients like PuTTY without the necessary parameters. Incorrect Host or IP address, SSH port, connection type, username, key file, etc. can block the connection to the server.

In addition to that, we see customers using wrong IP address or the IP address conflicts with the other server. In other words, multiple servers assigned with the same IP address. This can also result in connection problems.

How we fix?

Our Hosting Engineers get the PuTTY configuration details from the customer. And, we ensure that the Hostname/IP address, username, SSH port, connection type, etc. are correct.

Further, we use tools like nmap to identify the servers running on the network. If we find any IP conflicts, we change the IP address of the server after checking with the customer.

5) Incorrect SSH key

Similarly, most users prefer to use key based authentication instead of password authentication to improve the security of the account.

However, a wrong private key or incorrect permissions of the SSH key pair can sometimes block users.

How we fix?

To confirm if private key is causing problem, we create a new key pair and connect to the server. If this works, we update the customer to create a new key pair and connect to the server.

Similarly, our Hosting Engineers check the permission and ownership of the key files in .ssh folder. If any permission or ownership issues are noted, we’ll immediately correct them. Most importantly, we ensure correct permissions for .ssh/authorized_keys file, because it’s where the public key is stored.

Conclusion

In short, localhost connection refused error in PuTTY client can occur due to firewall restrictions, service downtime, and more. Today, we’ve discussed the top 5 reasons for this error and how our Support Engineers fix them.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

SEE SERVER ADMIN PLANS

var google_conversion_label = «owonCMyG5nEQ0aD71QM»;

When on windows you usually use putty to connect to remote SSH servers or terminal when on Linux. While connecting sometimes you can get error such as localhost connection refused on putty or your Linux terminal. Now, this can be very annoying as you can’t get to SSH of your remote server and perform your tasks.

This problem can be from the server or client-side. In this tutorial, we will see probable causes of this error and how to fix them. If you are using our managed vps, then you just have to contact us via ticket or live chat and we should fix this for you.

Let’s continue and see reasons for this error and how to resolve localhost connection refused.


Possible error messages on Putty or Linux Terminal

We will first see possible error messages that you will see.

In putty

Putty Fatal Error
Network Error: Connection Refused

On Linux Terminal

ssh: connect to host 51.xx.xx.xx port 22: Connection timed out

Now the connection to the server is properly routed, but the server is not accepting your connection for many reasons that we will discuss below.


Reasons and Fixes for localhost connection refused

We will now discuss reasons and fixes for this error one by one.

1. SSHD Daemon not running

It is possible that SSHD daemon on your remote server is not running. For SSH to work there is a daemon that works behind the scene and it is called SSHD. If this daemon is not running your server will not be able to accept SSH incoming connections. Check if this service is running or not:

systemctl status sshd

If it is not running you can turn it on:

systemctl start sshd

SSHD does not start?

Now for some reasons if your SSHD daemon still won’t start make sure you have enough disk space using:

df -h

If you have enough space you can see if your server is receiving heavy traffic or if the server is under heavy load. You can hire our managed vps service as well we offer 3 days free trial (no credit card required)

2. Firewall blocking SSH Port

Most of the time there is some firewall blocking the SSH port. First, see if you can telnet to SSH port 22

telnet 192.xx.xx.xx 22

Then check if you or user IP is blocked on IP Tables firewall

iptables -nL

If IP is listed, you need to unblock this IP to restore connectivity to SSH port 22. There is also a possibility that firewall has dropped or reject rule for SSH port 22, you need to remove that rule and add run following command:

iptables -A input -p tcp –dport 22 -j ACCEPT

If using CyberPanel

If you are using CyberPanel it comes with Firewalld by default unless you have installed CSF. You can go to :8090/firewall/ by default port 22 is opened, if not you can add port 22 there.

If you have installed CSF with CyberPanel, you can use csf.allow file to allow this IP. The file is located at

nano /etc/csf/csf.allow

Then turn off and turn on CSF again from CyberPanel interface.

3. Custom SSH Port

If you have defined a custom port for SSH (for security reasons, because standard SSH ports are prone to brute force attacks). Then you need to open that port on the firewall as well. Because firewall doesn’t know you choose a custom port for SSH.

First, confirm if you are using custom port using

cat /etc/sshd_sshd_config | grep Port

If you see something other then port 22, you need to fix it.

iptables -A input -p tcp –dport custom_port_here -j ACCEPT

Replace with custom port here.

If using CyberPanel

Go here :8090/firewall/secureSSH and see if you have set custom ssh port. Normally if you set custom SSH port, CyberPanel will open this port for you on the firewall. But if it still does not work, you can open this port manually by going to :8090/firewall/ or here :8090/firewall/csf if you are using CSF.

4. Incorrect IP, SSH Port or Key File

It is also possible that you did a human error and used incorrect IP or wrong SSH port. Make sure you are using right IP on putty or Linux terminal along with the correct SSH port.

Sometimes people also use key-based authentication, and they get issues while connecting to SSH if the wrong private key is used or there are wrong permissions on your SSH private key. On your local server make sure that your private key has the permission of 600.


Why use CyberPanel?

We’ve discussed many reasons and fixes for localhost connection refused error. But we recommend that you install CyberPanel on your VPS, it will help you solve many issues and if you are hosting sites then you will get super speed as well because CyberPanel is based on OpenLiteSpeed and LiteSpeed Enterprise.

You will get easy access to Firewalld (installed by default) where you can easily open/close any ports at your wish. Or you can also install CSF too.

If you are a very novice user you can also hire our managed vps service, we are super affordable and provide top-notch support to all our customers. You can start with 3 days trial (no credit card required at all).

Понравилась статья? Поделить с друзьями:
  • Putty network error network is unreachable
  • Pygame error text has zero width
  • Putty network error connection timed out что это 22 порт
  • Pygame error out of memory
  • Pygame error no video mode has been set