Ubuntu 12.04 Desktop LAMP&SSH Server


Unityで一悶着やらかしていますが、Ubuntuは開発者にとっては、やはり扱いやすいディストリビューションであることは間違いありません。
私はUnityでも、日常的な使い方では不自由のないレベルまで使い尽くしましたが、こと開発となるとウィンドウセレクトに2ステップかかるUnityは不自由極まりありません。
かと言ってMintでは、それこそ開発者向きではない部分が多々あり、仕方がないので結局はGNOME2を使っていますが、今後はどうなっていくのでしょうか?
それはさておき、LTSでどうしてもサーバ構築の方法を書き留めておかないといけなくなりましたので、しばらく休止していましたが復活して記載しておきます。
それでは、サーバ構築の始まりです!


★★★★★★★★★★ サーバ化の事前準備


★表記上のルール

username:これはユーザ名のことで、自由に改変してください
username:これはディレクトリ名のことで、usernameと同じものにしてください
groupname:これはusernameが所属するグループのことで、自由に改変してください

 

★サーバ構成

☆外部からサーバへのアクセスは
 ①SSH接続(一般ユーザはSFTP接続)
 ②http接続
 ③https接続
の3種類の接続ができるようにします。 

☆内部からサーバへのアクセスも
 ①SSH接続
 ②http接続
 ③https接続
の3種類の接続ができるようにします。

☆サーバにアクセスするSFTPアクセス一般ユーザの環境
 ここで、外部からSFTP接続されるサーバとして、考えなければならないことがあります。
 一般ユーザがSFTPでアクセスしてきた折には、指定したディレクトリにChrootして、そのディレクトリより上の階層へは行けないように設定したい訳です。(以降:アクセス制御)
 けれど、Chrootするディレクトリはその親ディレクトリすべても含め、root ユーザが所有者である必要があります。
 その場合ローカルログインするユーザ標準のディレクトリ「/home/username」のケースで考えると、
 「/home」の所有者はrootユーザですが、「/home/username」ディレクトリの所有者は「username」というユーザなので、「/home/username」ディレクトリでは、Chrootすることができ なくなります。
 今度は逆にChrootできるように「/home/usernameディレクトリの所有者をrootユーザにしてしまうと、やはり通常のSSH接続もローカルログインもできなくなってしまいます。
 つまり、SFTPで接続してくる一般ユーザは通常のSSH接続およびローカルログインができないユーザとなるという訳です。
 けれど例えば、自分が外部から自宅サーバにアクセスする折には、別段アクセス制御したSFTP接続する必要はありません。
 つまり、通常のSSH接続やローカルログインができるユーザはアクセス制御する必要がないユーザになります。
 アクセス制御をしなければ、Chrootもしない訳ですし、Chrootしないのであれば、通常のSSH接続もローカルログオンもできる訳ですのでこれで問題は解消します。

 上記の関係からSFTPアクセス制御を行う一般ユーザがSFTPで接続してくる場合のディレクトリ構成を下記の要領で考えてみました。

 
ディレクトリ名称 ディレクトリ 所有者 パーミッション 詳  細
ベースディレクトリ /home/username/ root 755 SFTPの場合にChrootするディレクトリでusernameは書き込みできないディレクトリ
ホームディレクトリ /home/username/doc/ username 700 外部から直接Webアクセスできないデータ(例:掲示板書き込みデータ)格納用ディレクトリ
SSLディレクトリ /home/username/ssl/ username 755 httpsアクセス用ディレクトリ(httpのディレクトリとは異なるディレクトリにしなければならない)
WWWディレクトリ /home/username/www/ username 755 httpアクセス用ディレクトリ(httpsのディレクトリとは異なるディレクトリにしなければならない)

 このディレクトリ構成を前提に内容を進めます。

☆Webアクセスとしてhttpでアクセスしてくるユーザは「http://ホスト名またはIPアドレス/~username/」でwwwディレクトリを参照できるようにします。

☆Webアクセスとしてhttpsでアクセスしてくるユーザは「https://ホスト名またはIPアドレス/~username/」 でsslディレクトリを参照できるようにします。


★ルータの設定

