再起動後、SSH経由でログインできません!

再起動後、SSH経由でログインできません!

systemctl enable ufw; systemctl start ufw私はufwを使って「」と「」でファイアウォールを開きますufw enable。その後、ufw default deny incoming着信トラフィックをブロックするために「」に設定しました。また、SSH接続を許可します。今まではそんなに良くなった。 SSH経由でサーバーにログインできると確信しています。しかし、再起動すると、ssh経由でログインできなくなります。私はufw次のように確認しました。

# ufw status
Status: active

To                         Action      From
--                         ------      ----
192.168.0.120 22/tcp       ALLOW       Anywhere
# systemctl status ufw
● ufw.service - Uncomplicated firewall
Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor
preset: enabled)
Active: active (exited) since Fri 2019-07-12 17:43:24 CST; 2min 36s ago
Docs: man:ufw(8)
Process: 241 ExecStart=/lib/ufw/ufw-init start quiet (code=exited,
status=0/SUCCESS)
Main PID: 241 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
CGroup: /system.slice/ufw.service

ufw確かに有効になっています。その後、最初と同様にSSH接続を再び許可しました。その後、vis sshに再度ログインできます。私はこれが正常ではないと思います。

しかし、どのように解決するのかわかりませんか?

修正する


# systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor
preset: enabled)
Active: failed (Result: exit-code) since Mon 2019-07-15 11:53:22
CST; 2min 19s ago
Process: 603 ExecStart=/usr/sbin/sshd -D $SSHD_OPTS (code=exited, status=255)
Process: 537 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
Main PID: 603 (code=exited, status=255)
Jul 15 11:53:22 debian systemd[1]: Starting OpenBSD Secure Shell server...
Jul 15 11:53:22 debian systemd[1]: ssh.service: Main process exited,
code=exited, status=255/n/a
Jul 15 11:53:22 debian systemd[1]: Failed to start OpenBSD Secure Shell server.
Jul 15 11:53:22 debian systemd[1]: ssh.service: Unit entered failed state.
Jul 15 11:53:22 debian systemd[1]: ssh.service: Failed with result 'exit-code'

# cat /etc/ssh/sshd_config:
Port 22
ListenAddress 192.168.0.120
KbdInteractiveAuthentication no
ChallengeResponseAuthentication no
PermitRootLogin yes
AllowTcpForwarding no
AllowStreamLocalForwarding no
GatewayPorts no
PermitTunnel no
AllowUsers arcstor root
Compression yes
PubkeyAuthentication no
PasswordAuthentication yes

答え1

SSHの状態を確認してください。

# systemctl status ssh

サービスが「無効」になっている場合:

# systemctl enable ssh #enable run on startup
# systemctl start ssh #start it right now

開始されなかった理由に関するエラーが発生した場合:

# journalctl -u ssh

そこでなぜ始まらないのかを理解し、それに応じて対策を講じる必要があります。

すべてのアドレスでSSHを許可するようにufwを設定することもできます。

# ufw enable ssh

編集:コメントに返信:

起動しませんが、理由を理解していません。 192.168.0.120 このSSH経由で接続するデバイスのIPアドレスですか? DHCPによって変更された可能性はありますか? 「ipアドレス」で確認できます。 SSHサーバーにIPが1つしかない場合、この設定は実際には必要ありません。IPが変更されると問題が発生します。

パッケージを削除して再インストールすることをお勧めします。これが基本的な作業環境を得るための最速の方法です。ただし、パッケージを削除するときは、構成も削除する必要があります。 Ubuntu(およびその他のDebian派生製品)では、「apt Remove ssh」に「--purge」を追加し、distroに似たものを見つけます。アンインストール/再インストール後は、以前の設定があってはならず、デフォルト設定を再度追加できます。

 $ sudo apt remove --purge ssh

TO以外の接続するIPアドレスを一覧表示するには、以下のリンクに解決策があります。これにより、他のIPではなく特定のIPからのみ接続を許可できます(ufwはiptablesを囲むラッパーであるため、このコマンドはufwコマンドと同じ効果を持ちます)。 TO IPを追加する場合、そのIPはホストSSHデバイスのIPでなければなりません。つまり、私たちが変更したいデバイスのIPが1つしかない場合は理解できません。接続を許可するか、またはいいえ。 SSHサーバーはより多くのIPアドレスを使用し、一部のアドレスはSSH接続を許可し、他のアドレスは許可したくない場合があります。

IP アドレスに特定のクライアントへの SSH アクセスを制限します。

答え2

Linuxサーバーを再起動した後に問題が発生しました。サーバーの仮想 IP で SSH を接続できず、接続が拒否されましたが、物理 IP で SSH を接続できるため、物理 IP にログインし、再起動後にサービス sshd を実行します。ログインの問題が修正されました。

関連情報