おれさまラボ

実際に手を動かして理解を深めるブログ。

VirtualBox上のCentOSにTeratermからssh接続する

しょうもないことではまってたけどやっとできるようになった。

TeratermからSSH接続できない

VirtualBoxなどの仮想環境にCentOSを入れていたわけですが、Teratermでログインできたら便利だなと思っていました。

でもなぜかできない。そもそもOKボタンが押せない。ずっとSSH認証画面のまま。

f:id:naoto408:20151012004005p:plain

 

原因

いろいろと調べました。いろいろダメでした。

そして、最終的に行きついた答えが「ネットワークインターフェースが有効化されていなかった」でした。

なんとしょうもない。

 

立てたばかりのCentOSにアクセスしようとしていたためインターフェース設定をまだしていませんでした。きちんとONBOOT(起動時にインターフェースを起動するかどうか)をyesにしておきましょう。

$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

~省略~

ONBOOT=yes

~省略~

SSH接続ができるようになりました。

f:id:naoto408:20151012005529p:plain

 

基本的な設定方法

VirtualBox>設定>ネットワークで割り当てがNATになっていることを確認。ポートフォワーディングを押下する。

f:id:naoto408:20151012010000j:plain

 

ホストポートを「2222」、ゲストポートを「22」のルールを設定する。(※ホストポート「2222」は任意の値)設定が完了したらOKを押下する。

f:id:naoto408:20151012005723p:plain

 

CentOSを起動して、インターフェース設定を行う。このとき、必ずONBOOTを有効にしておくこと。

$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

~省略~

ONBOOT=yes

~省略~

インターフェース再起動を行う。

$ sudo service network restart

インターフェース eth0 を終了中:                            [  OK  ]
ループバックインターフェースを終了中                       [  OK  ]
ループバックインターフェイスを呼び込み中                   [  OK  ]
インターフェース eth0 を活性化中:
eth0 のIP情報を検出中... 完了。
                                                           [  OK  ]

 

Teratermからログインできることを確認する。このとき、ホストはlocalhostTCPポートは「2222」にしておく。

f:id:naoto408:20151012005737p:plain

 

認証画面が出てくるので、ユーザ名、パスワードを入力してOKを押下。

f:id:naoto408:20151012005744p:plain

 

ログインできればOKです。

f:id:naoto408:20151012005529p:plain

 

まとめ

ということで、仮想環境にTeratermからアクセスする場合は下記を確認しましょう。

  • sshdデーモンが立ち上がっているか
  • /etc/hosts.allow、hosts.denyで拒否されていないか
  • SELinuxで拒否されていないか
  • Firewalldで拒否されていないか
  • Windowsファイアウォールでブロックされていないか
  • ウィルス対策ソフトでブロックされていないか
  • VirtualBoxでポートフォワーディング設定が適切になされているか
  • ネットワークインターフェースが有効化されているか

 

CentOSVirtualBoxにインストールする方法は下記を参考にしてください。

skkskynw.hateblo.jp