☆ルータ外部からのアドレス変換の設定を行う(ルータの外部IPアドレスとアクセスしてきたポート番号を、内部のサーバのIPアドレスとポート番号に変換)
ルータの設定にて、
 ① SSH Server(ウェルノウンポート番号は22)
  ルータの外部IPアドレス&外部からのSSHアクセスのポート番号 → 内部のサーバのIPアドレス&サーバのSSHアクセス用ポート番号
 ② Web Server(ウェルノウンポート番号は80)
  ルータの外部IPアドレス&外部からのhttpアクセスのポート番号 → 内部のサーバのIPアドレス&サーバのhttpsアクセス用ポート番号
 ③ SSL Server(ウェルノウンポート番号は443)
  ルータの外部IPアドレス&外部からのhttpsアクセスのポート番号 → 内部のサーバのIPアドレス&サーバのhttpsアクセス用ポート番号
等の各種サーバのアドレス変換テーブルを作成

☆ルータ内部のDHCP設定を調整する(サーバにDHCPアドレスがあたらないようにする)
 ・DHCPでもアクセスできますが、返って面倒なので固定IPにしてしまいましょう。

 

★Ubuntu 12.04 (Desktop) のインストール

☆LiveCDからインストール
 ・デフォルトインストールでOK(一般的なコンピュータならば20~30分足らずで完了すると思います)

☆固定IPアドレスの設定
 ・右上にある「有線ネットワーク接続」(「↑↓」マーク)を右クリックし「接続を編集する...」をクリック
 ・「ネットワーク接続」ダイアログボックスにて「有線」タブにある「Wired connection 1」を選択し「編集」ボタンをクリック
 ・「IPv4」タブを選択
 ・「方式(M)」を手動に変更
 ・「アドレス」、「ネットマスク」、「ゲートウェイ」を入力
 ・必要であれば「DNSサーバ」、「検索ドメイン」等を入力
 ・「適用」ボタンをクリックで完了
 ※以前の Ubuntu Desktop はこの設定が厄介でしたが、今は楽チン!
   くれぐれも Desktop に関しては、以前のCUI的に「/etc/network/interfaces」を編集しないでください。(その場合、正常動作しません)
   できる限りGUIが Ubuntu Desktop の醍醐味です!
  ノーマル Ubuntu Server (CUI)の場合は「/etc/network/interfaces」を編集してください。


★以下コマンドに関しては端末(terminal)を立ち上げて入力してください


★taskselのインストール

☆各種サーバをインストールする「tasksel」のインストール
●CUI方式
sudo apt-get install tasksel

●GUI方式
Ubuntuソフトウェアセンターにて「tasksel」を検索しインストール
 

★Basic Ubuntu サーバと LAMP サーバと OpenSSH サーバのインストール

☆端末(terminal)にて、スーパーユーザ権限で tasksel の実行
sudo tasksel

☆各種サーバのインストール
 ・「インストールするソフトウェアの選択」にて
  ・Basic Ubuntu Server(これはインストールしなくても問題ありません)
  ・LAMP server
  ・OpenSSH server
  をスペースキーを押して選択
 ・TABキーを押して<了解>にてエンターキーを押すとサーバ化が始まります。
 ・途中 MySQL インストール時に「MySQLの"root"ユーザに対する新しいパスワード」の入力を2度求められますので、適宜入力してください。
 ・所要時間はほとんどがダウンロードで、早ければ3分、遅くても10分足らずで終わるかと思います。

 

★アップデートとアップグレード

●CUI方式
☆アップデート
sudo apt-get update

☆アップグレード
sudo apt-get upgrade

●GUI方式
☆「アップデートマネージャ」の起動

☆パッケージ管理システムのダウンロード可能サイトリストの更新
  「再チェック」ボタンをクリック

☆インストール済みパッケージの更新
  「アップデートのインストール」ボタンをクリック
 

★編集方法

☆テキストファイルの編集方法

 CUI方式で編集する場合のテキストエディタを nano にしてありますが、 vi でも Emacs でも、お好みでどうぞご変更ください。ただ、この環境下であれば、ぜひとも GEdit 等を用いた GUI での操作をお勧めします。

