Auf Server kann nicht gesendet werden: Keine unterstützten Authentifizierungsmethoden verfügbar

1

Nachdem ich einige Tipps aus verschiedenen Blogs zum Sichern von SSH-Verbindungen zu einem Server ausprobiert habe, kann ich jetzt nicht auf meinen Server zugreifen. Ich erhalte diese Fehlermeldung:

(Getrennt: Keine unterstützten Authentifizierungsmethoden verfügbar (Server gesendet: publickey, gssapi-keyex, gssapi-with-mic))

Dies ist meine Konfigurationsdatei für sshd:

#       $OpenBSD: sshd_config,v 1.93 2014/01/10 05:59:19 djm Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
Port 7777
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

# The default requires explicit activation of protocol 1
Protocol 2

# HostKey for protocol version 1
#HostKey /etc/ssh/ssh_host_key
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

# Lifetime and size of ephemeral version 1 server key
#KeyRegenerationInterval 1h
#ServerKeyBits 1024

# Ciphers and keying
#RekeyLimit default none

# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO

# Authentication:

#LoginGraceTime 2m
PermitRootLogin no
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

RSAAuthentication yes
PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile      .ssh/authorized_keys

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#RhostsRSAAuthentication no
# similar for protocol version 2
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# RhostsRSAAuthentication and HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no
PasswordAuthentication no
StrictModes no

# Change to no to disable s/key passwords
#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no

# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
#KerberosUseKuserok yes

# GSSAPI options
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no
#GSSAPIEnablek5users no

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
# WARNING: 'UsePAM no' is not supported in Red Hat Enterprise Linux and may cause several
# problems.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes
#UseLogin no
UsePrivilegeSeparation sandbox          # Default for new installations.
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#ShowPatchLevel no
#UseDNS yes
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Accept locale-related environment variables
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS

# override default of no subsystems
Subsystem       sftp    /usr/libexec/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       PermitTTY no
#       ForceCommand cvs server

Ich glaube nicht, dass dies etwas mit SELinux zu tun hat.

Dies ist die Ausgabe für meine .ssh-Ordnerliste:

ls -laZ ~/.ssh/

drwx------. smghanen apache unconfined_u:object_r:ssh_home_t:s0 .
drwx------. smghanen apache unconfined_u:object_r:user_home_dir_t:s0 ..
-rw-------. smghanen apache unconfined_u:object_r:user_home_t:s0 authorized_keys

Wie kann ich das lösen? Und was wären ein paar Tipps, um es noch sicherer zu machen?

Soufiaane
quelle
1
Haben Sie einen Schlüssel generiert und an den Server übergeben, bevor Sie die Kennwortauthentifizierung deaktiviert haben? Versuchen Sie, sich als Benutzer ohne Rootberechtigung anzumelden, und ist es der Benutzer, der über den entsprechenden Schlüssel verfügt? Und haben Sie den Befehl semanage in den Kommentaren oben in der sshd_config ausgeführt?
Kefka
1) Ja, ich habe den Schlüssel generiert und an den Server weitergeleitet, bevor die Kennwortauthentifizierung deaktiviert wurde. 2) Ja, ich versuche, mich als Nicht-Root-Benutzer anzumelden. Ja, der Benutzer hat den passenden Schlüssel. 3) Ja, ich habe ausgeführt Ich glaube nicht, dass es ein Portproblem ist, denn wenn ich einen anderen Port versuche, erhalte ich "Netzwerkfehler, Verbindung abgelehnt" und für den Schlüssel konnte ich mich mit dem Nicht-Root-Benutzer anmelden, bevor dies passierte, als ich Kennwortauthentifizierung deaktiviert und Standardportnummer geändert
Soufiaane

Antworten:

0

Leider habe ich den Speicherort des privaten Schlüssels auf meinem Client geändert und nicht bemerkt, dass er nicht von Pageant geladen wurde

Soufiaane
quelle
0

Mit CentOS7 verwenden Sie firewallcmd. Der beste Weg ist, den firewallcmd-Dienst zu deaktivieren, eine Verbindung herzustellen und bei erfolgreicher Verbindung eine Regel in firewallcmd zu erstellen.

Vitalii Nesterenko
quelle
firewall-cmd --list-all public (Standard, aktiv) Schnittstellen: eth0 Quellen: Dienste: dhcpv6-client SSH-Ports: 7431 / TCP 25672 / TCP 4369 / TCP 8089 / TCP 7432 / TCP 5671-5672 / TCP 7777 / TCP 8883 / tcp 61613-61614 / tcp 15672 / tcp Maskerade: Keine Forward-Ports: ICMP-Blöcke: Rich Rules: Sudo-Semanage-Port -l | grep ssh_port_t ssh_port_t tcp 7777, 22 Ich glaube nicht, dass es ein Port-Problem ist
Soufiaane
"Welches Betriebssystem verwenden Sie?" - Dies ist ein Kommentar und gehört nicht in Ihre Antwort. In Zukunft sollten Sie sich um eine Klärung bemühen, indem Sie einen Kommentar zur Frage des Autors einreichen und Ihre Antwort einreichen, sobald Sie die Klärung erhalten haben.
Ramhound
"Welches Betriebssystem verwenden Sie?" muss nicht in der Antwort enthalten sein, da die ursprüngliche Frage mit einem Tag versehen ist und centos-7der zweite und dritte Absatz die ursprüngliche Frage beantworten.
Karl