以前、Pingの応答時のTTLからOSの種類を調べる方法について記述した事があったが、今回はこの応答時のTTL値を変更し、PingによるOSの判別をさせないように設定する方法についてを記述する。

1.Windowsの場合

Windows系OSの場合、レジストリに以下のキーを追加することでTTLの値を変更可能となる。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
キー名:DefaultTTL
タイプ:REG_DWORD
値:1 ~ 255

レジストリエディタで開くのが面倒であれば、以...


サーバを構築する際、サーバ自体がインターネットに接続出来る環境というのはそうそう無い。
そういった場合、ソフトウェアをインストールする際はyumコマンドを使わず、rpmパッケージを別途用意して各サーバに配布、インストールを行わせる方法が基本となるだろう。

しかし、rpmパッケージの場合依存関係を考慮する必要があり、インストールの順番に気を使うなど面倒な事も多い。
インターネットに接続していない状態でもyumでパッケージを導入するには、どうすればいいのだろうか?

実は、yumのリポジトリにインストールディスクを指定することで、そのディスクに入っているバージョンのパッケージであればyu...


Cygwinでisoファイルを生成する

一般企業のオフィスで仕事をしている場合、Windowsを利用している人間の割合はほぼ100%と言っていいだろう。
そんなWindows、デフォルトの状態ではisoファイルの作成を行う事が出来ないという制限がある。

会社によっては、isoファイルの生成用のソフトウェアのインストールに申請が必要だったりして面倒な事もあるだろう。
そんな時、もしCygwinが制限無しでインストール出来る環境であれば、ddコマンドを利用することでisoファイルを生成することが可能だ。

やり方は簡単。Cygwinを管理者権限で実行し、以下のコマンドを叩く。

dd bs=1024 if=/dev/scd0...

scpコマンドで覚えておきたい使い方7個

以前、sshコマンドの覚えておきたい使い方について記述した事があったが、今回はscpコマンド。
scpはsshプロトコルを利用しているので、環境によってはFTPよりも使い勝手が良いのでよく使われている。今回は、そんなscpコマンドで覚えておきたい使い方について記述する。

1.基本の使い方

基本的には、以下のようにコマンドを実行する。

scp [[ユーザ@]ホスト:]file1 [[ユーザ@]ホスト:]file2

上の実行例を見てもらえればわかるように、ローカルからリモート、リモートからローカル、そしてリモートからリモートへのコピーも可能だ。

●ローカルからリモート...


踏み台サーバに最適!ブラウザからVNC、RDPに接続出来るリモートデスクトップクライアント『Guacamole』

先日からリモートデスクトップに関する踏み台サーバについての記事を書いてきたが、今回はRDPの他、VNCへも接続が可能なブラウザベースのリモートデスクトップクライアント『Guacamole』を紹介する。
これはLinux上で動作させるWebベースのサーバサイドプログラムで、HTML5に対応しているブラウザでアクセスする。今回の検証では、CentOS 7上にインストールし踏み台サーバを構築。LAN上のWindowsにRDPで接続する。なお、CentOS 7のファイアウォールについては以下のコマンドで停止済とする。

systemctl stop firewalld

1.Guacamoleの

...
Linuxユーザに!VMware PlayerでESXi上の仮想マシンに接続する方法

2015年02月時点、VMware ESXiに接続する際に利用するvSphere ClientがWindows用しか用意されておらず、LinuxでvSphere Clientを利用するにはwineを利用するしか無いのは周知の事実だ。
そんな中で、LinuxからESXi上の仮想マシンを管理するならば、VMware PlayerをESXiクライアントとして利用してはいかがだろうか。実はVMware Player、オプション付きで実行すればESXi上の仮想マシンに直接アクセスできるのだ(vSphere ClientのようにESXi全体を管理出来る訳ではなく、あくまでも仮想マシン1台のみ)。
検証...


ESXi5.5上で動作する仮想マシンのコンソールにVNCから接続できるようにする

以前、ESXi上の仮想マシンに対してネットワークごしにシリアルコンソール接続を行う方法について記述したが、今回は仮想マシンのコンソールにVNCで直接接続する設定についてを記述する。
設定を行うのはvSphere VMware ESXi 5.5。ESXiのIPアドレスは192.168.0.225、仮想マシンのコンソールに割り当てるポートは5900とし、VNCクライアントはVNC Viewerを用いるものとする。

1.構成パラメータの追記