☆ファイル・ブラウザ(Nautius)をroot権限で起動「sudo nautilus」し、編集すればroot権限で編集可能です。

 root権限がなければならないファイルをたくさん編集しますので、GUI方式でファイルの閲覧をしながら、簡単かつ自動的にroot権限での編集ができるようにしておきましょう。
 ・ ただし、この方法は見栄えは通常のファイルブラウザですが、とても強力で、いかなるファイル/ディレクトリでも削除変更できてしまいます。
 ・また、この方法で「右クリック →geditで開く」などの操作をした場合、gedit自体もroot権限で起動されるため、いかなるファイルも編集可能と超強力です。
 ・ そして、この時起動されるgeditの見栄えも通常のものと何ら変わりません。
 ・ こういった理由で、この方法は大変強力で便利なものではありますが、その取扱いには十分に気をつけてください。

 

★★★★★★★★★★ OpenSSH Server の設定(① SSH Server の設定)


 ローカルログインユーザの SSH Server の設定としては、OpenSSHサーバをインストールした段階で完了してしまっています。ですので、ここでは一般ユーザが外部から SFTP アクセスする場合の設定をします。


★SFTPアクセスをするユーザの作成

●CUI方式

☆グループの作成(groupaddは新規グループの作成)
sudo groupadd groupname

☆グループへの既存ユーザの追加(usermodは既存ユーザのアカウント情報変更)
sudo usermod -G groupname username

☆ユーザの新規作成(useraddは新規ユーザの作成)
sudo useradd username

☆新規追加したユーザのパスワード設定
sudo passwd username

●GUI方式

☆ユーザおよびグループの編集
 ・「ユーザとグループ」ダイアログを開く
 ・ 「鍵マーク」をクリックして変更可能にする

☆グループの作成
 ・ 「グループの管理」をクリックして「グループの設定」ダイアログを開く
 ・ 「グループの追加」をクリックして「新しいグループ」ダイアログを開く
 ・ 既存のものと重複しない「グループ名」と「グループID」を入力し、必要であれば「グループのメンバ」をチェックし加え「OK」をクリック

☆ユーザの作成
 ・ 「ユーザの追加」をクリックして「新しいユーザ・アカウント」ダイアログを開く
 ・ 「アカウント」タブの「基本設定」のユーザ名や「パスワード」等必要事項を入力
 ・ 「高度な設定」タブの「ホームディレクトリ」にて「/home/username」のように適切な「ディレクト リ名」や「ユーザID」を入力
 ・ 必要であれば「メインのグループ」を入力し「OK」をクリック

 

★SFTPでアクセスするディレクトリの作成

●CUI方式

username ディレクトリを所有者:root、グループ:rootで作成し、パーミッションを755に設定する

cd /home
sudo mkdir username(ここでの username はディレクトリ名)
sudo chmod 755 username(こ こでの username はディレクトリ名)→デフォルトが755なので省略可

☆ホームディレクトリ等を所有者:username、 グループ:groupname で作成し、パーミッションをdoc:700、ssl:755、www:755に設定する

cd username(ここでの username はディレクトリ名)

sudo mkdir doc
sudo mkdir ssl
sudo mkdir www

sudo chown username doc
sudo chown username ssl
sudo chown username www

sudo chgrp groupname doc
sudo chgrp groupname ssl
sudo chgrp groupname www

sudo chmod 700 doc
sudo chmod 755 ssl→デフォルトが755なので省略可
sudo chmod 755 www→デフォルトが755なので省略可

●GUI方式

☆Chrootを行う元のディレクトリ(username) とその他ディレクトリの作成
 ・ ルートブラウザを起動し、「/home」ディレクトリへ移動
 ・ 「ファイル→フォルダの生成」にて「username」 というディレクトリを作成
 ・ (ルートブラウザで作成したため、この時点で username ディレクトリは所有者:root、グループ:root、パーミッション755となる)
 ・ 「username」ディレクトリをダブルクリックし username ディレクトリの中に入る
 ・ 「ファイル→フォルダの生成」にて「doc」というディレクトリを作成
 ・ 「ファイル→フォルダの生成」にて「ssl」というディレクトリを作成
 ・ 「ファイル→フォルダの生成」にて「www」というディレクトリを作成
 ・ (この時点で「doc」、「ssl」、「www」の3つのディレクトリともに所有者:root、グループ:root、パーミッション755となる)

