【2026年最新】AlmaLinux 9にTera TermでSSH接続できない!「認証失敗」「タイムアウト」完全解決ガイド

「真っ黒な画面」のまま動かないTera Term。その原因は「進化」にあり。

こんにちは!「LINUX工房」管理人の「リナックス先生」です。
サーバーOSとして不動の地位を築いた AlmaLinux 9
安定性が高く、2032年までの長期サポートがあるため、多くのエンジニアがCentOS 7からの移行先として選んでいます。

しかし、インストールしていざWindowsから Tera Term で接続しようとすると、トラブルに見舞われる人が後を絶ちません。

「接続しようとすると『認証に失敗しました』と出る」
「ユーザー名とパスワードは合っているはずなのに弾かれる」
「そもそもウィンドウが真っ黒で何も表示されない」

これは単なる設定ミスではありません。
2026年の今、AlmaLinux 9が採用している「最新のセキュリティ基準」に、あなたの知識やツールが追いついていない可能性が高いのです。

コウ君

先生、またハマりました……。
新しく立てたAlmaLinux 9のサーバーに、いつものTera Term(昔から使ってるやつ)で繋ごうとしたんです。
でも、パスワードを入れても「認証失敗」って言われるし、鍵認証に変えてもダメで……。
CentOS 7の時はこんなことなかったのに、何が違うんですか!?

リナックス先生

コウ君、その「昔から使ってるTera Term」が一番怪しいわね。
AlmaLinux 9(RHEL 9互換)からは、「古い暗号方式(SHA-1など)」がデフォルトで廃止されたの。
つまり、昔の常識で鍵を作ったり、古いソフトを使ったりしていると、門前払いされるのよ。
今回は、Tera Termのバージョンアップからサーバー内部の設定まで、2026年基準のトラブルシューティングを徹底的にやるわよ!

本記事では、AlmaLinux 9.x系とTera Term 5.x系(2026年標準)の環境において、SSH接続ができない原因を突き止め、解決するための全手順を網羅します。

🔧 本記事の対象環境

  • サーバーOS: AlmaLinux 9.5 / 9.6 (OpenSSH 8.7p1以上)
  • クライアント: Windows 11 (Tera Term 5.2以上)
  • ネットワーク: 家庭内LAN / 社内LAN / VPS

第1章:まずは診断。エラーメッセージが語る真実

「繋がらない」と一言で言っても、その状況は様々です。
Tera Termの画面に何が表示されたか、あるいはどれくらいの時間がかかったかで、原因を大きく3つに分類できます。

パターンA:即座に「接続が拒否されました」

接続ボタンを押した瞬間にエラーが出る場合。

  • 意味: サーバーのそのポート(22番)に誰もいない、または明示的に拒否された。
  • 疑う場所: SSHサービス(sshd)が動いていない、ポート番号が違う。

パターンB:長時間待たされて「タイムアウト」

「ホストに接続中…」のまま数十秒固まり、最後にエラーが出る場合。

  • 意味: サーバーに辿り着けていない、またはファイアウォールで無視されている。
  • 疑う場所: IPアドレス間違い、ファイアウォール(Firewalld/ルーター)、物理的な配線。

パターンC:「認証に失敗しました」

接続はできたが、ユーザー名とパスワード(または鍵)を入れた後に弾かれる場合。

  • 意味: サーバーとは話せているが、鍵が合わない、パスワードが違う、セキュリティポリシーに違反している。
  • 疑う場所: パスワード入力ミス、公開鍵の形式(RSA/SHA-1問題)、SELinux、sshd設定。

特にAlmaLinux 9で多いのは「パターンC」です。
ここからは、各パターンに対応する解決策を順に解説します。


第2章:【最重要】Tera Termのバージョンと「RSA/SHA-1」問題

AlmaLinux 9への接続トラブルで、最も多い原因がこれです。
もしあなたが「Tera Term 4.x」を使っているなら、今すぐ捨ててください。

なぜTera Term 4ではダメなのか?

AlmaLinux 9(RHEL 9)は、システム全体の暗号化ポリシーとして「SHA-1(シャワン)」という古いハッシュアルゴリズムを廃止しました。
しかし、古いTera Term(4.106以前など)や、昔作ったRSA鍵は、署名に「ssh-rsa (SHA-1)」を使おうとします。

