Debian kaliでsshに接続しようとすると、次のエラーが発生しました。
SSH:ホストlocalhostポート22に接続:接続が拒否されました
バックグラウンド :
私はsshをdebianで接続しようとしていましたが、kali 2.0 sanaを使用しています
私が試した/したこと:
`apt-get install openssh-server`
インストールされたopenssh-serverとその最新
クエリされたサービスssh status
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled)
Active: active (running) since Wed 2015-09-23 17:20:36 IST; 36min ago
Main PID: 1594 (sshd)
CGroup: /system.slice/ssh.service
└─1594 /usr/sbin/sshd -D
Dpkg-reconfigure openssh-serverを再構成すると、成功にもつながります
今私は接続しようとしましたssh root@localhost
これはroot @ localhostパスワードを必要とするので、私がしたことは
vi /etc/ssh/sshd_config
およびrootログインを拒否するコマンドを追加しました:
次のように私のsshd_config:
What ports, IPs and protocols we listen for Port 22
#Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0 Protocol 2
# 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
#Privilege Separation is turned on for security UsePrivilegeSeparation yes
再び「ssh root @ localhost」経由でsshに接続しようとしましたが、connect to Host localhost port 22: Connection refused
私のiptables
はそれを妨げている可能性がありますが、次のように構成されています:
vim /root/firewall.rules
root@vignesh:~# iptables-save > /root/firewall.rules
root@vignesh:~# iptables -X
root@vignesh:~# iptables -t nat -F
root@vignesh:~# iptables -t nat -X
root@vignesh:~# iptables -t mangle -F
root@vignesh:~# iptables -t mangle -X
root@vignesh:~# iptables -P INPUT ACCEPT
root@vignesh:~# iptables -P FORWARD ACCEPT
root@vignesh:~# iptables -P OUTPUT ACCEPT
root@vignesh:~# iptables-save > /root/firewall.rules
そして、私はiptables-save
# Generated by iptables-save v1.4.21 on Wed Sep 23 18:50:34 2015
*mangle
:PREROUTING ACCEPT [41217:4171959]
:INPUT ACCEPT [27727:3255690]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1834:219528]
:POSTROUTING ACCEPT [1835:219654]
COMMIT
# Completed on Wed Sep 23 18:50:34 2015
# Generated by iptables-save v1.4.21 on Wed Sep 23 18:50:34 2015
*nat
:PREROUTING ACCEPT [15456:1179155]
:INPUT ACCEPT [1858:255303]
:OUTPUT ACCEPT [223:14078]
:POSTROUTING ACCEPT [223:14078]
COMMIT
# Completed on Wed Sep 23 18:50:34 2015
# Generated by iptables-save v1.4.21 on Wed Sep 23 18:50:34 2015
*filter
:INPUT ACCEPT [26756:3173280]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1775:215770]
COMMIT
チェックされたコメントの通り
root@vignesh:~# netstat -an | grep 22
tcp 0 0 10.100.8.40:54036 216.58.220.46:80 ESTABLISHED
tcp 0 0 10.100.8.40:41573 216.58.220.14:80 ESTABLISHED
unix 3 [ ] STREAM CONNECTED 17722 @/tmp/dbus-JUNz9GwSon
unix 3 [ ] STREAM CONNECTED 13422
unix 3 [ ] STREAM CONNECTED 17224
unix 3 [ ] STREAM CONNECTED 17422
unix 2 [ ] DGRAM 9222
unix 3 [ ] STREAM CONNECTED 17221 /var/run/NetworkManager/private
unix 3 [ ] STREAM CONNECTED 17225 /var/run/NetworkManager/private
unix 3 [ ] STREAM CONNECTED 17229
unix 3 [ ] STREAM CONNECTED 17220
もう一度試してみましたssh root@localhost
ですが、再びエラーが発生しました。
パーツが欠けている場所を教えてください。どうすれば接続できますか?
netstat
の出力は、ポート22
をリッスンしているプロセスがないことを示しています。これは、SSHを試行するときにConnection refused
を取得する理由を説明しています。
status
デーモンに関するsshd
情報は実行中を示していますが、リスニングポートが関連付けられていません(または関連付けられていないようです)。
さらに、コメントで教えられたように、sshd_config
ファイルは正しくないようです。 rootログインを無効にしたいので、SSHデーモンの構成を提案します。
/etc/ssh/sshd_config
ファイルを編集して、次のコンテンツを入れます。
Port 22
Protocol 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
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 1024
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
PermitRootLogin no
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes
ClientAliveInterval 30
ClientAliveCountMax 99999
セキュリティが心配な場合は、SSHを必要なユーザーだけに制限できます。たとえば、ユーザーvignesh
だけがSSHを実行できるように制限する場合は、次のような別のディレクティブを追加できます。
AllowUsers vignesh
その後、単にsshd
サービスを再起動します。完了したら、netstat -atpn | grep 22
を実行すると、ポート22
がすべてのユーザーをリッスンしていることがわかります。
この行を実際に追加したのか、コメントを外したのかわかりません。ポート22
Sshd_configでポートが指定されていない場合、sshdはどのポートでも待機しません。 netstatからの出力を考えると、これはおそらく問題です。
最初にrootアカウントにパスワードが設定されていることを確認してください rootにパスワードがない場合は、Sudo passwd root
を実行してから、rootの新しいパスワードを入力します。
次に、-v
オプションを使用してSSHで詳細な出力を行うことができます。
ssh root@localhost -v
それでも接続が拒否される場合は、ssh root@localhost -v
コマンドの出力を投稿してください。
手順:
サーバー1のIPが192.x.x.1
およびサーバー2のIPは192.x.x.2
サーバー1で:
ssh-keygen -t rsa
cd .ssh
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
今ssh server2.com
またはssh 192.x.x.2
接続エラーが発生した場合(SSH ::
)、次に/etc/hosts
両方のサーバー上のファイルには、SERVER1とSERVER2のIPが必要です。両方のサーバーのエントリが含まれていない場合は、この/etc/hosts
ファイルにIPアドレスのホスト名などが設定されている両方のサーバー上にあり、問題が解決するかどうかを確認します。
同じエラーが発生し、両方のホストファイルのIPを変更することで解決します。
今日私に起こりました。これによると link 、「Kali LinuxにはSSHが有効になっていません」