☆「doc」、「ssl」、「www」の3つのディレクトリのアクセス権を変更
 ・ 「doc」ディレクトリを右クリックし「プロパティ」をクリックし「アクセス権」タブをクリックする
 ・ 「所有者」を「username」に変更し、フォルダのアク セス権は「作成と削除」のまま
 ・ 「グループ」を「groupname」に変更し、フォルダの アクセス権を「なし」に変更
 ・ 「その他」のフォルダのアクセス権を「なし」に変更
 ・ 「実行」のチェックを入れ閉じる
 ・ 「ssl」ディレクトリを右クリックし「プロパティ」をクリックし「アクセス権」タブをクリックする
 ・ 「所有者」を「username」に変更し、フォルダのアク セス権は「作成と削除」のまま
 ・ 「グループ」を「groupname」に変更し、フォルダの アクセス権は「アクセスのみ」のまま
 ・ 「その他」のフォルダのアクセス権も「アクセスのみ」のまま
 ・ 「実行」のチェックを入れ閉じる
 ・ 「www」ディレクトリを右クリックし「プロパティ」をクリックし「アクセス権」タブをクリックする
 ・ 「所有者」を「username」に変更し、フォルダのアク セス権は「作成と削除」のまま
 ・ 「グループ」を「groupname」に変更し、フォルダの アクセス権は「アクセスのみ」のまま
 ・ 「その他」のフォルダのアクセス権も「アクセスのみ」のまま
 ・ 「実行」のチェックを入れ閉じる

 

★SFTPアクセスユーザの設定をするため「/etc/ssh/sshd_config」をroot権限で編集

●CUI編集方法(エディタは好みもあるのでお好きにどうぞ。ただ、そろそろviに代表されるCUI方式からGUI方式にしていきましょうか。)
sudo nano /etc/ssh/sshd_config

●半CUI半GUI編集方法
sudo gedit /etc/ssh/sshd_config
gksudo gedit /etc/ssh/sshd_config

●GUI 編集方法
管理者権限でファイルブラウザを起動後/etc/ssh/sshd_configファイルを右クリックしgeditで編集

☆編集内容
Subsystem sftp /usr/lib/openssh/sftp-server
の行をコメントアウトし
#Subsystem sftp /usr/lib/openssh/sftp-server
に変更

その下の行を追加し
Subsystem sftp internal-sftp
を追記

・ユーザごとに指定する場合は最終行に
Match user username
    ChrootDirectory /home/%u
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp
と追記
※ SFTPアクセスユーザが少ない場合は、このようにユーザごとに指定する

・グループごとに指定する場合は最終行に
Match group groupname
    ChrootDirectory /home/%u
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp
と追記
※SFTPアクセスユーザが多い場合は、最初にグループを作成して、全SFTPアクセスユーザを1つのグループに入れて、グループごとに指定する

 

★OpenSSHの再起動
これで、SFTPユーザ関連の設定が完了したので OpenSSH を再起動します。
sudo /etc/init.d/ssh restart

 

★SFTPでのアクセステスト
では、正しくアクセスできるかテストしてみましょう。

●CUI方式

sftp username@ホスト名またはIPアドレス

●GUI方式

 ・「場所→サーバへ接続」にてファイルブラウザ(Nautilus)を起動
 ・「サービスの種類」を「SSH」に変更
 ・「サーバ名」にホスト名またはIPアドレスを入力
 ・「ポート番号」に SSH のウェルノウンポート番号「22」を入力(自分で変更した場合はそのポート番号)
 ・「フォルダ」はアクセスする折の初期フォルダを入力(特に指定がなければ空白でOK)
 ・「ユーザ名」は先ほど作った SFTP ユーザ名を入力
 ・「ブックマークを追加する」のチェックボックスにはブックマークを作りたければチェックを入れ「ブックマーク名」を入力する
 ・「接続」ボタンをクリックし、パスワードを入力


★★★★★★★★★★ LAMP Server の設定(apache2 の設定、MySQLの設定、Perl、Pyhon、PHPの設定)


★apache2 の設定