その結果、サーバー側が「そんな危険な署名は受け取れない」と拒否し、認証エラーになります。

解決策1:Tera Term 5.x へアップデートする

2026年現在、Tera Termの最新版はバージョン5系です。
Tera Term 5は新しい署名方式(rsa-sha2-256 / rsa-sha2-512)に対応しているため、既存のRSA鍵そのままでも接続できる可能性が高いです。

  1. GitHubのリリースページ(または公式サイト)から最新のインストーラをダウンロード。
  2. 上書きインストールでOKです。設定ファイル(TERATERM.INI)は引き継がれます。

解決策2:ED25519鍵に作り直す(推奨)

RSA鍵自体がもう「レガシー」になりつつあります。
2026年の標準である「ED25519」形式で鍵を作り直すのが、最も確実で安全な解決策です。

Tera Termでの作成手順:

  1. Tera Termを起動し、「設定」→「SSH鍵生成」をクリック。
  2. 鍵の種類で「ED25519」を選択(256bit固定)。
  3. 「生成」をクリックし、パスフレーズを入力して保存。
  4. 公開鍵(.pub)をサーバーの ~/.ssh/authorized_keys に登録。

これで、「RSAだから繋がらない」という問題とは無縁になります。

💡 どうしても古いTera Termを使う場合
社内規定などでバージョンアップできない場合、サーバー側のセキュリティレベルを下げる方法もあります(第6章で解説)が、セキュリティリスクが高まるため非推奨です。


第3章:【ネットワーク】IPアドレスとFirewalldの鉄壁

「タイムアウト」する場合や、そもそも繋がらない場合の確認ポイントです。
AlmaLinux 9は、デフォルトでファイアウォール(Firewalld)が有効になっています。

1. IPアドレスの確認

サーバーの実機(コンソール)で以下のコマンドを打ちます。

ip addr show

ens160eth0 などのインターフェースに、inet 192.168.x.x というIPアドレスが表示されていますか?
もし表示されていなければ、ネットワーク未接続です。
nmtui コマンドを使って、ネットワーク設定(Activate a connection)を行ってください。

2. Firewalldの状態確認

ファイアウォールがSSHのポート(22番)を通しているか確認します。

sudo firewall-cmd --list-all

出力結果の services: の欄に ssh が含まれているか確認してください。
さらに、ports: の欄に、もし変更したポート番号(例: 2222/tcp)があればOKです。

もしSSHが許可されていない場合(最小インストールなど)、以下のコマンドで許可します。

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

3. Windows側のPing確認

WindowsのPowerShellを開き、サーバーへPingを飛ばしてみます。

ping 192.168.1.10

(IPは実際のサーバーのものに置き換えてください)
これで「要求がタイムアウトしました」となる場合、SSH以前にネットワークが繋がっていません。
サーバーの電源、LANケーブル、またはWindows側のファイアウォール設定(パブリックネットワークになっていないか)を確認してください。


第4章:【サーバー設定】sshd_configと「rootログイン禁止」の罠

「認証失敗」になる場合、サーバー側の設定で「そもそもログインを禁止されている」可能性があります。

1. rootログインの制限

AlmaLinux 9のデフォルト設定では、「rootユーザーでのパスワードログイン」が禁止されている場合があります。
(セキュリティ的には正しい設定です)

設定ファイルを確認します。

sudo vi /etc/ssh/sshd_config

以下の行を探します。

PermitRootLogin prohibit-password

この設定の場合、rootは「鍵認証」でしか入れません。
構築中でどうしてもrootでパスワードログインしたい場合は、一時的に以下のように変更します。

PermitRootLogin yes

変更後は必ずサービスを再起動してください。

sudo systemctl restart sshd

2. パスワード認証の無効化

VPSやクラウドで作成した場合、最初から「PasswordAuthentication no」(パスワード認証禁止)になっていることがあります。
この場合、インスタンス作成時に登録した「SSH鍵」を使わない限り、絶対に入れません。

一般ユーザーを作ってパスワードで入りたい場合は、以下の行を確認・修正します。

PasswordAuthentication yes

3. AllowUsers制限

セキュリティを意識して AllowUsers を設定していませんか?
ここに自分のユーザー名が含まれていないと、正しいパスワードを入れても「認証失敗」になります。