まずは、vSphere Clientから仮想マシンの構成パラメータを追記する。この設定を変更するには仮想マシンが停止している事が前提なので、起動中...


sedで置換にコマンドの実行結果を利用する場合

先日、sedによる置換にコマンドの実行結果を利用する必要が出たのでその方法について備忘。
sedの処理内でコマンドを実行させる場合は、処理を「'(シングルクォーテーション)」で囲わず、「"(ダブルクォーテーション)」か特に囲まないで、コマンドの実行箇所だけを「`(バッククォート)」で囲んで記述する。

$ cat test.hostname
hostname
HOSTNAME
TESTNAME
$
$ # シングルォーテーションだと、置換されない
$ sed -e 's/hostname/`hostname`/g' ./test.hostname
`hostname`
HOSTNAME
T...

サーバの構築などの仕事をしていると、自分があまり知らない環境で仕事をすることもある。
そんな時に、よくわからない踏み台経由で作業を行ったりすることもあり、どのIPアドレスにどのマシンが紐付いているのかを調べるところから始めることも多い。

そんな時に、少なくともネットワーク越しにOSの種類及びコンピュータ名を取得する方法についてをまとめてみることにした。

1.Ping

ネットワーク越しにざっくりとしたOSの種類を調べるならば、Pingを利用するとよいだろう。
以前こちらでも記述したが、Pingに応答するメッセージのTTL値は、各OSの種類によって異なっている。

大まか...


Windows 7 UltimateでRemote Appを利用する

先日、Windows Server 2008 R2でRemote Appを利用した踏み台サーバの構築について記述したが、実はRemote AppはWindows 7でも設定出来るようだ。
設定できるのはUltimate、Enterpriseエディションだけのようだが、どうやって設定、利用するのかやってみることにした。Windows 7に関しては、事前にリモートデスクトップを有効にしている。

なお、この設定はWindows Server 2008 R2でも有効なので、先日の手順で設定した際にライセンスサーバが必要と言われるのが煩わしい場合は、こちらの手順で設定するのも良いのではないだろうか...


Windows ServerでRemote Appを利用したリモートデスクトップ踏み台サーバの構築