☆多くのユーザがWeb公開し、「http://ホスト名またはIPアドレス/~username/」 や「https://ホスト名またはIPアドレス/~username/」
でアクセスできるようにする前提ですので、UserDirをapache2に組み込み、有効化します。
sudo a2enmod userdir

☆apache2(② Web Server)の設定
Web Server としては、
 ・ 「http://ホスト名またはIPアドレス/~username/」にてアクセスしたときのディレクトリの設定
 ・アクセスしたときにその該当ファイルがないときにディレクトリ/ファイル情報をしないように設定
 ・C言語をコンパイルして作ったネイティブCGIの動作の許可
 ・CGIとして動作可能な拡張子(C言語ネイティブ:.cgi、Perl Script:.pl、Python Script:.py)を設定
  (PHPはLAMPサーバをインストールした時点でモジュール型が動作するようになっているためここでは設定しない)
 ・CGIが動作するディレクトリの設定
 ・ドキュメントを置くディレクトリの設定
等を行います。

赤字のエリアは各自の希望に合わせて変更・設定
ファイル名:/etc/apache2/sites-available/default
CUI編集方法:sudo nano /etc/apache2/sites-available/default
GUI編集方法:ルートブラウザにてファイルを右クリックしgeditで編集

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    UserDir www

    DocumentRoot /home/
    <Directory /home/>
        Options -Indexes FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/*/www>
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
        AddHandler cgi-script .cgi .pl .py
        Options ExecCGI
    </Directory>

    ScriptAlias /cgi-bin/ /home/*/www
    <Directory "/home/*/www">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/home/*/doc/"
    <Directory "/home/*/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0::1/128
    </Directory>

</VirtualHost>

 

☆apache2(③ SSL Server)の設定
SSL Server としては、
 ・SSLを apache2 に組み込み有効化する
 ・SSLの設定ファイル名を指定する
 ・ 「https://ホスト名またはIPアドレス/~username/」にてアクセスしたときのディレクトリの設定
 ・アクセスしたときにその該当ファイルがないときにディレクトリ/ファイル情報をしないように設定
 ・C言語をコンパイルして作ったネイティブCGIの動作の許可
 ・CGIとして動作可能な拡張子(C言語ネイティブ:.cgi、Perl Script:.pl、Python Script:.py)を設定
  (PHPはLAMPサーバをインストールした時点でモジュール型が動作するようになっているためここでは設定しない)
 ・CGIが動作するディレクトリの設定
 ・ドキュメントを置くディレクトリの設定
等を行います。

まず、sslを利用できるよう、端末で下記2命令を実行します。
ssl を apache2 に組み込み、有効化
sudo a2enmod ssl

apache2で用いる設定ファイルの設定
sudo a2ensite default-ssl

次にファイルの編集
赤字のエリアは各自の希望に合わせて変更・設定
ファイル名:/etc/apache2/sites-available/default-ssl
CUI編集方法:sudo nano /etc/apache2/sites-available/default-ssl
GUI編集方法:ルートブラウザにてファイルを右クリックしgeditで編集

<IfModule mod_ssl.c>
<VirtualHost _default_:443>
    ServerAdmin webmaster@localhost

    UserDir ssl

    DocumentRoot /home/
    <Directory /home/>
        Options -Indexes FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/*/ssl/>
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
        AddHandler cgi-script .cgi .pl .py
        Options ExecCGI
    </Directory>

    ScriptAlias /cgi-bin/ /home/*/ssl/
    <Directory "/home/*/ssl">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/ssl_access.log combined

    Alias /doc/ "/home/*/doc/"
    <Directory "/home/*/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

    ~中略~

</VirtualHost>
</IfModule>

 

☆apache2 の再起動
sudo /etc/init.d/apache2 restart

 

★MySQL Server 設定

☆日本語を利用できるように、UTF-8の設定
ファイル名:/etc/mysql/my.cnf
CUI編集方法:sudo nano /etc/mysql/my.cnf
GUI編集方法:ルートブラウザにてファイルを右クリックしgeditで編集

[client]のエリアに下記コードを追記(Ubuntu Desktop の場合は必要)
default-character-set = utf8

[mysqld]のエリアに下記コードを追記
character-set-server = utf8
 

