CANPAN ブログ検索
Loading
  • もっと見る
<< 2019年10月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
カテゴリアーカイブ
最新記事
最新コメント
日本語は難しい [2019年10月29日(Tue)]
日本語は難しい


 「小説家になろう」に投稿されたWeb小説を「小説を読もう!」で読んでいて、表現に違和感がありました。


外れスキルをもらったけど、敵の攻撃食らってたら最強になってた 〜Fランク冒険者は最強英雄候補です〜
10、初めてのクエスト
 普段は下町の女の子って感じのファルルが、黒のミニドレスにハンディバッグにハイヒールまで穿いてるという気合の入れようだった。


 「ハイヒールまで『穿』いてる」という表現が、「ハイヒールまで『履』いてる」の間違いだろうと、「誤字報告」をしようとして、念のためネットで検索しました。

 すると、「ハイヒールまで『穿』いてる」でも間違いとは言えないことが分かりました。

 しかし、私個人としては、ひらがなの「はく」で良い気がします。

 つまり、「ハイヒールまではいてる」という表現となります。


アスペ日記
2014-07-27
「履く」と「穿く」が面倒なことになったいきさつ

 ズボンや靴を「はく」というのは、どう書くか。*1
 ご存じの方は多いと思いますが、これはけっこうやっかいな問題なんですよね。
 もっとも、「あ、これ正解知ってる」という人もいるでしょう。
 ズボン・スカートは「穿く」で、靴は「履く」でしょ、と。

 漢字の意味、つまり中国語での意味を考えると、全部「穿」で問題ないところだからです。
 「ズボン等は突き通すから『穿』だ」というのはよく見ますが、近代中国語*3では服もズボンも靴も靴下も、全部「つきとおす」という発想で「穿」を使います。
 実際、戦前(明治から昭和前期)の間は、中国語と同じ発想で、すべて「穿く」を使うのが普通でした。

 ただ、この「穿く」というのは主に明治以降のもののようです。
 それ以前のものを見ると、はきものについては古くから「履く」が使われています。

 今後、「はく」の表記はどうなるんでしょうか。
 個人的には、「腰から下につける」という意味の「はく」にひとつの表記があったほうが日本語として便利だと思います。
 明治から戦前にかけては、すべて「穿く」が使えたところです。
 でも、「穿く」が支配しかけていたところに江戸からの「履く」が復権して侵食してきたという流れを考えると、今後統一される望みはなさそうです。

Posted by 山田 雄一郎 at 22:05
ゲーム機の使用制限 [2019年10月27日(Sun)]

ゲーム機の使用制限



 子供のゲーム機が無線LANを経由して、頻繁に「NVR500ルーター」に送信しています。


 途中にあって「中継しているWi-Fiルーター」での「特定MACアドレス使用制限」の方法が良くわからなかったので、「NVR500ルーター」で使用制限することにしました。


 「NVR500ルーター」の「manual」で「スケジュールの設定」を確認しました。


31.1 スケジュールの設定

http://www.rtpro.yamaha.co.jp/RT/manual/nvr500/schedule/schedule_at.html

[書式]

schedule at id [date] time * command...

schedule at id [date] time pp peer_num command...

schedule at id [date] time tunnel tunnel_num command...

schedule at id [date] time switch switch command...

no schedule at id [[date]...]



 「command」が実行できそうなので、「  [トップ] [詳細設定と情報] > コマンドの実行 」画面で以下のコマンドを実行しました。


schedule at 123 */* 17:00 * ethernet filter 108 pass-nolog (ゲーム機のMACアドレス) *:*:*:*:*:*

schedule at 124 */* 00:01 * ethernet filter 108 reject-nolog (ゲーム機のMACアドレス) *:*:*:*:*:*


※毎日ゲーム機の通信を「17:00」から「00:01」の間だけ「NVR500ルーター」が「pass」するというコマンドです。

※本当は「00:00」まででも良いのですが、1分間だけ猶予を与えました。