第5章:【公開鍵認証】パーミッション地獄とSELinux

鍵認証を設定したのに「Server refused our key(サーバーが鍵を拒否しました)」と言われる。
この原因の9割は「パーミッション(権限)」または「SELinux」です。

1. 「600」と「700」の鉄則

SSHは非常に神経質です。
「自分以外の誰かが書き込める状態の鍵ファイル」は、セキュリティリスクとみなして無視します。

サーバーに(コンソール等で)ログインし、以下の権限になっているか確認してください。

対象 パス 必須パーミッション 確認コマンド
ホーム ~ (/home/user) 700 または 755 ls -ld ~
設定フォルダ ~/.ssh 700 (drwx——) ls -ld ~/.ssh
鍵リスト ~/.ssh/authorized_keys 600 (-rw——-) ls -l ~/.ssh/authorized_keys

もし違っていたら、以下のコマンドで修正します。

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

また、所有者が自分であることも確認しましょう。

chown user:user ~/.ssh -R

2. SELinuxのコンテキスト不一致

AlmaLinuxなどのRHEL系特有の罠が SELinux です。
手動で .ssh ディレクトリを作ったり、ホームディレクトリ以外の場所に鍵を置いたりすると、SELinuxのラベル(Context)が付与されず、sshdがファイルを読み取れないことがあります。

診断: 一時的にSELinuxを無効化して試す。

sudo setenforce 0

これで接続できたなら、犯人はSELinuxです。

解決策:
正しいコンテキストを適用し直します。(SELinuxを無効のままにするのは推奨されません)

sudo restorecon -Rv ~/.ssh

その後、sudo setenforce 1 でSELinuxを有効に戻します。


第6章:【最終奥義】ログ解析とcrypto-policiesの変更

ここまでやってもダメな場合、ログを見て原因を特定するか、セキュリティレベルを下げるかの二択になります。

1. 認証ログの確認

SSHの接続エラーの理由は、/var/log/secure にすべて記録されています。
サーバー側で以下のコマンドを実行しながら、Tera Termから接続を試みてください。

sudo tail -f /var/log/secure

よくあるログメッセージと意味:

  • userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms
    → 第2章で解説した「RSA/SHA-1問題」です。鍵を作り直すか、ポリシーを変更してください。
  • Authentication refused: bad ownership or modes for directory
    → 第5章のパーミッション問題です。
  • Failed password for invalid user
    → ユーザー名が間違っています。

2. 暗号化ポリシーを「LEGACY」に戻す(非推奨)

どうしても古いTera Termや古い鍵を使わなければならない事情がある場合、AlmaLinux側のセキュリティポリシーを、CentOS 7時代と同等レベルまで下げることができます。

現在のポリシーを確認:

update-crypto-policies --show

通常は DEFAULT です。
これを LEGACY に変更します。

sudo update-crypto-policies --set LEGACY

変更後、再起動が必要です。

sudo reboot

これで古いSHA-1署名のRSA鍵も受け入れられるようになりますが、セキュリティレベルは著しく低下するため、あくまで一時的な措置としてください。


まとめ:AlmaLinux 9は「セキュリティ」との戦い

お疲れ様でした。
AlmaLinux 9でSSH接続できないトラブルの多くは、OSの不具合ではなく「正当なセキュリティ強化」によるものです。

解決のためのチェックリスト:

  1. クライアント: Tera Term 5.x を使っているか?
  2. 鍵: RSAではなくED25519を使っているか?
  3. ネットワーク: IPアドレスは正しいか? Firewalldは許可されているか?
  4. 権限: .ssh は700、authorized_keys は600になっているか?
  5. ログ: /var/log/secure にヒントが出ていないか?
リナックス先生

SSHが繋がらないと何も始まらないけど、一度繋がればこっちのものよ。
特に「RSA/SHA-1廃止」は、これから数年のLinux界隈でずっとついて回る話題だから、今のうちに「ED25519」に移行する癖をつけておいてね。
さあ、無事にログインできたら、次はサーバー構築の本番よ!

▼ サーバー構築を極める ▼

安定したAlmaLinux環境を
「おすすめVPS」

VPSランキングを見る

インフラエンジニアへ
「ITエンジニア転職」

転職エージェントを見る

コメント