「真っ黒な画面」のまま動かない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鍵そのままでも接続できる可能性が高いです。
- GitHubのリリースページ(または公式サイト)から最新のインストーラをダウンロード。
- 上書きインストールでOKです。設定ファイル(TERATERM.INI)は引き継がれます。
解決策2:ED25519鍵に作り直す(推奨)
RSA鍵自体がもう「レガシー」になりつつあります。
2026年の標準である「ED25519」形式で鍵を作り直すのが、最も確実で安全な解決策です。
Tera Termでの作成手順:
- Tera Termを起動し、「設定」→「SSH鍵生成」をクリック。
- 鍵の種類で「ED25519」を選択(256bit固定)。
- 「生成」をクリックし、パスフレーズを入力して保存。
- 公開鍵(.pub)をサーバーの
~/.ssh/authorized_keysに登録。
これで、「RSAだから繋がらない」という問題とは無縁になります。
💡 どうしても古いTera Termを使う場合
社内規定などでバージョンアップできない場合、サーバー側のセキュリティレベルを下げる方法もあります(第6章で解説)が、セキュリティリスクが高まるため非推奨です。
第3章:【ネットワーク】IPアドレスとFirewalldの鉄壁
「タイムアウト」する場合や、そもそも繋がらない場合の確認ポイントです。
AlmaLinux 9は、デフォルトでファイアウォール(Firewalld)が有効になっています。
1. IPアドレスの確認
サーバーの実機(コンソール)で以下のコマンドを打ちます。
ip addr show
ens160 や eth0 などのインターフェースに、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の不具合ではなく「正当なセキュリティ強化」によるものです。
解決のためのチェックリスト:
- クライアント: Tera Term 5.x を使っているか?
- 鍵: RSAではなくED25519を使っているか?
- ネットワーク: IPアドレスは正しいか? Firewalldは許可されているか?
- 権限:
.sshは700、authorized_keysは600になっているか? - ログ:
/var/log/secureにヒントが出ていないか?
SSHが繋がらないと何も始まらないけど、一度繋がればこっちのものよ。
特に「RSA/SHA-1廃止」は、これから数年のLinux界隈でずっとついて回る話題だから、今のうちに「ED25519」に移行する癖をつけておいてね。
さあ、無事にログインできたら、次はサーバー構築の本番よ!
▼ サーバー構築を極める ▼
安定したAlmaLinux環境を
「おすすめVPS」
インフラエンジニアへ
「ITエンジニア転職」


コメント