a-stormのblog

日々の出来事等、とりとめのないことなど、できるだけ色々と書いていこうと思います

Windows10 キーボードのカスタマイズ: Ctrl とか CapsLock とか Ctrl-hとか

2021-03-09 18:32:40 | コンピュータ

1.Control(Ctrl)キーとCapsLockを入れ替える

---> ChgKey を利用する

 

2.Ctrl-h が入力されたら、Backspace とする

---> AutoHotKey を利用する

 

こんなファイルを AutoHotKey Script.ahk という名前で保存して、

c:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

フォルダに配置し、Windows起動時に自動的に読み込まれるようにする。

--------

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

^h::Send, {Backspace}
^b::Send, {Left}
^f::Send, {Right}
^n::Send, {Down}
^p::Send, {Up}
^e::Send, {End}
#^a::Send, {Home} ;disabled (used for select-all)
^d::Send, {Delete}
^k::Send, {Shift down}{End}{Shift up}{Backspace}
^m::send, {Enter}

--------

 


lenovo G580 (note) を使えるようにする

2021-02-12 13:53:01 | コンピュータ

Lenovo G580

TYPE 2689

BIOS (before) 62CN41WW -> 62CN44WW へアップデート

HDDをSSDへ: Western Digital WD3200BPVT (320GB) -> ADATA ASU650SS-240GT-REC (240GB)

Windows10 のインストールを行う。まずはライセンスキー無しで登録して後でライセンスキー入力と認証を行う。

インストール時、Microsoftアカウント(オンラインID)の登録を求められるが、ローカルアカウントで登録したい。

やり方は、ネットワークにつながないでセットアップを進めればよい。

ローカルアカウント登録後に、ネットワーク接続を行う。

認識されないデバイスが2つあるので、以下のドライバーをインストールする。

(1)PCI シンプル通信コントローラー

Intel マネジメント エンジン インターフェイス (MEI) ドライバー Windows 10 (64bit) - ノートブック

https://pcsupport.lenovo.com/jp/ja/downloads/ds503960-intel-management-engine-interface-mei-driver-for-windows-10-64-bit-notebook

 

(2)Microsoft ACPI 対応埋め込みコントローラー

Lenovo エネルギー マネジメント Windows 10 (64bit) - Lenovo ideapad 330-14IGM, 330-15IGM

https://support.lenovo.com/mn/ja/downloads/ds502422

 


Windows7 クリーンインストール後、ライセンス認証がエラーになる

2021-01-19 15:24:03 | コンピュータ

エラーコード: 0xC004C008

        ライセンス認証サーバで、指定されたプロダクト キーは使用できないことが判明しました。

 

Windows7 のセキュリティ関連のソフトが古すぎるようだ。

時刻を正しく合わせた後、Windows Update Agentをインストールし、Windows Update を行う。


CentOS 8ユーザの今後について

2021-01-19 10:13:10 | コンピュータ

CentOS 8を使っていたユーザが、今後新たにサーバを立てる場合、どのOSを選択すれば良いかについて考える。

OSの運用技術を身に着ける上で、ビジネスユースで主流となりそうなOSを選択したい。

 

1.CentOS系を利用する

(1) CentOS7を利用する

CentOS7は2024年6月までメンテナンスされる。既存ユーザはそれまでに移行を考えればよいとして、これから新規に利用開始する場合は新しいOSにしたい。

コマンド体系等も新しくなっているので、新しい技術を身に着けたい。

既存のCentOS7と運用を合わせたい場合はCentOS7を選択する事で良いかもしれない。

 

(2) CentOS8を利用する

せっかく出たCentOS8だが、2021年12末までのメンテナンスとのことなので、寿命が見えており、新規に利用開始するのは避けたい。

 

(3) CentOS Streamに移行する

今後、ビジネス利用の主流になっていくのであれば、Streamに移行するのが良いが、CentOS系のコミュニティがどうなっていくのか分からない点が不安要素。

 

(4) Fedra

RedHat/CentOS系では脆弱性対応も早く良さそう。

 

(5) RedHat Enterprise Linux (RHEL) (有料)に移行する。

費用が払えるならいいのかも。繰り返しになりますが、有料です。

 

2. CentOSより分離した、CentOS後継OSを利用する

(1) Rocky Linux

今後の動向が不明。

 

(2) AlmaLinux (CloudLinux社の Lenix Project)

今後の動向が不明。

 

 

3. CentOS以外

(1) Ubuntu

現在最も人気のあるディストリビューション。

参考書や、Web上の情報も多く、有力な選択肢の一つ。

 

(2) Debian系

候補の一つ。

 

(3) Gentoo Linux

最近、脆弱性対策をやってきていて思うのは、ソースコードレベルで対応しているが、各種ディストリビューションレベルで対応が遅れる事があるという事。

自分でビルド(コンパイル)すれば問題無いので、ローリング・リリース方式のディストリビューションがうらやましく思える。Arch Linuxとか。

サーバの性能も上がってきており、ソースが提供されていればビルドする位どうってことない。

ビルドするコツさえつかめばコマンド一発で済むような気がする。