☆MySQLの再起動
sudo /etc/init.d/mysql restart


★★★★★★★★★★ その他色々

 

★スクリプトアップロードの注意事項
PHP、Perlは文字コードにほとんど問題ないのですが、PythonのみあらかじめUTF-8N(LF)コードでスクリプトを製作しアップしなければ動作しません。
もちろん、Ubuntu自体がUTF-8ですので、全てUTF-8で統一がベストです。
スクリプトではありませんが、CのCGIを作成するときのコードも当然UTF-8です。
そして、アップロードするときのプロトコルとして絶対にFTPは使用しないようにしてください。
以前Telnetが瞬く間に消えてSSHに変わったように、FTPが消え、SFTPもしくはFTPSに変わります。
いえ、変えなければなりません。
同様にメールプロトコルのPOP3やSMTPなんかも消えなければなりません。
ネット上に平文でID、パスワード、文章内容などを流してしまうプロトコルを一掃することで随分ネット社会としてのセキュリティが高まります。
外に出るときに裸で歩かないのと同様に最低限のマナーとして、暗号化してネットにパスワード等を流す当たり前の社会になって欲しいものです。

 

★その他注意事項
Ubuntuは特に初心者の方も多いと思いますので、良く理解しセキュアな環境ができるようになるまでは、サーバマシン及びサーバを踏み台にしてアクセス できるマシンには、漏洩して困るような情報は入れないでください。

 

★最終確認
これで全て完了しました。
このサーバの動作を確認します。

1、LAMPサーバとしての機能
 ・Webサーバとしての動作確認
  「/home/username/www/」にindex.htmlを置いて、「http://ホスト名またはIPアドレス/~username/」にてアクセス
 ・SSLサーバとしての動作確認
  「/home/username/ssl/」にindex.htmlを置いて、「https://ホスト名またはIPアドレス/~username/」にてアクセス
   SSLサーバはいわゆる「オレオレ認証」になりますので、アクセス後
   「接続の安全性を確認できません」
   とか
   「このサイトのセキュリティ証明書は信頼できません」
   というようなメッセージがでますが気にせず接続してください。
   また、最近では Rapid-SSL のように年間2000~3000円程度で独自SSLを利用できますので、ドメインとともに導入してみてください。
 ・MySQLの単体確認(mysqlを起動してログイン後サンプルデータベース抽出確認等)
 ・Perlの動作確認
 ・Pythonの動作確認
 ・PHPの動作確認
 ・Perl、Python、PHPとMySQLの連携での動作確認(特に日本語関連の確認)

2、OpenSSHサーバとしての機能
 ・SSHサーバとしてのとしての動作確認(他クライアントからログインして各種操作)
 ・SFTPサーバとしての動作確認(他クライアントからログインしてファイル送受信操作)

これらがうまく動作すれば完了です。
お疲れ様でした。
初めてサーバに挑戦した人は苦労したかもしれませんが、慣れてくれば1時間もかかりません。
Windows XP をクリーンインストールし、Windows Update や各種ソフトウェアのインストールまで終えて、使える状況にするまでには2日かかりますが、Ubuntu であれば Desktop インストールとServer 環境設定のセットで1時間もかからないのです。
どうですか?
Windows Serverよりも安くて早くて高性能で、更に楽チンでは?
性能、信頼性、安定度、機密性が高く、GUIで操作が楽チンな無料のOS(Ubuntu (Desktop) Server)を使ってみませんか?
今から2時間の時間が確保できるのでしたら、必要なデータの退避、Ubuntu ISOイメージのダウンロードとインストールCD作成、そしてインストール、サーバ環境設定と試してみてください。
きっとかつてない素晴らしい体験ができるでしょう!
なお、かなり巨大なベージになってしまいましたので、点検したつもりですがまだ間違いがあるかもしれません。
何かおかしなところがありましたら、ご指摘くだされば幸いです。

 

ここでの文章、画像、検証結果などは全てDreamHopeに著作権があります。リンクに関してはTopLink、DeepLinkともに構いませんが、全部・一部の「学術論文等許諾の不必要な引用」以外の引用に関しては禁止します。

Copyright (C) 2012 DreamHope All Rights Reserved .  Access: