최근에 내 서버(햄 라디오 노드를 연결하는 인터넷)에 SSH를 시도했는데 방금 방송이 돌아왔습니다.
ssh를 쳤어요[이메일 보호됨]ifconfig eth0으로 확인된 내 컴퓨터 주소는 무엇입니까?
물론 연결 거부가 나타납니다.
전에도 이 문제가 있었는데, ifconfig를 실행하여 올바른 IP를 찾아 문제를 해결했습니다. 지금 실행했는데 올바른 LAN IP를 얻었습니다.
내가 한 일의 단계는 다음과 같습니다.
•라우터 구성에서 IP를 컴퓨터의 MAC 주소로 설정했습니다. 제 경우에는 10.0.1.9입니다.
• ifconfig eth0을 실행했는데 화면에 10.0.1.9로 표시되었습니다.
•모든 포트를 전달했습니다(LAN 통신에는 필요하지 않지만).
•/etc/ssh/sshd_config에서 222에서 22로 변경했습니다.
•컴퓨터를 여러 번 재부팅했습니다.
•SSH공장반대로 SSH를 입력하면 CentOS 서버 컴퓨터에서 내 컴퓨터에 로그인할 수 있습니다.
첨부된 내용은 내 라우터 구성의 스크린샷입니다.
ps aux |grep sshd
반환
root 2923 0.0 0.0 4032 692 tty1 S+ 07:15 0:00 grep sshd
내 SSHD 파일:::
i# $OpenBSD: sshd_config,v 1.73 2005/12/06 22:38:28 reyk 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:/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 change a
# default value.
Port 22
#Protocol 2,1
Protocol 2
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
# 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
# Lifetime and size of ephemeral version 1 server key
#KeyRegenerationInterval 1h
#ServerKeyBits 768
# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO
# Authentication:
#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#RSAAuthentication yes
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys
# 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 yes
# Change to no to disable s/key passwords
#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no
# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
# GSSAPI options
#GSSAPIAuthentication no
GSSAPIAuthentication yes
#GSSAPICleanupCredentials yes
GSSAPICleanupCredentials yes
# 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 mechanism.
# Depending on your PAM configuration, this may bypass the setting of
# PasswordAuthentication, PermitEmptyPasswords, and
# "PermitRootLogin without-password". If you just want the PAM account and
# session checks to run without PAM authentication, then enable this but set
# ChallengeResponseAuthentication=no
#UsePAM no
UsePAM yes
# Accept locale-related environment variables
AcceptEnv LANG LANGUAGE 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
#AllowTcpForwarding yes
#GatewayPorts no
#X11Forwarding no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes
#UseLogin no
#UsePrivilegeSeparation yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#ShowPatchLevel no
#UseDNS yes
#PidFile /var/run/sshd.pid
#MaxStartups 10
#PermitTunnel no
#ChrootDirectory none
# no default banner path
#Banner /some/path
# override default of no subsystems
Subsystem sftp /usr/libexec/openssh/sftp-server
업데이트 서비스 SSHD 시작을 실행했는데 오류가 발생했습니다.
sshd 시작 중: /etc/ssh/sshd_config: 1행: 잘못된 구성 옵션: i /etc/ssh/sshd_config: 종료 중, 잘못된 구성 옵션 1개 [실패]
답변1
바보같아, 문제를 발견했어. 내 구성 파일에서 볼 수 있듯이 SSHD_Config의 첫 번째 주석 바로 앞에 "i"라는 문자가 있었습니다.
응, 작동해
답변2
오늘(2016년 1월 27일)에도 같은 문제에 직면했습니다! 루트로 호스트에 SSH를 연결하고 싶었지만 거부되었습니다. 나는 웹을 샅샅이 뒤져 많은 제안을 시도했지만 성공하지 못했습니다. 그런 다음 새 사용자 "xyz"를 만들고 "xyz"로 ssh를 시도했는데 가능했습니다! 이로 인해 sshd가 문제가 아니라는 것을 깨달았습니다. 루트에만 이 문제가 있을 수 있습니다. 따라서 /etc/ssh/sshd_config 파일을 확인한 결과 "PermitRootLogin"이 "no"로 설정되어 있음을 확인했습니다. 나는 그것을 주석 처리하고 "sshd"를 다시 시작했습니다.
[root@yav-031 ~]# cat /etc/ssh/sshd_config|grep -i permit
#PermitRootLogin yes
#PermitEmptyPasswords no
# the setting of "PermitRootLogin without-password".
#PermitUserEnvironment no
#PermitTunnel no
#PermitRootLogin no <----------In my case this was NOT commented out
[root@yav-031 ~]#
# service sshd restart
그런 다음 루트로 다시 로그인을 시도하면 성공적으로 로그인할 수 있습니다!!! 이 사이트는 내가 '올바른 방향'으로 생각하는 데 도움이 되었기 때문에 여러분과 공유하려고 생각하여 이 메모를 작성했습니다. 감사합니다, -뎁
답변3
.NET의 포트 설정 외에도 더 많은 것이 있습니다 /etc/ssh/sshd_config
.
예를 들어 필드는 AllowUsers
sshd 사용을 제한할 수 있습니다.
sshd_config에 대한 매뉴얼 페이지를 읽으십시오:
man sshd_config
그래도 이해가 되지 않는다면 전체 내용을 게시하세요./etc/ssh/sshd_config
답변4
ps에 따르면 ssh가 실행되고 있지 않아 연결 거부 오류가 발생합니다.
SSH 데몬을 시작하면 service sshd start
시작되어야 하며 서버에 SSH로 접속할 수 있어야 합니다.