先日、Windows ServerでRD ゲートウェイという機能を利用した踏み台サーバの構築について記述したが、今回はアプリケーションウィンドウのみをクライアント側に提供する機能「Remote App」を利用した踏み台サーバの構築について記述する。
イメージ的には、X11フォワーディングのウィンドウズ版って感じか?Linux、UNIXに比べて、どのアプリケーションを使えるようにするとか、rdpファイルの配布が必要とか、RDライセンスサーバーが必要だとか、用意がちょっと面倒臭いけど、大分使えそうだ。踏み台サーバにリモートデスクトップで繋げられるセッション数に制限がある場合(追加ユーザライセンス...


Windowsリモートデスクトップの踏み台サーバ機能『RD ゲートウェイマネージャ』を試してみた

前回、sshポートフォワーディングを用いた踏み台経由での接続について記述したが、Windowsでちゃんと用意されている機能はないものか、と調べてみたところWindows ServerにRDPを中継するサービス『RD ゲートウェイマネージャ』という機能が有ることが分かった。今回は、この機能について検証を行ってみる事にする。
なお、検証にはWindows Server 2008 R2を用いるものとし、Active Directoryは未導入、Windows ファイアーウォールは停止している。

1.インストール

まずは踏み台となるWindows Serverへ、RDゲートウェイマネージ...


TeratermでSSHポートフォワーディングを利用してLinux・UNIXサーバを踏み台にWindowsへリモートデスクトップを行う

システムの構築などをしていると、Windowsへのログインは踏み台サーバ(Windows Serverなど)を経由しないと目的のサーバへログイン出来ない環境というのをよく見かける。
皆で共有で使っているサーバだからと、踏み台サーバへの設定変更も容易に行えず、セッション数の制限から人と取り合いになることも少なくないだろう。

そんな環境でも、もしLinux・UNIXの踏み台サーバが用意されているならば、SSHポートフォワーディング(SSHを用いてローカルコンピュータの特定のポートに送られてきたデータを、別な通信経路を用いてリモートコンピュータの特定ポートに送信する)を行って目的のWindow...


WindowsのPowerShellでファイルのフルパスを取得する

以前、Windowsのコマンドプロンプトからファイルのフルパスを取得した事があったのだが、今回はそれをPowerShellで行ってみる。

PowerShellで指定したフォルダ配下のファイルのフルパスを出力する場合、以下のように記述すると良いだろう。

Get-ChildItem -Recurse 指定したフォルダ | ?{ $_.Length -ne $null } | Select-Object Fullname

上記コマンドについて一応解説しておくと、

  • 「Get-ChildItem -Recurse 指定したフォルダ」で指定したフォルダ配下の一覧を取得
  • 「?{ $_...

TeratermとX Windowサーバでsshのx11フォワーディング機能を利用する

Oracleのインストール時などには良く使われているが、SSHではx11転送という機能がある。
UNIXライクのOSでは、GUIの処理をクライアント・サーバで分けて行わせる事が可能なのだが、この通信をsshに転送して利用する機能だ。

ようは、UNIX/Linux上で動作するGUI画面を、SSH経由でクライアントマシンで操作出来る機能だと思ってもらえれば良い。つまり、クライアント側をx11機能を提供するサーバとしてあげればいい。Windowsの場合、このx11機能を提供するサーバソフト(X Window サーバ)がデフォルトで存在しないため、別途用意してあげる必要がある。

で、この機能...


Linux/UNIXでローカルにあるスクリプトを配布せずにリモート先で実行させる方法

LinuxやUNIXで、スクリプトをリモート先に配布せずに、ローカルにスクリプトをおいたままリモート先でスクリプトを実行させたいときもあるだろう。
そんなときは、以下のようにsshコマンドを実行するといいだろう。

ssh リモート先のユーザ名@リモート先のホスト名(IPアドレス) 'sh ' < 実行させたいスクリプトのパス

「'sh '」の箇所については、「sh -x」でも「'bash -x'」でも、ローカルで実行する際と同じで構わない。


先日、職場でHP-UXの高信頼性モード時のパスワードのハッシュ値が格納されている場所について調べる事があったので、その備忘。

通常、パスワードは「/etc/passwd」に、シャドウ化しているならば「/etc/shadow」に記述されているのだが、HP-UX独自で用意されている高信頼性モードの場合は、「/tcb/files/auth」フォルダ配下に保存されている。このフォルダの中には、アルファベット大文字/小文字1文字のディレクトリが存在しており、そのディレクトリ文字から始まるユーザの情報が個々のファイルで保存されている。


vimでリモート先のファイルをsshプロトコル経由で編集する

最近、どうもLinux上ではemacsではなくvimを利用する事が多いのだが、その際に知ったので備忘として残しておく。
vimでは、以下のようにコマンドを実行することでリモート先のファイルをsshプロトコル経由で編集することが出来る。

vim scp://ユーザ名@リモートホスト(IPアドレス)//編集対象のファイル

実際にやってみたのがこちら。
まず、既存のファイル「/work/work/test/test2.sh」の中身を確認後、上記コマンドを実行している。

上記コマンドを実行した結果、/tmpフォルダに編集用の一時ファイルが作成される。
そのファイルを開くかを確認さ...


Windows 7 にCygwinをインストールする(オフラインインストール)

Windows上でUNIX環境を構築出来るソフトとしては、やはりCygwinが一番有名だろう。
という訳で、今回はWindows 7上でCygwinをインストールしてみる。

なお、インストールをする上で注意したいのが、Cygwinではパッケージ付属のインストーラーというものが存在しない。
もしインターネットに接続されていないマシンにCygwinをインストールしたい場合は、一度インターネットにつながるマシンから必要になるパッケージをダウンロードし、そこからインストールするようにする必要がある。

今回は、そんなインターネット接続されていないマシンへのインストールについて記述する。
オ...


Windows 7 にCygwinをインストールする

Windows上でUNIX環境を構築出来るソフトとしては、やはりCygwinが一番有名だろう。
という訳で、今回はWindows 7上でCygwinをインストールしてみる。

なお、インストールをする上で注意したいのが、Cygwinではパッケージ付属のインストーラーというものが存在しない。
もしインターネットに接続されていないマシンにCygwinをインストールしたい場合は、一度インターネットにつながるマシンから必要になるパッケージをダウンロードし、そこからインストールするようにする。

今回は、オンラインインストールについて記述する。
オフラインでのインストール方法については、こち...


sshコマンドで覚えておきたい使い方9個

他のUNIX/Linuxマシンを操作する際、大体はこのssh(open-ssh)を用いるだろう。
今回は、そんなssh接続のクライアントソフトであるsshコマンドについて、覚えておきたい使い方について紹介する。

なお、-oでしている箇所については、「/etc/ssh/ssh_config」で包括的に設定可能な項目となる。

1.基本の使い方

まずは基本の使い方から。
以下のように記述することで、ssh接続を行う。

ssh ユーザ名@接続先のホスト名(IPアドレス)

以下のように記述することもできる。

ssh 接続先のホスト名(IPアドレス) -l ユーザ名

ssh...


Linuxサーバで、sshログインされた際の操作ログを残したい、という希望は当然あるもの。
という訳で、今回はsshで操作された内容を、ログとして記録する設定について記述する。

設定は簡単。各ユーザの.bash_profileに、以下の内容を追記するだけだ。

# Operation Log.
P_PROC=`ps aux | grep $PPID | grep sshd | awk '{ print $11 }'`
if [ "$P_PROC" = sshd: ]; then
    script -fq /取得するログのPATH
exit
fi

行っている内容は単純で、プロセス...


Linux/UNIXのシェルプロンプトでIF文のような分岐処理を行わせる方法

仕事で、ちょっとした分岐処理をシェル上で行う必要があったので、ワンライナーで簡単にIF文のような処理が出来る方法について調べたので記述しておく。
以下のような書き方で、IF文のような処理を実現可能だ。

コマンド && TRUE || FALSE

つまり、「&&」以降はコマンドがTRUEの場合に、「||」以降はFALSEの場合に実行されるコマンドとなる。
実際に利用する例として、以下のような使い方を紹介する。

...
sshコマンドを用いてリモート側のファイルにローカルファイルの内容を追記する方法

今回は、sshコマンドを用いて1行(パスワードを求められたら2行)で、リモート先の特定ファイルにローカルのファイルの中身を追記する方法について記述する。
主な利用方法としては、公開鍵認証を複数受け付けるサーバに対して秘密鍵を追記させていく際に有効だろう。

で、肝心のコマンドが以下。

ssh ユーザ名@リモートホスト "cat >> /追記するリモートファイルのパス" < /追記させるローカルファイルのパス

# ssh root@192.168.0.240 "cat /work/test_text"
root@192.168.0.240's password:
test1234...

ssh経由でのtarによるフォルダの圧縮・解凍方法

LinuxやUNIXを利用していると、sshを経由して、ローカルのフォルダにあるファイルをアーカイブファイルとしてリモートサーバに配布したり、逆にリモート側のフォルダをアーカイブ化してローカルに配置したいときもあるだろう。
今回は、ローカル→リモートとリモート→ローカルでのtarを用いたフォルダの圧縮・解凍方法について記述する。
なお、ここではアーカイブファイルの形式は「tar.gz」とし、リモートサーバのIPアドレスを「192.168.0.240」としている。

1.【ローカル→リモート】ローカルでファイル・フォルダを圧縮し、リモートでアーカイブファイルとして保持させる

コマンドを...


Macintosh System 7、Windows 3.0 etc… JavaScriptで動作する懐かしいOSのエミュレーター『PCE.js』

前回、Windows 95やMac OS 8をWebブラウザ上で利用出来るサービスを紹介したが、今回はWindows3.0やMacintosh System 7.0などを操作出来るJavaScriptのエミュレーター『PCE.js』を紹介する。

使用出来るOSごとにリンクが異なっていて、TOPページのようなものがないようなので、各OSごとのリンク先を以下に紹介する。


Windows95、MacOS8をブラウザ上で!昔のOSを使えるWEBサービス『VirtualDesktop.org』

以前から、昔のOSをPC上でエミュレートするエミュレーターについて紹介してきたが、今回のは一味ちがう!
なんと、WEBブラウザ上でWindows 95やWindows NT、Mac OS 8や9、Xを動作させる事が出来るサービスがあるのだ。
(…といっても、何か違和感があるが)

使い方は簡単。まずは上記サイトにアクセスして、「Complete Desktop」を選択する。
選択後、以下のように利用出来るOSの種類がリストアップされる。

Windows 95からXPまで、Mac OSもある。
とりあえず、今回はWindows...


カラフルで色々な事を確認出来る管理ツールコマンド『xsos』

以前にもカラフルな管理ツールを何個か紹介した事があったが、今回はそれらと同じようにわかりやすいコマンド『xsos』を紹介する。

1.インストール

インストールの仕方は簡単。以下のコマンドを実行するだけだ。

$ sudo wget -O /usr/local/bin/xsos bit.ly/xsos-direct
$ sudo chmod +x /usr/local/bin/xsos

2.使い方

まず...