goo blog サービス終了のお知らせ 

情報技術の四方山話

AI、IoT、ヤマハルータ、VPN、無線LAN、Linux、クラウド、仮想サーバと情報セキュリティのよもやま話

Ubuntuにroot/管理ユーザーを追加する

2015-08-20 07:28:20 | Linux/Ubuntu
匠技術研究所
Ubuntuにroot/管理ユーザーを追加する


いつもアクセスありがとうございます。匠技術研究所の谷山 亮治です。
今回は「Ubuntuにroot/管理ユーザーを追加する」です。

Ubuntuをインストール後、root権限に移行できる管理ユーザーを追加することは第一番にすべき管理作業です。root/管理ユーザを二重化しておくことで、root/管理ユーザーパスワードをうっかり変更しログインできなくなっても、サブアカウントでログインすることができます。

もちろん、セキュリティリスクが増えますので、アカウントの取り扱いには十二分な注意が必要です。


■管理ユーザーの追加
一般ユーザを追加して、その後管理ユーザに変更します。
先ず。一般ユーザーでの作成です。パスワードは十分に長く辞書にないものにします。
$ sudo adduser takumi
Adding user `takumi' ...
Adding new group `takumi' (1002) ...
Adding new user `takumi' (1002) with group `takumi' ...
Creating home directory `/home/takumi' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for takumi
Enter the new value, or press ENTER for the default
Full Name []: TAKUMI admin
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
$

管理ユーザーに変更します。
$ sudo usermod -G sudo takumi
$

■新しい管理ユーザーの動作確認
新しいSSHセッションでtakumiでログインし、root権限での実行を確認します。
$ sudo -i
[sudo] password for takumi:
#
# exit
logout
$

確かにroot権限を使うことができます。

■実行した環境
$ uname -a
Linux myhost 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.3 LTS
Release: 14.04
Codename: trusty
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Ubuntu/LinuxでのKVM管理ツールuvtoolを試す(2)

2015-03-02 09:18:49 | 仮想サーバー
匠技術研究所
Ubuntu/LinuxでのKVM管理ツールuvtoolを試す(2)


いつもアクセスありがとうございます。匠技術研究所の谷山 亮治です。
今日は「Ubuntu/LinuxでのKVM管理ツールuvtoolを試す(2)」です。

Ubuntu 14.04 LTSの新しいKVM管理ツール「uvtool」を試しています。

第一回:Ubuntu/LinuxでのKVM管理ツールuvtoolを試す

Cloud images and uvtool

Linux/UbuntuのハイパーバイザーはKVM(Kernel Virtual Machine)で、標準インストールにKVMパッケージを追加インストールすることで利用できます。KVMは、仮想ハードウエアを提供し、その上に基本ソフトをインストールすることができます。

一方、uvtoolはコマンドラインで仮想サーバーを立ち上げることができます。

◎uvtoolのインストール
$ sudo apt-get -y install uvtool

◎uvtoolの情報の同期
$ sudo uvt-simplestreams-libvirt sync arch=amd64

◎uvtoolでインストールできるUbuntuの一覧
$ sudo uvt-simplestreams-libvirt query
release=oneiric arch=amd64 label=release (20130509)
release=precise arch=amd64 label=release (20150227)
release=quantal arch=amd64 label=release (20140409)
release=raring arch=amd64 label=release (20140111)
release=saucy arch=amd64 label=release (20140709)
release=trusty arch=amd64 label=release (20150225.2)
release=utopic arch=amd64 label=release (20150202)
release=vivid arch=amd64 label=beta1 (20150224.5)

◎uvtoolでUbuntuを立ち上げ、sshログインする為に、親環境で鍵を作る
$ ssh-keygen
私は鍵のみの鍵を作りました。

◎KVM上に仮想Ubuntuサーバーを作る
先ずは、練習です。まるでLXCのごとく簡単です。
$ sudo uvt-kvm create firsttest
$ sudo uvt-kvm create secondtest release=trusty

◎KVM上の仮想Ubuntuサーバーを確認する
$ sudo uvt-kvm list
firsttest
secondtest
$

◎KVM上の仮想UbuntuサーバーのIPを確認する
$ sudo uvt-kvm ip secondtest
192.168.122.94
$ sudo uvt-kvm ip firsttest
192.168.122.217

◎KVM上の仮想Ubuntuサーバーにsshでログインする
鍵認証なので、鍵の指定を行います。
$ ssh -i ~/.ssh/id_rsa ubuntu@192.168.122.94
The authenticity of host '192.168.122.94 (192.168.122.94)' can't be established.
ECDSA key fingerprint is 98:e8:99:51:c8:46:e7:2a:0d:4a:d7:ae:3c:91:a4:03.
Are you sure you want to continue connecting (yes/no)? yes
---省略
ubuntu@secondtest:~$

$ sudo ssh ubuntu@192.168.122.217 -i ~/.ssh/id_rsa
---省略
ubuntu@firsttest:~$

◎親サーバーのメモリー状況
親サーバーは試験用なので12GほどRAMを搭載しています。freeエリアが小さいのですが、8.6Gほどキャッシュしており十分余裕があります。

$ free
total used free shared buffers cached
Mem: 12165504 11954860 210644 31496 247688 8620272
-/+ buffers/cache: 3086900 9078604
Swap: 12440572 0 12440572

◎仮想サーバーのメモリー状況
デフォルトで500Mほど使用しています。
ubuntu@firsttest:~$ free
total used free shared buffers cached
Mem: 501796 331664 170132 340 21464 254700
-/+ buffers/cache: 55500 446296
Swap: 0 0 0
ubuntu@firsttest:~$

引き続き紹介していきます。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

redhat発表によるbashの環境変数経由の脆弱性の簡単な確認方法の実際

2014-09-26 11:31:51 | 情報セキュリティ
匠技術研究所
redhat発表によるbashの環境変数経由の脆弱性の簡単な確認方法


こんにちは。いつもアクセスありがとうございます。匠技術研究所の谷山 亮治です。
今日はLinux等で広く使われているbashのシェルプログラム実行時の脆弱性の速報です。

Linux等UNIXおよびその影響のある基本ソフト上の「shell」の一つである「bash」はプログラム(=コマンド)を実行する環境として広く使われています。プログラムは、実行時に必要な情報を「環境変数」として受け取る機能を備えています。

一般的に各shellは複数のプログラムを連携して実行する為に「シェルプログラム」を書くことができ、そのプログラムを実行することができます。シェルプログラムも、それ以外のプログラムも「プログラム」としての取り扱いに違いはなく、実行時に必要な情報を「環境変数」として受け取る機能があります。

今回のbashの脆弱性は、bashで作られたプログラムを実行する際のこの機能を利用して、環境変数に悪意の情報を仕込み、実行することができるというもので、最悪の場合システムを乗っ取ることもできる可能性があります。

では、どうやって外部から基本ソフト上のbashを実行するのでしょうか。それは、外部からのアクセスを許可した、様々な「サーバープログラム」を経由します。代表的にはWebサーバー、ファイルサーバー、sshサーバー等、様々なサーバープログラムがありますが、その中で使われているかもしれないbashプログラムを経由して実行します。

緊急の対処としては、以下の対応が必要です。

■サーバーでのbashプログラムの更新あるいは実行停止と他言語プログラムへの差し替え
基本ソフト、サーバーに関係なくbashを使うことができるサーバーは、このbashの脆弱性を改修した更新bashに変更します。

Webサーバー上でいわゆるcgiとしてbashプログラムを使っている場合は、いったんそのプログラムの利用を停止し、perlなど別のプログラム言語に書き直したものに差し替える必要があります。書き換える際、類似の脆弱性が予想されるshellプログラムは避けるべきです。

■サーバー管理者!必見!RedHatの情報提供(英文)
Bash specially-crafted environment variables code injection attack

記事中のテストコードを弊社サーバーで実行してみました。尚、お客様用サーバーのbashはすべて更新済みです。

$ uname -a
Linux okavms 2.6.32-431.17.1.el6.x86_64 #1 SMP Wed May 7 23:32:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.5 (Final)
Release: 6.5
Codename: Final
$

$ bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
vulnerable
this is a test

環境変数"x"に仕込まれた、echoコマンドが実行され、
"vulnerable"
が表示されました。ここに任意のコードを組み込むことができます。

行の最後の、bashが実行され
"this is a test"
が表示されます。これは期待の動作です。

このbashをアップデートして、実行します。
# yum update bash
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* epel: ftp.tsukuba.wide.ad.jp
* extras: www.ftp.ne.jp
* updates: www.ftp.ne.jp
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package bash.x86_64 0:4.1.2-15.el6_4 will be updated
---> Package bash.x86_64 0:4.1.2-15.el6_5.1 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package Arch Version Repository Size
================================================================================
Updating:
bash x86_64 4.1.2-15.el6_5.1 updates 905 k

Transaction Summary
================================================================================
Upgrade 1 Package(s)

Total download size: 905 k
Is this ok [y/N]: y
Downloading Packages:
bash-4.1.2-15.el6_5.1.x86_64.rpm | 905 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : bash-4.1.2-15.el6_5.1.x86_64 1/2
Cleanup : bash-4.1.2-15.el6_4.x86_64 2/2
Verifying : bash-4.1.2-15.el6_5.1.x86_64 1/2
Verifying : bash-4.1.2-15.el6_4.x86_64 2/2

Updated:
bash.x86_64 0:4.1.2-15.el6_5.1

Complete!
#

$ bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

(*)マイナーアップデートのためか、バージョン表示は変わりません。
確認コードを実行します。


$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
this is a test
$

環境変数"x"に埋め込まれた機能を無視した旨のWaringと"x"の実行エラーが表示され、"x"に埋め込まれたコードは実行されず、その後の"test"行が表示されました。期待する動きです。

当面、bashの改修は続くと思われるので、常に最新バージョンに維持する必要があります。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Linux/Ubuntu仮想サーバーLXCでの「ヤマハルーター設定セミナー演習環境」構築事例

2014-07-10 17:24:51 | 仮想サーバー
匠技術研究所
Linux/Ubuntu仮想サーバーLXCでの「ヤマハルーター設定セミナー演習環境」構築事例


こんにちは。匠技術研究所の谷山 亮治です。
今日は、Ubuntu仮想サーバーLXCで「ヤマハルーター設定セミナー」の演習環境を構築していることを紹介します。Linuxネットワークを実際に活用している例です。

■「ヤマハルーター設定セミナー」の演習環境


この図はLinux/Ubuntu上で仮想サーバーを使っている様子です。この仮想サーバーとネットワークシステムは、弊社が主催する「ヤマハルーター設定セミナー」で使っています。独立した2系統のネットワーク各々の上で、独立した三つのサーバーとして動作します。

1.業務ネットワーク系統
社内にある代表的なサーバー二台を構築しています。
1.1.グループウエア・サーバー
典型的なLAMP環境です。
1.2.ファイル・サーバー
典型的なSAMBAサーバーバーです。

2.キャリヤネットワーク系統
疑似キャリヤネットワークを提供するためのPPPoEサーバーです。近い将来にDHCPサーバーも置きます。
2.1.PPPoEサーバー
キャリヤネットワークで多く使われているPPPoE接続を実現するサーバーです。
2.2.(将来)DHCPサーバー
マンション/アパートネットワーク、CATVネットワークなどで一般的なDHCP接続を実現するサーバーです。

判りやすいように物理サーバーのEtherインターフェイスを二つ使っています。二つのインターフェイス間で通信をすることはありません。サーバーのシステム管理は業務系ネットワーク上のPCからSSH接続しておこないます。

複数台で構成してものを一台にコンパクトにまとめています。今後、筐体をノートPCに置き換えて、持ち運びの簡単な演習環境を作ります。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

OpenSSLでのHeartbleedバグの再発を回避するLibreSSLプロジェクトが立ち上がる

2014-04-26 13:06:39 | 情報セキュリティ
匠技術研究所
OpenSSLでのHeartbleedバグの再発を回避するLibreSSLプロジェクトが立ち上がる


こんにちは。匠技術研究所の谷山 亮治です。
今回は「OpenSSLでのHeartbleedバグの再発を回避するLibreSSLプロジェクト」について紹介します。

OpenSSL/Heratbleedによるセキュリティリスクは甚大で、取り返しのつかないものです。オンラインショッピング、会員制サイト等のサイトにアクセスしている皆さんは、念の為パスワードを変更したほうが良いです。

サイト管理者の方は、OpenSSLのバージョンを確認して、不具合の有無と対策が必要です。

OpenSSLはオープンソース・プロジェクトであるOpenSSL Projectが開発を進めてきました。開発はオープンに行われていたものの、そのプロジェクトがリリースするソフトウエアの品質上の問題が生じたため、今後ソフトウエアの品質を維持する仕組みが必要になります。

名前が似ていますが、全く異なるオープンソース・プロジェクトにOpenBSD Projectがあります。そこを母体としてLibreSSL Projectが立ち上がりました。これまでのOpenSSLプロジェクトのソースコードを基に再実装して、より安全なSSLソフトウエアを開発するプロジェクトです。
OpenBSD Projectのこれまでの成果物はOpneBSD、OpenSSH、OpenBGPD、OpenNTPD、OpenSMTPDで、それにLibreSSLが追加されます。OpenSSHはSSH暗号通信の事実上の標準です。

libressl.org(En)
2014年4月26日時点では、「コーディングに忙しくてホームページに手が回っていない」旨と、リリースはOpenBSD5.6と共に行われると記してあります。

The OpenBSD Foundation(En)
LibreSSLの活動資金を支えるOpenBSD Foundationです。OpenBSD関連プロジェクトへのリンクが案内されています。

OpenSSL Project(En)
OpenSSL Projectです。2014年4月26日現在でHeartbleedへの注意喚起を具体的に示していないことが気になります。

別途、業界の団体などがOpenSSLプロジェクトへの支援を始める旨の報道もあります。追って紹介します。



匠技術研究所ではヤマハルーターとMicrosoft Azure(旧 Windows Azure)をつなぐセミナーを開催します。また、その他ヤマハルーターセミナーを開催しております。詳細はこちらから。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

3月25日(火)のつぶやき

2014-03-26 02:03:22 | Weblog

横浜へ移動中。天気が良いのでこのまま眠りそう。


サーバーでの処理を効率化の為に調整すると、小規模なものでも並列処理が必要になることがはっきりします。CPUコアがいくら増えても、処理を分散し割り当てられない処理は、一個のCPUで動いています。


横浜からの帰路は、往路とは別ルート。ちょうど、四角に回りました。


「Linuxサーバー・システム更新の苦労話-2-rsyncでsshオプション指定」 goo.gl/y0KBEv


「Linuxサーバー・システム更新の苦労話-3-rsyncでsshのオプション指定」 goo.gl/y0KBEv


「Linuxサーバー・システム更新の苦労話-2-暗号処理の負荷を軽減」 goo.gl/bb7by3


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Linuxサーバー・システム更新の苦労話-3-rsyncでsshのオプション指定

2014-03-25 19:31:38 | 社内システム運用記
匠技術研究所
Linuxサーバー・システム更新の苦労話-3-rsyncでsshのオプション指定


こんにちは。匠技術研究所の谷山 亮治です。
今日から何度か、この数日取り組んできた、サーバーの調整を紹介します。今日は、その第三回目。

第一回目「Linuxサーバー・システム更新の苦労話-1-バックアップできない」はこちら
第二回目「Linuxサーバー・システム更新の苦労話-2-暗号処理の負荷を軽減」はこちら

遠隔地へのバックアップを行っていますが、バックアップ格納先のサーバーが不定期に止まります。その状況を改善するために、サーバーの負荷を少しでも減らし、処理を楽にすることを考えました。その二回目です。

バックアップを司るrsyncは、OpenSSHを使って転送するデーターを暗号化します。OpenSSHは沢山の暗号処理方法に対応しています。今回はopenSSHの暗号処理速度を比較して、暗号処理方法を決めました。

sshのサポートする暗号処理
man ssh_configより抜粋

Specifies the ciphers allowed for protocol version 2 in order of
preference. Multiple ciphers must be comma-separated. The sup‐
ported ciphers are “3des-cbc”, “aes128-cbc”, “aes192-cbc”,
“aes256-cbc”, “aes128-ctr”, “aes192-ctr”, “aes256-ctr”,
“aes128-gcm@openssh.com”, “aes256-gcm@openssh.com”, “arcfour128”,
“arcfour256”, “arcfour”, “blowfish-cbc”, and “cast128-cbc”. The
default is:

aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,
aes128-gcm@openssh.com,aes256-gcm@openssh.com,
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,
aes256-cbc,arcfour

この中で、バックアップデーターの送出側サーバーで比較的暗号処理の負荷が低かったのがarcfour256です。このサーバーは、今となっては低スペックなのですが、極めて安定して動作しており、さらに上流のサーバーよりバックアップデーターを取得して保管しています。

rsyncではopenSSHを使うことができます。さらにopenSSHの様々なオプションを渡すことができます。
rsyncはs指定方法を間違うと、元データーを削除する可能性もあります。以下の例をそのまま使うことは決してしないで、理解して使ってください。コマンドラインは公開できるように編集しているので、間違っているかもしれません。

/usr/bin/rsync --inplace --delete -cav -e "/usr/bin/ssh -c arcfour256" rsync.example.jp:/mnt/kawasaki /mnt/md1/kawasaki/ &>> /home/taniyama/rsync.log 2>> /home/taniyama/rsync.err

rsyncを実行する側の
/mnt/kawasaki
を遠隔地のサーバー
rsync.example.jp
上の
/mnt/md1/kawasaki/
にコピーします。
ssh実行時のオプションで暗号処理の種別を”arcfour256”と指定しています。この要領でsshに対し様々なオプションを渡すことができます。

rsyncの細かなオプションは、man rsyncで、sshの細かなオプションはman sshをご覧ください。

標準出力ではコピーしたファイル名全てが、標準エラー出力では、rsync/sshのエラーログが格納されます。


明日も続きを紹介します。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Linuxサーバー・システム更新の苦労話-2-暗号処理の負荷を軽減

2014-03-24 23:48:19 | Linux
匠技術研究所
Linuxサーバー・システム更新の苦労話-2-暗号処理の負荷を軽減


こんにちは。匠技術研究所の谷山 亮治です。
今日から何度か、この数日取り組んできた、サーバーの調整を紹介します。今日は、その第二回目。

第一回目はこちら

遠隔地へのバックアップを行っていますが、バックアップ格納先のサーバーが不定期に止まります。その状況を改善するために、サーバーの負荷を少しでも減らし、処理を楽にすることを考えました。

バックアップ経路を暗号化するためにsshを使っています。sshは沢山の暗号処理方法を備えており、オプションでその方式を指定することができます。opensshとopensslは兄弟です。opensslでは暗号処理速度を調べることができます。

opensslでの指定可能な暗号処理一覧(opensslコマンドヘルプより)
Message Digest commands (see the `dgst' command for more details)
md2 md4 md5 rmd160
sha sha1