標準で systemd対応しておらず、systemd化したいなら、自分で頑張らないといけない事が玉に瑕。

 

 


dd / gzip で HDDのバックアップ

2021-01-05 11:14:55 | コンピュータ

clonezilla がどうしても起動しないので、dd, gzip でバックアップ。

(1)バックアップを保存するHDD(NTFS)を接続 -> /dev/sdc1 とする

(2)systemrescuecdでブート

(3)バックアップを保存するHDDをマウント

# mkdir /tmp/bak

# mount -t ntfs-3g /dev/sdc1 /tmp/bak

(4)バックアップ取得

# dd if=/dev/sda bs=64k status=progress | gzip -c > /tmp/bak/xxx.gz

 

(5)リストア手順(メモ)

# mkdir /tmp/bak

# mount -t ntfs-3g /dev/sdc1 /tmp/bak

# gunzip -c /tmp/bak/xxx.gz | dd of=/dev/sda bs=64k status=progress

 


HDDを完全消去する(色々+消去時間測定)

2020-12-27 18:54:01 | コンピュータ

HDDを完全消去したい。

要件としては、

(1)乱数、または、ゼロを書き込む(1回で十分)

(2)途中の経過時間、終了予測時間を表示して欲しい

(3)処理時間が速い事

 

(1)は1回書込みでは不十分という声があるかもしれないけど、どういう攻撃者を想定しているのかの議論が必要だ。

個人のHDDであり、電子顕微鏡みたいな数千万円するような大掛かりな機器を使って、残留磁気を1ビットづつ解析するような攻撃者を想定していないので、1回で十分とする。

企業の漏洩してはいけない情報や、国家機密、軍事情報等は、十分な回数の消去を行って下さい。

以下、時間を測定しました。

 

【測定環境】

1.PC        Lenovo G580

        CPU Intel Celeron B820@1.70GHz

        Memory 4096MBytes

2.HDD

        Western Digital WD3200BPVT - 24JJ5T0, 320GB, SATA, 内蔵

3.Software

(1)DBAN (乱数又はゼロ); Bootable CD/DVD

    メルセンヌ乱数、1回、Verify無し

    Quick Erase(ゼロ)、1回、Verify無し

    UEFIに対応していないため、最近のPCでは使いづらい

 

(2)shred (乱数 又は ゼロ) ;  Linux (例えば SystemRescueCD)

    # shred -v -n 1 /dev/sda (乱数1回、ゼロ上書き無し)

    # shred -v -n 0 -z /dev/sda (乱数0回、ゼロ上書き1回)

 

(3)dd (/dev/urandom 又は /dev/zero) ; Linux標準コマンド

    # dd if=/dev/urandom of=/dev/sda bs=64M status=progress

    # dd if=/dev/zero of=/dev/sda bs=64M status=progress

 

(4) fromat ; Windows標準コマンド。formatコマンドでも/p:0でゼロフィルしてくれるようだ。

c:\> format z: /fs:ntfs /p:0

 z: ドライブレターを指定する

/fs:ntfs   ファイルシステムとしてNTFSを指定する。他に、MO光磁気ディスク /fs:fat32、/fs:fatなど

 /P:count        ボリュームのすべてのセクターを 0 にします。この処理の後、
                  ボリュームが、"count" の回数だけ毎回異なる乱数で上書き
                  されます。"count" が 0 の場合、すべてのセクターを 0 に
                  した後にそれ以外の上書きは行われません。このスイッチは、
                  /Q が指定されていない場合は無視されます。

                 (訳が間違っている? /Q(クイックフォーマット)が指定されている場合は、

      /Pオプションは無視されて、クイックフォーマットになります)

 

(2), (3)はsystemrescuecd を利用しました。ベースはArchLinuxっぽいです。

Windowsのツールも追記しましたが、時間測定までは行っていません。

追記:

format コマンドの他、diskpart clean all や、cipher コマンドでも消去(ゼロフィル、乱数書込み)ができるようだが、

・ドライブ指定を間違えないようにしたい。難しい操作は避けたい。

・消去中の進捗状況(%)が見えないと、進んでるのか、いつまでかかるのかが分からない

ことから、format コマンドで実行するのが良いと思います。

大容量HDDで1晩かかっても終わらなさそうな時は、適当な大きさで、パーティションを分け、パーティション毎にやっています。

 

 

4.測定結果

(1)-1 DBAN 乱数1回         91分0秒

(1)-2 DBAN  ゼロ1回        82分00秒

(2)-1 shred 乱数1回        110分38秒

(2)-2 shred ゼロ1回         82分02秒

(3)-1 dd 乱数1回            110分56秒

(3)-2 dd ゼロ1回             82分32秒

 

5. 評価

一番速いのはDBAN。次は、shred ≒dd ほぼ同じ。

乱数とゼロでは、ゼロの方が速いようです。

        ゼロ書き  65MBytes/s

        乱数書き  58MBytes/s(DBAN), 48MBytes/s(shred/dd)

1TBなら、DBANゼロ書きで、4時間15分位かかる。

HDDの接続インタフェースが速くなったり、PCが高速ならもっと早くできるのだろう。