Posted by 山田 雄一郎 at 07:37
PHP Apache PostgreSQL Fedora (POST受信、GET受信を自動選択) [2019年10月26日(Sat)]
PHP Apache PostgreSQL Fedora (POST受信、GET受信を自動選択)


 ネット上のページを参考にしてプログラムを作成し、Webサーバ上で動かしてみて、修正をしています。

 備忘録として、プログラムの一部を書いておきます。

 今回のテーマは、POST受信、GET受信を自動的に選択する。
$_SERVER["REQUEST_METHOD"]


 phpのプログラムでは、「form」は「POST」送信、「<A Href=」は「GET」送信と、自分で決めていました。

**********引用開始**********
【PHP入門】POST送信、GET送信する方法
・POSTで送信したデータを取得する
PHPではPOSTで送信したデータを取得するには、スーパーグローバル変数である$_POSTを使用します。

・GETで送信したデータを取得する
PHPではGETで送信したデータを取得するには、スーパーグローバル変数である$_GETを使用します。
**********引用おわり**********


 例えば、雑誌の号ごとの内容をデータで管理するために、データを「genntei.php」プログラムに「POST」送信していました
**********引用開始**********
?>
<!--- form 開始 --->
<form method=post action="genntei.php">
<select name=retu_2>
・・・
</select>
<input type=hidden name=retu_1 value = "<?php print ($retu_1); ?>">
<input type=submit value="指定のみ検索開始"><br>
<!--- form 終了 --->
</form>
<?php
**********引用おわり**********
 とか作成していました。

 今日、雑誌の号ごとの内容をより使いやすくするために、一覧表の中の「<A Href=」のデータを受け取ってから表示するプログラムを作成しようとして、「genntei.php」プログラムを使うことを考えました。
**********引用開始**********
?>
<td bgcolor=yellow><A Href="genntei.php?retu_1=<?php print($zasshi); ?>&retu_2=<?php print($gou); ?>"><?php print("$zasshi"); ?></A></td>
<?php
**********引用おわり**********
 となります。

 ところが、「<A Href=」を使って「GET」送信すると、

Notice: Undefined index: retu_1 in /var/www/html/**********/genntei.php on line 12
Notice: Undefined index: retu_2 in /var/www/html/**********/genntei.php on line 13

という、エラー表示が出ます。

 ネット検索すると、変換するためには「javascript」の文字が出てくるので、これ以上の「javascript」検索は止めました。

 別の方法は無いかと調べると、「POSTかGETかを判別」というページが見つかりました。

 このページの内容を参考にして、「genntei.php」にプログラムを追加しました。

// 受信したデータの判別
if($_SERVER["REQUEST_METHOD"] != "POST"){
$retu_1 = $_GET['retu_1'];
$retu_2 = $_GET['retu_2'];
}else{
$retu_1 = $_POST['retu_1'];
$retu_2 = $_POST['retu_2'];
}

 「POST」送信を受信した場合と、「GET」送信を受信した場合で区分するだけのものです。

**********引用開始**********
POSTかGETかを判別
 フォームからの投稿によって表示されたのかどうかの判別の方法はいくつかありますが、フォームからPOSTでリクエストが来ているのか、それてともURLを直接指定して表示されているのかで判別してみます。フォームでGETを指定した時だけではなく単にブラウザでHTMLファイルを要求した時もGETのリクエストが来る事になっています。

 実際には下記のように「$_SERVER["REQUEST_METHOD"]」を調べることでPOSTかGETかどちらで要求が来ているかを調べることができます。

if($_SERVER["REQUEST_METHOD"] != "POST"){
    print('GETによる要求です');
}else{
    print('POSTによる要求です');
}
**********引用おわり**********

Posted by 山田 雄一郎 at 22:02
Fedora30 を Fedora31 にアップグレードしました [2019年10月22日(Tue)]

Fedora30 Fedora31 にアップグレードしました



 「Releases/31/Schedule」を確認すると

2019-10-22    Final Release (GA) (Preferred Target)