Cipher commands (see the `enc' command for more details)
aes-128-cbc aes-128-ecb aes-192-cbc aes-192-ecb
aes-256-cbc aes-256-ecb base64 bf
bf-cbc bf-cfb bf-ecb bf-ofb
camellia-128-cbc camellia-128-ecb camellia-192-cbc camellia-192-ecb
camellia-256-cbc camellia-256-ecb cast cast-cbc
cast5-cbc cast5-cfb cast5-ecb cast5-ofb
des des-cbc des-cfb des-ecb
des-ede des-ede-cbc des-ede-cfb des-ede-ofb
des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb
des-ofb des3 desx rc2
rc2-40-cbc rc2-64-cbc rc2-cbc rc2-cfb
rc2-ecb rc2-ofb rc4 rc4-40
seed seed-cbc seed-cfb seed-ecb
seed-ofb zlib

私のopensslの暗号処理速度の測定の経験から、rc4を指定するとバックアップに成功しました。ただ追試を行うとバックアップ受信側のサーバーが止まってします。なかなか安定してくれません。

明日は、この続きを紹介します。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Linuxサーバー・システム更新の苦労話-1-バックアップできない

2014-03-23 23:16:34 | 社内システム運用記
匠技術研究所
Linuxサーバー・システム更新の苦労話-1-バックアップできない


こんにちは。匠技術研究所の谷山 亮治です。
今日から何度か、この数日取り組んできた、サーバーの調整を紹介します。今日は、システムの状況の説明です。

最近、一台のLinuxサーバーが、ちょっと不安定になりました。長時間の仕事をしていると、遠隔操作のSSHが繋がらなくなることがあります。そこで、クリーンインストールすることにしました。とはいえ、巨大なディスクを備えており、バックアップだけでもたいへんです。事前に遠隔操作をして、内部のバックアップ領域にコピーを試みたのですが、そのバックアップの過程でも止まることがあり、上手くいくときもあります。

障害が発生したと思われる時のログは僅かで、システム内部で全面的に使っているEXT4ファイルのエラーが記録されています。ファイスシステムが壊れ始めているのかもしれません。データー領域はミラー化されており、これまでの運用経験では、この構成で同様のエラーが発生したことはありません。ただ、過去ファイルシステムのエラーには一度だけ出会ったことがあり、その際もたいへんな苦労をしました。その経験から、その後のシステムは、簡明に組んでいます。しかしながら、今回の障害は、かなり深いところで発生しおており、障害解決までには、何度か手戻りが予想される容易でない状況です。完全に停止していない状況なので、先手を打って障害を解消し、安定運用に戻るという算段です。

次回は、遠隔で取った対策を紹介します。ファイルシステムの障害が意外な形で回避できました。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

3月5日(水)のつぶやき

2014-03-06 03:25:46 | Weblog

「Linux Mint 16 Petra上にLibreOffice4.2.1をインストール」 goo.gl/sKApvE


「sshでの容量の大きなファイルのコピーと圧縮の関係のヒント」 goo.gl/tE6xw7


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

sshでの容量の大きなファイルのコピーと圧縮の関係のヒント

2014-03-05 13:30:57 | 通信ネットワーク
匠技術研究所
sshでの容量の大きなファイルのコピーと圧縮の関係のヒント


こんにちは。匠技術研究所の谷山 亮治です。
今日は、容量の大きなファイルのコピーと圧縮の関係のヒントを紹介します。

容量の大きなファイルをコピーする際に、いつも悩むことは
「圧縮してからコピーしたほうが速いのか」
「圧縮しながら転送したほうが速いのか」
の選択です。

以下のファイルコピーでは、おもしろい結果が出ました。sshの暗号化負荷を軽減する為に暗号アルゴリズムを指定しています。二つのLinuxは、コピー元、コピー先共にSSDを使っており、無線LAN中継装置で同一LANにあります。

1.7.4Gのイメージファイルをsshの圧縮機能を使ってコピー
2.そのファイルを予め圧縮したファイルにしてコピー
3.内容の違う7.4Gのファイルを予め圧縮ファイルにしてコピー

$ scp -Cp -P 20023 -oCiphers='arcfour' SignalN* takumi@192.168.0.11:/tanitmp
1.NasMaster.img 100% 7385MB 45.6MB/s 02:42
2.NasMaster.img.gz 100% 198MB 3.5MB/s 00:56
3.NapMaster.img.gz 100% 957MB 3.7MB/s 04:22

1.と2.との比較では、圧縮後ファイルをコピーしたほうが、
162/56=2.9倍
速くなりました。ただ、圧縮ファイルを作る時間も必要なので、全体系でどの程度速くなるかは、これだけでは判りません。

3.は2.の速度が妥当なものかを知るために、圧縮後も1G弱あるファイルをコピーしたものです。容量が大きいので、その分コピーに必要な時間が長くなります。

容量の比は
957/198 = 4.83
コピー時間の比は
262/56 = 4.68

傾向としてはほぼ期待通りです。

1.で判るとおり、非圧縮状態のファイルはsshの圧縮効果で
45.6/3.5 = 13倍
のコピー速度です。これも期待する効果が得られており、非圧縮ファイルのコピーでは圧縮効果を期待できます。

ざっくりと、無線LANの通信速度は、
3.5x8 = 28Mbps
です。
sshの圧縮効果により
45.6x8 = 364.8Mbps
と実効通信速度が向上しています。

引き続き、いろいろ試してみます。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Linuxサーバーに拡張HDDを接続するまでの手順(1)

2014-02-20 23:10:42 | Linux/Ubuntu
匠技術研究所
Linuxサーバーに拡張HDDを接続するまでの手順(1)


こんにちは。匠技術研究所の谷山 亮治です。
先月より、あっちこっち火消しに回っています。今日はLinuxサーバーの火消しでした。

困ったことに、このLinuxサーバーは、ssh接続できなくなります。
ssh接続できないときの振る舞いは、Linuxサーバー側のリソースが一杯になった時と同じ現象で「つながり始めているけどプロンプトが返ってこない。」です。

どうも沢山のファイルをコピーし続けているうちに止まります。/var/log/syslogに怪しいエラーが記録されています。

Feb 20 15:34:38 okaLxc01 kernel: [10709.867292] EXT4-fs error (device md0): ext4_ext_check_inode:464: inode #54789383: comm cp: bad header/extent: invalid magic - magic e30a, entries 1, max 4(0), depth 0(0)

ミラーディスクの/dev/md0のファイルシステムETX4が怪しい。そこでmd0の内容を、新たに作るmd1にコピーした上で、md0のファイルシステムを作り直します。今日はmd1を新規につくり、md0の内容をコピーするところまででした。

ポイントは、
1.fdisk -lでOSが認識しているディスクを確認する
OS起動ディスクは
/dev/sda

md0に割り当てているディスクは
/dev/sdb1 /dev/sdc1

使っていないディスクは
/dev/sdd
/dev/sde
/dev/sdf

でした。

2.md1に使うディスクのパーティションテーブルを初期設定する
md1に使うディスクは
/dev/sdd
/dev/sde
とします。

fdisk /dev/sdX
でfdiskを起動し、Primary Pertion 1 に全領域を割り当てます。
ファイルシステム・タイプを0xfd(Linux RAID)に設定します。

3.mdadmでミラーディスクmd1を生成する
これは簡単でした。一瞬で二枚のディスクがミラーになります。同時に二枚のディスクをミラー化するために同期が走りますが、2Tのハードディスクなので極めて長時間かかります。同期を進めながら、以下の手順を実行します。

4.md1上のパーティションテーブルを初期設定する
これは2.の手順と全く同じですね。
fdisk /dev/md1

5.md1上に[ファイルシステムを作る
いよいよ、ディスク上にファイルシステムを作り、読み書きができるようにします。
mkfs -t ext4 /dev/md1

6.md1をマウントして追加のディスクとして使う。
ここまで来れば、ディスク一枚の追加ディスクをマウントすることと同じです。
mount /dev/md1pt1 /mnt/md1
接続はdfで簡単に確認できます

次回はコマンドの詳細を掲載します。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

2月12日(水)のつぶやき

2014-02-13 02:49:42 | Weblog

「Linux Mint 16 Petra Xfceのマルチメディア向けのチューニング-Lowlatency-Kernel」 goo.gl/8I5MRL


しまった。新幹線Wi-Fiサービスが終わっちゃう。。


新幹線無線LANサービスから手持ちのdocomoのWi-Fiルーター+iijmioに切り替えて、仕事継続中。


さてIPアドレスの固定に成功したので移動しよう。電源もリモートでON/OFFできるようにしたので、IPとsshdを失わなければリモートメンテナンスができます。


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

WindowsとLinux間でファイルを安全にコピーするpscp

2014-02-04 18:30:48 | 通信ネットワーク
匠技術研究所
WindowsとLinux間でファイルを安全にコピーするpscp


今日は、WindowsとLinux間でファイルを安全にコピーするpscpを紹介します。

"pscp"はWindows上で動作する"scp"で、sshクライアントプログラムの一つです。Linux等で一般的なSSHサーバー経由での安全なファイル転送に使います。手元のWindowsPCから、ファイルを安全にサーバーに送りたいとき、あるいはサーバーから安全にファイルをダウンロードすることができます。

SSHは、インターネットを経由したサーバー管理で広く使われており、接続ユーザ名やパスワードのやり取りも暗号化して行い、さらにデータ通信も暗号化することができます。telnetの置き換えです。SSHを基礎とした、安全なファイル転送ソフトとしてsftpがあり、これはftpの置き換えです。

telnetやftpをインターネットを介して使うことでサーバーと接続可能なユーザー名とパスワードが盗まれる恐れがあります。必ずssh,scp,sftpを使ってください。

オープンソース・ソフトウエアとして開発されているターミナルソフトで著名なPuTTYの関連機能としてpscpは開発されています。ダウンロードして直ぐに使うことができます。特別なライブラリのインストールやCygwinのような大きな環境は不要です。レジストリーへの書き込みもしないので、コピーして直ぐに使うことができます。

■PSCPのダウンロードサイトはこちら

■利用例
"sshserver.net"上のファイルを、手元のWindowsにコピーします。コマンドを実行すると、パスワード入力を求められます。SSHで特徴的な、キーファイルでの認証もできます。

C:\>pscp -C username@sshserver.net:/home/username/linuxmint-16.iso .

逆に、手元のWindowsからLinuxサーバーへは、

C:\>pscp -C linuxmint-16.iso username@sshserver.net:/home/username/

■PSCPの使い方とオプション一覧
C:\Users\taniyama\Downloads>pscp
PuTTY Secure Copy client
Release 0.63
Usage: pscp [options] [user@]host:source target
pscp [options] source [source...] [user@]host:target
pscp [options] -ls [user@]host:filespec
Options:
-V print version information and exit
-pgpfp print PGP key fingerprints and exit
-p preserve file attributes
-q quiet, don't show statistics
-r copy directories recursively
-v show verbose messages
-load sessname Load settings from saved session
-P port connect to specified port
-l user connect with specified username
-pw passw login with specified password
-1 -2 force use of particular SSH protocol version
-4 -6 force use of IPv4 or IPv6
-C enable compression
-i key private key file for authentication
-noagent disable use of Pageant
-agent enable use of Pageant
-batch disable all interactive prompts
-unsafe allow server-side wildcards (DANGEROUS)
-sftp force use of SFTP protocol
-scp force use of SCP protocol

C:\Users\taniyama\Downloads>

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

8月27日(火)のつぶやき

2013-08-28 01:53:18 | Weblog

「国産ロケットイプシロンが本日13時45分に発射-JAXAによるネットライブ中継あり」 blog.goo.ne.jp/takuminews/e/c…

1 件 リツイートされました

国産ロケットイプシロンの発射は中止。エンジン点火せず。原因調査中です。


今日の川崎市北部は過ごしやすい良い天気です。


マックでmobilepoint経由で投稿しています。モバイルWi-Fiもあるのですが、使わずに済んでいます。もうすぐ移動します。


CAD画面を同時多数に配信し、複数箇所で共有して見ることができます。音声は伝わる君携帯会議を利用して、安定した会話を実現します。


「ヤマハルーターへのSSH接続と、ルーター配下のLinuxサーバーへのSSH接続」 goo.gl/I62zzv


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする