「IT/パソコン」カテゴリーアーカイブ

ITとパソコンに関するカテゴリです。

Dynabook Rシリーズ

【レビュー】高性能のDynabookを4万円で購入<楽天・中古> SSD

在宅ワーク用PCを買い替え

コロナ禍で在宅ワークが増えて、自宅のPCを使うことが増えました。

Windows7のAcerのノートPCを使っていたんだけど、新調したディスプレイの解像度に合わず、PCも購入することにしたのです。

正直、簡単な開発用やブログ用として使うには、AcerのノートPCでも十分だったんだけど、せっかく買ったディスプレイを100%を使うために仕方なかったのです。

新品に買い替えという選択肢もあったんだけど、限りなく低予算で最低限の目的を果たしてくれればよかったので、中古で選ぶことにしたのです。

楽天で中古物色

新品ノートPCなら近所の家電量販店でもよかったのだけど、中古となると通販のほうが圧倒的に便利

通販のほうが圧倒的に品数が多いので、選択肢が増えます。

新品ならさほど気にしなくてよいのだけど、中古となるとある程度はしっかり見極めたい。

価格ドットコムやAmazon、メルカリなども物色したのだけど、最終的には楽天出品商品のなかで選ぶことにしました。

その理由は….楽天ポイント

楽天ポイントの使いやすさは群を抜いていて、非常に貯まりやすい仕組みになっています。

他サイトでも楽天カードを使えばポイントは付与されるけど、楽天で買えばさらにポイントが付く。

であれば、必然的に楽天で購入することになりました。

求めるスペック

僕はノートPCにそこまで大金を使いたくない人ではあるけれど、せっかく買うからある程度スペックも求めるわけで。

そんななか拘ったスペックが以下の通り

  • Core i5以上
  • Windows10Pro
  • SSD250GB以上
  • 14インチ程度
  • Office付
  • メモリ8GB以上

このスペックを満たすのが最低条件で、楽天内を物色。

BTOパソコンのPC-MAX

そんなか見つけたのが、BTOパソコン専門店のPC-MAXのDynabook Rシリーズ

Dynabook Rシリーズ
BTOパソコン専門店 PC-MAXサイトより

Window10Proで、Corei5搭載の標準価格24,200円

デフォルトのメモリ量は4GBだけど、8GBに増設可能で+3,000円

オプションでOfficeProもつけて+12,000円

DISKは標準でSSD256GB。

合計でなんと約4万円でこのスペックが手に入りました!

僕が望んだスペックのPCがこの低価格とは恐れ入りました。

とはいえ、安すぎることに少し疑問も抱いていたわけで、到着して使ってみるまでは少し不安でした 笑

 

スタッフさんの対応も非常に良かったです。

いま、大雪で配送が正常な状態じゃないんですが、どうされますか?

ちょうど購入したタイミングが大雪で物流がマヒしている時でした。

丁寧にお電話いただいて、物流の状況とか配送に関する制限事項をご説明いただいて、

私からの希望を伝えて、その希望に沿った形で配送していただけました。

 

使ってみた感想

使ってみた感想をいいところと悪いところで紹介します。

■いいところ

いいところとしては、普段使いでは全く問題なく正常に安定動作しています。

重量も非常に軽く持ち運びが非常にしやすいです。

正直4万円でこのクオリティなら、ますます新品を買えなくなるくらいです。

それくらい高クオリティです!

■悪いところ

中古なので少しは悪いところもあるわけです。

バッテリーが弱い感じあります。フル充電でも4時間くらいしか持たないでしょう。

1~2時間くらいなら問題ないですが、長時間使うなら電源が必要です。

あと、底面の高さを合わせる部分が割れているので、平面に置くと少しだけカタカタと傾きます。

あまり気になるほどではないですが、その2点が少し残念なポイントです。

ノートPCを安く探している方にお勧め

低価格でノートPCを探している方にお勧めしたいお店です。

商品レビューも高評価

レビューも高評価続き。これは、実際購入した僕も納得です。

Dynabook以外にも、いろんなパソコンがお値打ち価格でそろっています。

ノートPCをこれからお得に購入したい方は BTOパソコン専門店PC-MAX が超!お勧めです。

Software caused connection abort: cache: error returned while trying to return disk cached data

mod_cacheでエラー発生

virtualhost内でmod_disk_cache有効後に以下のエラーが発生

[Mon Jan 28 11:36:56 2019] errorSoftware caused connection abort: cache: error returned while trying to return disk cached data

エラーの確認方法

apacheのLogLevelをdebugにすると出力される。

対処法

既存キャッシュを全クリアし、apacheの再起動で解消した。

iPhoneがフリーズ!強制再起動で復活♪

iPhoneが突然フリーズで無反応になる

突然iPhoneがフリーズして電源やホームボタンなどが全く反応しなくなってしまったのです。なんの前触れもなく突然に。なにをしても全く反応がない。ただ、キャプチャボタンの効果音はしている。ということは、機械自体の故障ではなさそうな気はした。

フリーズ中の画面キャプチャ(笑)
フリーズ中の画面キャプチャ(笑)

携帯が使えなくて困るのは通話やLINEなど連絡手段を断たれるだけじゃなく、ネットで情報を調べたりも出来ないし、スケジュールも確認できない。(スケジュールはiPhoneアプリのジョルテを愛用中)

また、モンストのデータが飛ぶんじゃないかとヒヤヒヤで。3年位続けてきたゲームデータが飛ぶのは流石に悲しい(T_T)直近でバックアップを取得したのは約3ヶ月前。データを戻したとしても3ヶ月前に戻ってしまうのは、なんとしても避けたかった。

とはいえ、情報源であるiPhoneが使えない状態で調べることも出来なかったので、近くのauショップに駆け寄ることにした。

auショップのお姉さんによる強制再起動

ショップに入って事情を話して3分後。あっさりと復活(笑)

iPhoneには強制再起動のやり方があるようで、それを実施しただけだとw

iPhone強制再起動

①~③の順でボタンを押し、③で長押しすると強制再起動になると教えてくれた。iPhone歴はそこそこあるけど、初めて知りましたwいやー助かりましたよ。思わず「お姉さんの手は神の手ですね!」と言ったら苦笑いされました(笑)常識なんでしょうね。きっとw

当然データに支障もなく通常通りに使えるようになりました。すかさずiPhoneとモンストのデータバックアップを取得したのは言うまでもありませんね。

 

中華人民共和国

中国からの大量アクセス(DDos)に泣かされた話

中国からのアクセスは恐ろしい..

負荷が高いサーバーが有り原因を見てみるとアクセスが集中しているような状況だった。詳しく調べてみると、とあるURLへのアクセスが集中している

/otn/leftTicket/queryA?leftTicketDTO.train_date=2018-09-30&leftTicketDTO.from_station=CDP&leftTicketDTO.to_station=BDP&purpose_codes=ADULT

このURLでめちゃくちゃアクセスされている。接続元のIPアドレスをしらべると中国からのアクセス。teratermを使ってtailコマンドで確認すると、ものすごい勢いでアクセスがきていた(><)なんて恐ろしい…

leftTicket
leftTicket

こんなURLはサイト上に存在しておらず、どういった経路でアクセスされているのかは全くの謎。しかし、対策をしないとapacheが落とされるのは確実なので、ブロックすることにした。

接続数を調べてブロックする

apacheへの接続数を調べると多くて4000とかアクセスされてるし(T_T)当然耐えきれず、サイトがダウンしているように見えるという…

接続数の調べ方 → netstat -an | grep :443 | wc -l

とりあえずiptablesで中国からのアクセスを全てブロックしapacheまで届かせないように対応することにした。

linuxで中国からの通信を遮断

↑のサイトが非常に役に立ちました。サイトの内容を参考にしてiptablesで中国のIPリストを一括でブロック。

一件落着!かと思いきや、完全には対応しきれておらず。。。

WEBサイトのレスポンス低下

WEBサイトのレスポンスが低下してしまったのです。まさに泣きっ面に蜂(><)おそらく、iptablesに大量のIPアドレスを登録したのが原因ではなかろうか。5000くらい登録したのでフィルタリングに時間かかるようになったのでは?

と思いまして、IPアドレスを厳選して登録し直す作業をしているのです。iptablesの設定を変えたからか、FTPも繋がらなくなったし。なんなんだいったい?と言いたくなるよ。ホントに。

結局、アクセスログからIPアドレスを抽出してリストを作成してiptableでブロックしたところ、性能も改善して不正アクセスも止まりました。

余計なものまでブロックしすぎてたということですな。リストは自作に限ります。手間を惜しんだらダメという当たり前な教訓です。

アクセスログから対象のIPアドレスを抽出

apacheのアクセスログでアクセス元のIPアドレスを抽出。

tail -f ssl_access_log | grep [l]eftTicket | awk '{print $1}'

teratermのログに出力したものを加工プログラムを経由してiptablesのコマンドを生成する。

生成したコマンドをまとめて実行!の繰り返し。

ある程度繰り返しているとアクセスが落ち着いてきたのがわかる。

前向きに捉えるよ

腐っても仕方ない。いちおう僕もインフラエンジニアの端くれ。iptablesとFTPとかいろいろ覚えれるチャンスだと思って。前向きに捉えてなんとかするさ!

こういうとき、インフラ担当一人は辛いなぁ。でも、仕方ない。頑張るのですよ!!

サーバーに来る前のルーターレベルで対応してもらえると助かるのだが、使っているサーバーではそういうのはやっていないらしい。

サーバー業者によってはDDOS対策されているものあるのだとか。チョイスミスったかw

明日には落ち着きますように!

 

centos

curl (35) SSL connect error 対処法

CentOS6のcurlは基本的に古い

Centosも7が主流になった今。Centos6のライブラリは古いものになりつつあります。

とはいえ、Centos7はコマンドも違うし、いきなり本番運用に使うにはハードルが高い。

結局、慣れ親しんだCentos6を使ってしまうのです。

TLS1.2への移行で障害が出た

私の場合も例外ではなく、主にCentos6のサーバーをメインで使っているのですが、ここ最近のTLS1.2への移行で障害が出てきたのです。TLS1.2に対応するには、OpenSSLやcurlなどのライブラリバージョンが関係してきます。

バージョンが古いと

curl: (35) SSL connect error

こんなエラーが出て接続できなくなるのです。サーバー側が切り替わる前に、クライアント側もちゃんと対応しておく必要があるのです。対応しておかないと、API通信で障害が発生して運用に支障をきたしてしまいます(><)

対処法

curlをバージョンアップします。

1.curlのバージョン確認

curl -V

[root@localhost ~]# curl -V
curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

2.curlダウンロード&解凍

インストールディレクトリを変えたいので手動でインストールします。

wget https://curl.haxx.se/download/curl-7.60.0.tar.gz

tar xzf curl-7.60.0.tar.gz

cd curl-7.60.0

3.コンパイル&インストール

configureするときが非常に重要。既存を上書きしないようにする。

./configure –enable-libcurl-option –prefix=/usr/local/curl-7.60.0 # ←重要
make
make install

4.既存curlの退避&シンボリックリンク作成

既存curlの場所を確認

which curl

既存curlを退避

mv /usr/bin/curl /usr/bin/curl.org

シンボリックリンク作成

ln -s /usr/local/curl-7.60.0/bin/curl /usr/bin/curl

5.curlのバージョン確認

[root@localhost ~]# curl -V
curl 7.60.0 (x86_64-pc-linux-gnu) libcurl/7.60.0 OpenSSL/1.0.1e zlib/1.2.3
Release-Date: 2018-05-16
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz UnixSockets HTTPS-proxy

Protocolsにhttpsが含まれていない場合はOpensslが不足している!

6.https確認

curl https://接続先ドメイン/

OKになれば対応完了!

[PR]root権限付きVPS一覧

 

Apache struts でまたしても脆弱性発覚!

Apache struts とは

Apache StrutsはJavaWEBアプリケーションのオープンソースフレームワークです。

導入が比較的容易で無料なので使っている人も多いハズ。

Apache Tomcatのサーブレットコンテナと合わせて使うのが一般的。

Strutsを使えば、大抵のJavaアプリケーションは動作できる。

Apache Strutsとは(wikipedia)

便利だけど脆弱性が多い

Strutsは便利なんだけど、脆弱性が非常に多いのが難点。

対策されたバージョンの提供が早いのが救いだが。

8/23にも新たに脆弱性が発見されてバージョンアップを促している。

Apache Struts 2 脆弱性報告

どんな脆弱性?

設定ファイルのnamespaceに対して

  • 値が指定されていない
  • ワイルドカードが指定されている
  • URLタグの記述でactionかvalueが指定されていない

場合において、任意のコードが実行できてしまうというもので、深刻度MAXの脆弱性です。

 

 

 

香港(58.82.203.145)からのアタックを対策してみた

運営中のWEBサーバーに対して香港からアタックを受けた。

接続元のIPアドレスは「58.82.203.145」

IPひろばというサイトで検索すると香港になっている。

POSTアタック

POSTアタック

任意のディレクトリに対して、POSTで送信しまくっている。

あきらかに機械的にアタックしていると思われる。

対策はアクセス拒否

アクセス拒否で対応した。

httpd.confで以下のように修正

Order allow,deny
Allow from all
deny from 58.82.203.145

アクセスすべてを403で処理するようになりました。

拒否しないとDBまで処理されてしまい危険なのです。

アタックに対応するには拒否が一番!

.htaccessで拒否

.htaccessでRewriteRuleを使って拒否することも出来ます。

単一ディレクトリに対しての攻撃の場合は、こっちの方が対策が早いかも。

RewriteCond %{REMOTE_ADDR} ^(58\.82\.203\.145)
RewriteRule ^.*$ – [F,L]

WEBサーバーに対して海外からアタックを受けた場合の参考にしてください!

 

TLS1.2 設定方法 確認方法 apache編

TLS1.2 へ移行の流れ

SSL/TLS技術により暗号化通信がされているHTTP接続ですが、脆弱性は絶えず常に進化しています。

これまではTLS1.0~TLS1.1が主流でしたが、最近はTLS1.2への移行が進んでします。

各社レンタルサーバーやAPI提供業者からもTLS1.2へ移行し始めています。

当ブログが稼働しているお名前.com レンタルサーバーからも以下のような案内が出ています。

このたび、弊社 共用サーバーサービス を安全にご利用いただくために、
暗号化通信の方式である「TLS1.0」および「TLS1.1」のサポートを
「2018年6月21日」から順次無効化してまいります。

■対象プラン
共用サーバーSD / ホームページエディター

■概要
通信の安全性の確保のため「TLS1.0/TLS1.1」の暗号化通信を無効化いたします。

■影響
無効化後、「TLS1.2」に対応していないパソコンやスマートフォンのOSや、
ご利用のブラウザのバージョンによっては、「https://」で始まるURLの
ウェブページにアクセスすることができません。

※「http://」のサイトには影響はございません。

TLS1.2は、TLS1.0やTLS1.1で発見された脆弱性が克服されているバージョンであり、より安全な接続をするために必要なものなのです。

SSL3.0~TLS1.2の歴史的変更にともなう変更点はこのサイトにうまくまとめられています。興味ある方は読んでみても良いかと思います。

TLS1.2 設定編

apacheなどWEBサーバーを運営している方向けの内容です。

WEBサーバーの設定なんか必要ない!

というかたは、読み飛ばしてください。

apacheを例にします。IISをご利用の方は読み替えてください。

修正ファイル

ssl.conf

SSLを利用しているWEBサーバーなら、apache定義ファイルにあると思います。

修正内容

SSLProtocol +TLSv1.2

SSLProtocol という定義があると思うので、上記の内容に変更後、apacheを再起動すれば設定完了です。

 apacheが使えるroot権限付きVPS

TLS1.2 確認方法

APIを呼び出すサーバーの場合、稼働しているサーバーがTLS1.2に対応していないとエラーになります。

接続先がTLS1.2に対応するときには、接続元のクライアントもTLS1.2に対応しておかないと不具合になりますので注意が必要です!

確認方法は次のとおりです。SSHのコマンドラインから確認できます。

curl https://TLS1.2対応の接続先URL/

これでレスポンスが正常に戻ってくれば問題なし。connect errorになればTLS1.2未対応ということになります!

早目のチェックと対応を

接続先がTLS1.2に変更してからでは手遅れになります。早目のチェックと対応が必要です!TLS1.2への対応方法はまた後日記事にします。

PHPで正規表現(自分メモ)

PHPでの正規表現をよく忘れるのでw

自分用メモ

PHP正規表現リスト

数字のみ

if (preg_match(“/^[0-9]+$/”, $string)) {

小数点を含む数字(正の数のみ)

if (preg_match(‘/^\d+(?:\.\d+)?$/’, $string)) {

小数点以下2桁以上

if (preg_match(‘/\.\d{2,}$/’, $string)) {

英数字・ハイフン・アンダースコアのみ許容

if (preg_match(“/^[a-zA-Z0-9_-]+$/”, $string)) {

英数字・記号

if (preg_match(“/^[[:graph:]|[:space:]]+$/i”, $string)) {

英数字の混在必須

$blend = false;
if (preg_match(“/^[a-zA-Z0-9]+$/”, $this->arrParam[$value[1]])
&& preg_match(“/[a-zA-Z]+/”, $this->arrParam[$value[1]])
&& preg_match(“/[0-9]+/”, $this->arrParam[$value[1]]) ) {
$blend = true;
}

スペース、タブのみ

if (preg_match(“/^[  \t\r\n]+$/”, $string)) {
↑全角スペース、半角スペース

スペース、タブが含まれている

if (preg_match(“/[  \t\r\n]+/u”, $string)) {
↑全角スペース、半角スペース

URL

if (preg_match(“@^https?://+($|[a-zA-Z0-9_~=:&\?\.\/\%\#\+-])+$@i”, $string)) {

ひらがなのみ

if (preg_match(“/^[ぁ-んー]+$/u”, $string)) {

ひらがなのみ(タブ、スペースは許可する)

if (preg_match(“/^([  \t\r\n]|[ぁ-ん]|[ー])+$/u”, $string)) {
↑全角スペース、半角スペース

カタカナのみ

if (preg_match(“/^[ァ-ヶヲ-゚ー]+$/u”, $string)) {

 

PHPが使えるおすすめのレンタルサーバー

エックスサーバーでWAF機能追加

安くて安定感あるレンタルサーバー エックスサーバー

安さだけじゃなくて安定感も抜群のレンタルサーバー「エックスサーバー」でWAF機能が追加になったようです。僕もずっとエックスサーバーを使ってますが、安定してるし気に入ってます。

WAF機能リリース

WAF機能

WAF機能ってのは、Webアプリケーションファイアウォールの略で、要はサーバーレベルでセキュリティが高められる機能なんです。

プログラム技術での対応が難しい場合に、サーバーレベルで設定できれば楽であんしんですよね。管理画面からポチポチと設定するだけで良いので知識不要です。

セキュリティに関する知識は必要ですけどね。技術的な知識を身につけるよりは簡単なんじゃないでしょうか。

WAF機能 管理画面イメージ

これらをONにするとWAF機能が有効になり、セキュリティが高まります。

安くて使いやすくて安定してて安全

安くて 使いやすくて 安定してて 安全なエックスサーバーは、どのレンタルサーバーよりもおすすめです!エックスサーバーを見たい方は↓のバナーをクリック!