2019-10-29    Final Release (GA) (Target #1)


 本日(10/22)正午過ぎに、ダメ元で、アップグレードを実行しました。


1 毎回アップグレードで問題が起きる「PostgreSQL」の個人データをバックアップしました。


Windowsパソコンの「Tera Term」ソフトから接続して、バックアップを実行します。


(Fedora30)su

(Fedora31)su postgres

HIZUKE=`date '+%d'` ; pg_dump php > /data/backup_pgsql/php_"$HIZUKE".sql

ls -l /data/backup_pgsql/php_22.sql

※「HIZUKE=`date '+%d'` ; pg_dump php ・・・」を実行して、「php_"$HIZUKE".sql」のサイズが「0」ならば、「su」環境と「su postgres」環境を変えてみてください。



2 次の順番にコマンドを実行しました。

# dnf upgrade --refresh

# dnf install dnf-plugin-system-upgrade

# dnf system-upgrade download --releasever=31

※表示された最後の行に「dnf system-upgrade clean」と書いてありますが、「dnf system-upgrade reboot」を実行する前に「dnf system-upgrade clean」を実行すると、「dnf system-upgrade reboot」がエラーとなります。

※「dnf system-upgrade reboot」がエラーの場合は、「dnf system-upgrade download --releasever=31」を再度実行してください。

# dnf system-upgrade reboot

※当然ながら、ここで「Tera Term」の接続が「off」となります。



3 サーバーの設置場所に行き、モニターを確認しながら気長に待つと、Fedora 31 のログイン画面になります。



4 Windowsパソコンの「Tera Term」ソフトから接続して、うまく動くか確認します。


 ユーザー名「root」で接続すると、「認証に失敗しました。再試行してください。」とエラー表示をして失敗しました。


**********引用開始**********

参考資料

Fedora 31rootSSHログインをデフォルト禁止へ

後藤大地 2019/06/25 09:54

https://news.mynavi.jp/article/20190625-847961/


Fedoraプロジェクトは622(米国時間)、「Issue #2133: F31 System-Wide Change: Disable Root Password Login in SSH - fesco - Pagure.io」において、OpenSSHのデフォルト設定を変更し、パスワードベースでのrootログインをデフォルトで禁止するように設定を変更すると発表した。他のLinuxディストリビューションの多くはすでにそうした設定がデフォルトになっており、Fedoraもこの動きに追従した形になった。Fedora 31から変更が適用されるものと見られる。

**********引用おわり**********


 別のユーザー名で接続しました。


 ログインして、アプリが正常に動いているか確認するために、「Webmin」にユーザー名「root」で接続(可能でした!)して「System and Server Status」を表示しました。


 「PostgreSQL」を含めて、インストールしている「Server」が全て正常に動いていることが確認できました。



 Fedora30 Fedora31 にアップグレードするときに一番に確認することは、ユーザー名「root」以外のユーザー名が有ることを確認することです。


 Fedora31を「クリーンインストール」するならば、ユーザー名「root」以外のユーザー名の作成を要求してきますので、ログインできなくて困ることはないと思います。


Posted by 山田 雄一郎 at 14:00
トヨタのキーの部品が劣化し一部が脱落した [2019年10月04日(Fri)]

トヨタのキーの部品が劣化し一部が脱落した



 アイシスは、2004年に購入して、20万km弱走行しています。今年が15年目の車検となります。


 初代アイシスですから、キーは2つ付いています。「マスターキー(電池 CR2016)」と「スマートキー(電池 CR2032)」です。


 「マスターキー」には、上下左右に4個のボタンが付いています。上下位置のボタンで、ドアの施錠・解錠をします。左右位置のボタンで、左右のパワースライドドアの開閉をします。


 「マスターキー」の4個のボタンは、薄いゴム状のカバーで防水をしています。


 この「マスターキー」の上位置(ドアの施錠用)にあるボタンのカバーが、経年劣化で脱落しました。


 最近このボタンを押すときに、違和感があって気になっていました。


 昨日、買物を終わり、「マスターキー(電池 CR2016)」をアイシスに向けてドアの解錠をしようとしたときに、ボタンのカバーが無くなっていることに気が付きました。


 指でドアの施錠が困難となりましたが、応急対策として、「細い棒状の物」の先端で「クリック」することで施錠の問題は解決しました。


 帰宅したあとで、「エーモン」の「超強力両面テープ(ITEM No. 3930)」を1cm四方に切り、5枚を重ねて「マスターキー」の上位置に貼り付けました。


 「両面テープ」を貼り付けたことで、今までどおりのスイッチ操作ができるようになりました。


 ただ、残念なことに、電池を交換するときには、「両面テープ」を全て剥がす必要がありますが、その機会は年に1回もないと見積もっています。


 もう1つのキーである「スマートキー」のボタンは、全てプラスチック状なので経年劣化でボタンが脱落することはないと思います。


 後から気が付いたのですが、「マスターキー」の上位置ボタンのカバーが、他のボタンのカバーに比べて劣化が早いのは、エンジンを始動・停止するためキーを回すときに親指か人差し指で上位置ボタンを押していました。



 最近の自動車では、エンジンを始動・停止するときキーを回すのではなく「エンジン スタート ストップ」スイッチを押すので、キーの部品が劣化し一部が脱落することはないと思います。


Posted by 山田 雄一郎 at 10:34
SIP 攻撃を受けると、こうなる(その3) [2019年10月03日(Thu)]

SIP 攻撃を受けると、こうなる(その3)



 SIP 攻撃で 050 発信不能にされたので、20191月に(その1)と(その2)を書きました。


 それの追加です。


 ネットを見ているときに、「IPアドレス」には、「グローバルIPアドレス」と「プライベートIPアドレス」に分かれると書いてありました。



**********資料開始**********

それぞれの用語の意味

グローバルIPアドレス:全世界で通用するネットワーク上の住所

プライベートIPアドレス:仲間内でしか通用しないネットワーク上の住所

https://wa3.i-3-i.info/diff120ipaddress.html

**********資料おわり**********



 この時に、ネット側から入って来る「プライベートIPアドレス」は、「Rejected」しても何の問題もないのではないかという仮定を思いつきました。



**********資料開始**********

IPv4アドレス体系

〜クラスフルとクラスレス、プライベートアドレス

 また、IPv4アドレスにはプライベートアドレスとグローバルアドレスという概念があります。前者はインターネットに直接接続されていないネットワークで自由に使って良いとされるアドレスで、以下の通り範囲が定められています。


(プライベートアドレスの範囲)

10.0.0.0 10.255.255.25510.0.0.0/8

172.16.0.0 172.31.255.255 172.16.0.0/12

192.168.0.0 192.168.255.255 192.168.0.0/16

https://www.nic.ad.jp/ja/newsletter/No26/090.html

**********資料おわり**********



 そこで、NVR500で次の「コマンド」を実行しました。


ip filter 101010 reject * 10.0.0.0/8 * * *

ip filter 101011 reject * 172.16.0.0/12 * * *

ip filter 101012 reject * 192.168.0.0/16 * * *

ip lan2 secure filter in 101010 101011 101012 (以下略)



 月単位で使ってみた感想は、


1 050 発信は可能です。

2 表示するページによっては、表示速度がかなり遅くなったり、表示待機時間を過ぎてエラーとなったりします。

3 特定の国の「グローバルIPアドレス」を「Rejected」するわけではないので、「アプリやドラーバー」のアップデートには影響しません。

4 「ip filter」ごとの「LAN2 Rejected at IN()」を「ログ(Syslog)のレポート作成」(3000件表示)で計数しました。


設定条件としては、「Infoモード」と「Noticeモード」をチェックして選択しています。

LAN2 Rejected at IN(101010)  0/3000

LAN2 Rejected at IN(101011)  0/3000

LAN2 Rejected at IN(101012)583/3000件(2割弱)


 「ip filter」は、「192.168.0.0192.168.255.255」だけでも、SIP 攻撃に対応可能かも知れません。


 つまり


ip filter 101012 reject * 192.168.0.0/16 * * *

ip lan2 secure filter in 101012 (以下略)



 私のNVR500ルーターでは、ネットから入って来る「プライベートIPアドレス」を「Rejected」するだけでSIP 攻撃に対応できました。


 しかし、ネットから受け取る、「重要な情報」を排除(「Rejected」)している可能性もありますので、自己の責任で試してみて下さい。


Posted by 山田 雄一郎 at 17:56
プロフィール

山田 雄一郎さんの画像
山田 雄一郎
プロフィール
ブログ
リンク集
http://blog.canpan.info/hofu_nanboku/index1_0.rdf
http://blog.canpan.info/hofu_nanboku/index2_0.xml