SSDを完全消去する

2020-11-12 17:15:50 | コンピュータ
SSDを完全消去したい。
SSDはウェアレベリング等、HDDの構造と違うため、通常のゼロ上書き、乱数上書きの方法ではなく、
Secure Erase コマンドを送って消去を行う必要がある。
(HDDのように可動するヘッドが無く、電気的に、一括消去ができるため、早いと想像)

ところが、コンピュータウィル等が勝手に Secure Erase コマンドを実行してしまわないよう、PCに接続された後にfrozen 状態にされ、Secure Erase コマンドを実行する事ができなくなっているようだ。

従って、以下のような複雑な手順を踏むことになる。

(1)SSDをPCにつなぎ、systemrescuecd で起動する。
今回はUSBでなく、SATA直付け。
デバイス一覧を表示させ、デバイス名を確認する。
ここではデバイス名を/dev/sda とする。
※削除するSSD以外はつながない方が良い。SystemrescuecdはUSBメモリから起動する。

# fdisk -l

SSDの状態を確認する。
# hdparm -I /dev/sda

→frozenとなっている。
 frozenでない場合は、not frozen と表示される。

(2)そのままでは、SSDが frozen 状態になっていて、Secure Erase コマンドを実行できないので、
 frozen を解除する必要がある。
 解除する手順はいくつかあるが、今回はPCの電源ONのまま、SSDを引き抜き、再度挿入する。
 これで、frozen状態が解除される。
 PCをスリープさせて復帰させる等いくつかやり方あるようだが、うちでは、抜き差しで解除できた。
 (活線挿抜)

再度、SSDの状態を確認する。
# hdparm -I /dev/sda
→ not frozen になった。

(3)SSDにパスワード設定する(Secure Eraseの事前作業として必要)
# hdparm --user-master u --security-set-pass <password> /dev/sda

パスワードが設定されたかどうか確認する。
# hdparm -I /dev/sda
パスワードが設定されると、# hdparm -I /dev/sda の出力においてenabledと表示されます。

(4)SSDに Secure Erase コマンドを送る(又は Secure Erase Enhanced コマンド)
# time hdparm --user-master u --security-erase <password> /dev/sda
又は
# time hdparm --user-master u --security-erase-enhanced <password> /dev/sda


Secure Erase コマンドを実施した後、再度、Secure Erase Enhanced を実施したい場合は、再度、パスワードを設定する事。
パスワードは、Secure Erase / Secure Erase Enhanced の後消去される。

<参考>
SSDをSecure Erase機能で安全に消去する
https://qiita.com/nvsofts/items/f46c8a1b3541894ad382

HP ZBook 17 G2 の BIOS をアップデートする

2020-08-16 18:56:24 | コンピュータ
HP ZBook 17 G2 の BIOS をアップデートする

https://support.hp.com/jp-ja/drivers/selfservice/hp-zbook-17-g2-mobile-workstation/6978821
から、必要なファイルをダウンロードする。

元々はWindows OSで使われている事を想定しているようで、Windows用のプログラムはあるが、こっちは、CentOSで使っている。
ダウンロードしたファイル(sp103523.exe)を起動し、起動用USBメモリを作成するも、うまくいかない。

調べた結果、USBメモリファイルがちゃんと作られていないようだ。

E:\Hewlett-Packerd\BIOS\New フォルダに、新しいBIOSのファイルが格納されていない。
しょうがないので、
C:\SWSetup\sp103523\
に格納されている、M70_0126.bin ファイルを Newフォルダにコピー。

次に、PCを再起動し、ESCキーを押し、BIOS設定を表示させ
BIOS Upgrade のメニューからアップデートを実施。

CentOS7 に unbound をインストールし、DNSキャッシュサーバを構築する

2020-08-08 22:01:01 | コンピュータ

yumコマンドでunboundをインストールする
# yum install unbound

設定ファイルを編集する
# vi /etc/unbound/unbound.conf

server:
interface: 0.0.0.0
access-control: 0.0.0.0/0 refuse
access-control: 192.168.1.0/24 allow

# DNS Query forward
forward-zone:name: "."
forward-addr: 8.8.8.8
forward-addr: 8.8.4.4


# ローカルホストの名前解決を行う
local-zone: "local." static
local-data: "gw.local. IN A 192.168.1.1"


confファイルをチェックする
# unbound-checkconf

まだ unbound起動前に unbound-checkconf すると unbound_server.key が無いと怒られるので、事前にkeyを作る。

# unbound-checkconf
/etc/unbound/unbound_server.key: No such file or directory

[1549247123] unbound-checkconf[7488:0] fatal error: server-key-file: "/etc/unbound/unbound_server.key" does not exist



# sytemctl status unbound-keygen

# systemctl start unbound-keygen

# systemctl status unbound-keygen

鍵が出来たか確認し、unboundを起動する。
# ls -l /etc/unbound/*.key

# systemctl start unbound

# systemctl enable unbound

# systemctl status unbound


DNSサーバのFirewall設定で DNSのListenポートを開ける。
# firewall-cmd --add-service=dns --permanent

# firewall-cmd --reload