VirtualBoxのLinuxコンソールは日本語も表示できませんし,スクロールもできません.何かと使いづらいので,Mac上のターミナルからSSH接続して利用することにします.
そこで問題なのが,現在は,NATのネットワークアダプタを利用しているので,ホストマシンであるMacから,仮想マシン(ゲストマシン)にアクセスすることができません.
そこで,VirtualBoxの機能として,ホストマシンと仮想マシンのみ接続できる「ホストオンリーネットワーク(vboxnet0)」を構築し,仮想マシンに「ホストオンリーネットワークアダプタ」を追加し,ネットワークの設定を行います.
01. まずは,ホストオンリーネットワーク「vboxnet0」の追加を行います.
・VirtualBoxメニューバーの「VirtualBox」→「環境設定」
・「ネットワーク」をクリック
・ホストオンリーネットワーク追加のボタン「+」をクリック,「vboxnet0」の追加
・作成された「vboxnet0」を選択して,編集のボタン(ドライバみたいなアイコン)をクリック
・「DHCPサーバー」をクリック
・「サーバーを有効化」→チェックを外す(即ち,DHCPサーバを無効化する)
このホストオンリーネットワークは「192.168.56.0」のネットワークで,ネットマスクが「255.255.255.0」であるので,仮想マシンのIPアドレスは「192.168.56.XXX」になります.
SSH接続するので,IPアドレスは,DHCPによる動的割り当てではなく,静的(static)に割り当てます.
02. 続いて,仮想マシンの設定でネットワークアダプタをもう1つ追加します.
・仮想マシンの設定画面→「ネットワーク」
・「アダプタ2」を選択
・「ネットワークアダプタを有効化」をON
・「割り当て」→「ホストオンリーアダプタ」
・MACアドレスを確認しておきましょう.
(後で,Linux上で設定するときに,このMACアドレスが必要となります)
03. Linuxを起動して,イーサネットインターフェース「eth1」のセット
eth1側は固定IPアドレス(Static IP Address)で割り当てます.
# cd /etc/sysconfig/network-scripts/ # cp ifcfg-eth0 ifcfg-eth1 # vi ifcfg-eth1
[/etc/sysconfig/network-scripts/ifcfg-eth1 の内容]
DEVICE="eth1" HWADDR="08:00:27:XX:XX:XX" ← MACアドレスは各自確認 NM_CONTROLLED="yes" ONBOOT="yes" BOOTPROTO="static" IPADDR=192.168.56.102 ← IPアドレス(4オクテット目) 101〜下2桁は各自の番号 NETMASK=255.255.255.0
04. ネットワークの設定を有効にするために,ネットワークのサービスを再起動します.
# cd # /etc/init.d/network restart
05. SSHでリモート接続(ホストマシンからの接続)するために,一般ユーザアカウントを作成しておきます.
・ユーザ名: admin
・パスワード: admin
・所属グループ: users(GID: 100)
現在のユーザアカウント情報の確認
# cat /etc/passwd
現在は「admin」という名前のユーザは登録されていません.
現在のグループ情報の確認
# cat /etc/group
「users」というグループがあるはずですので,そのグループID(GID)が「100」であることを確認します.
ユーザアカウント「admin」の作成
# useradd -c "Admin User" -g 100 admin
パスワードの設定
# passwd admin
※パスワードは適当に決めます.「admin」でも良いです.
確認
# cat /etc/passwd
[/etc/passwd の内容(抜粋)]
: admin:x:500:100:Admin User:/home/admin:/bin/bash
06. macのターミナルからSSH接続してみる.
$ ssh [email protected]
SSH接続が遅い(パスワード認証までが遅い)ので,次のようにSSHdの設定ファイルを修正します.
07. 一般ユーザ「admin」でログインしているので,suコマンドでrootになります.
$ su - パスワード:
※パスワードはrootのパスワードを入力します.
08. SSHdの設定ファイル「/etc/ssh/sshd_config」を書き換えます.
# vi /etc/ssh/sshd_config
[/etc/ssh/sshd_config の内容(抜粋)]
: UseDNS no ←「yes」を「no」に変更(コメントアウトしない) : GSSAPIAuthentication no ←「yes」を「no」に変更 :
【参考】CentOS 6.2を最小構成でインストール(CentOS-6.2-i386-minimal.iso使用) – Symfoware
09. SSHd(SSHのサービス)を再起動します.
# /etc/init.d/sshd restart Stopping sshd: [ OK ] Starting sshd: [ OK ]
10. ログアウトして,再度SSHでログインしてみます.
# exit ←rootからadminに戻ります. logout $ exit ←仮想マシンからログアウトします. logout Connection to 192.168.56.199 closed. $ ssh [email protected] ←再度,仮想マシンにログインします. [email protected]'s password:
※今度は,ログインの際のパスワード要求が早くなったと思います.
それでは,suコマンドを入力していちいちrootになるのが面倒なので,sudoコマンドを有効にします.
sudoコマンドを利用すると,「$ sudo vi /etc/hosts」のように,一般ユーザであっても,コマンドの頭に「sudo」を付けるだけで,rootの権限でコマンド処理できるようになります.
11. まずは,とりあえず,suでrootになります.
$ su - パスワード:
12. yumを利用して「sudo」パッケージをダウンロードして,インストールします.
# yum install sudo Loaded plugins: fastestmirror, presto : ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: sudo i686 1.7.4p5-9.el6_2 updates 415 k Transaction Summary ================================================================================ Install 1 Package(s) Total download size: 415 k Installed size: 1.0 M Is this ok [y/N]: y ←「y」を入力 Downloading Packages: : Setting up and reading Presto delta metadata Processing delta metadata Package(s) data still to download: 415 k sudo-1.7.4p5-9.el6_2.i686.rpm | 415 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : sudo-1.7.4p5-9.el6_2.i686 1/1 Installed: sudo.i686 0:1.7.4p5-9.el6_2 Complete! #
13. 一般ユーザ「admin」がsudoコマンドを利用できるように,sudoの設定ファイル「/etc/sudoers」を編集します.編集するには「visudo」を実行します.
# visudo
[/etc/sudoers の内容(抜粋)]
## Sudoers allows particular users to run various commands as ## the root user, without needing the root password. : ## Allow root to run any commands anywhere root ALL=(ALL) ALL admin ALL=(ALL) ALL ← この行を追加 : #includedir /etc/sudoers.d
これで,すぐにユーザadminは,sudoコマンドを使用することができます.
14. 一旦,rootからadminユーザに変更します.
# exit logout $
15. sudoコマンドを使用すれば,一般ユーザでもroot権限でコマンドが実行できます.
$ sudo vi /etc/hosts [sudo] password for admin:
コメントを残す