DreamerDreamのブログ

夢想家の夢です。〜揚げたてのモヤっとしたものをラフレシアと共に〜

Linux

VPS上でもtf-openposeは精度良く骨格検出してくれます

前回、tf-poseを使って骨格検出をしてみましたが、動きはするもののあまり精度が良くありませんでした。 dreamerdream.hateblo.jp 先に実戦しておられるこちらのブログで用いられている画像と同じ物を使ってみましたが・・・。 qiita.com フリー素材ぱくたそ…

VPS上で画像から人の骨格を推定するOpenPoseが実行出来るのか実験してみた tf-pose-estimationならとりあえず動く

映像や画像から機械学習を用いて骨格を検出するプロジェクトの一つ「OpenPose」を用いた映像がこちらです↓ Realtime Multi-Person 2D Human Pose Estimation using Part Affinity Fields, CVPR 2017 Oral めちゃめちゃスゴイ精度ですね。 この技術を用いると…

VPSで構築したDjangoサーバーをCentOS7からCentOS8へ移行するために CentOS8でDjangoが動くか試してみた

CentOS8がリリースされ、僕の構築したサーバーもゆくゆくは移行しないといけないのでCentOS8でもこれまでと同じようにDjango環境が構築できるのか?テストをしてみました。 少しだけ使い勝手が違いましたが、概ね同じような要領で構築できました。 CentOS8か…

備忘録:ラズパイを無線アクセスポイント化する

なかなか苦労したので備忘録として残します。 基本的に弄る設定は /etc/dnsmasq.conf /etc/hostapd/hostapd.conf /etc/dhcpcd.conf の3つです。(設定前にソフトをインストールする必要があります) そして、各デーモンの起動タイミングをコントロールする…

備忘録:OpenCVでUSBカメラの画像を取得してTkinterで表示させてGUI起動時にアプリを自動起動させるためのメモ

※カメラ画像を使った組み込みシステムを作るのに迷ったので自分用の備忘録として残します。 環境:OSは新規Raspbianをインストールして、piユーザーで立ち上がり時にデスクトップ自動ログイン出来る状態であること。(2019/11/19の時点で最新のRaspbian) 組み…

CentOSを7.6から7.7へアップデートしようとしたら失敗した python36uが使えなくなったっぽい

先日、CentOS7のカーネルアップデートがありあました。 僕はカーネルは通常アップデートしてしまわないように /etc/yum.conf ファイルに exclude=kernel* と書いて必ずバックアップを取ってからアップデートするように心がけています。今回はその処置のおか…

MyDNSで取得したドメインのサブドメインをIP毎に分ける方法

僕は自宅サーバーにはフリーのDDNSサービス、MyDNSを愛用しています。 Free Dynamic DNS (DDNS) for Home Server and VPS etc | MyDNS.JP ここでフリーで取得したドメインは、いわゆるMyDNSが取得したドメインのサブドメインになるわけですが、そのサブドメ…

Let's Encryptの自動更新回数、有効期限を確認する方法

以前にLet's Encryptからエラーメールが来て対処していました。 dreamerdream.hateblo.jp 最近になり、「そういえばそろそろ90日ぐらいになるけど今回はちゃんと更新出来たんかいな?」 とふと不安になり、更新されたのかとチェックしようと思ったものの、…

しつこい不正アクセスを長期的にfail2banでBanする

前回、fail2banでBanしたログを調べておりますと、 dreamerdream.hateblo.jp BanしてもしてもしつこくSSHログインを試行してくる面倒くさい輩がいましたので、ひとまず挙動を確認してみることに。 sudo cat /var/log/fail2ban.log | grep 213.155.231.234 あ…

サーバー用Raspbianにfail2banをインストール

以前にCentOSにfail2banをインストールしましたが、以前からサーバー用に使っているラズパイもチェックしてみると最近になってSSHポートが割れたのか不正アタックが多くなってきましたので同じようにfail2banを導入することにしました。 dreamerdream.hatebl…

fail2banの設定をした

この前sshへのアタックを調べると一定期間にとんでもない量のアタックが来ている事が判明! え?確か前にfail2ban導入してたよね?? dreamerdream.hateblo.jp おかしい!なんで? 調べて見ました。 sudo fail2ban-client status で設定が確認出来るそうです…

Let's Encryptからエラーメールが来た!

内容は Hello,Your certificate (or certificates) for the names listed below will expire in 20 days (on 20 May -- --:-- +0000). Please make sure to renew your certificate before then, or visitors to your website will encounter errors.We reco…

プログラムで画面が表示されないブラウザを操作する(ヘッドレスブラウザ)

プログラムでブラウザを操作して自動で情報の収集やテストなどをする方法に Selenium WebDriver を使う方法があります。 <参考> Selenium WebDriver入門 - Qiita 僕はこれまでPC上のJavaでSeleniumを使っていろいろ自動化ソフトを作っていたのですが、PCの…

せっかくHTTPS化にしたのならSSL/TLSの状態をテストしてもっとセキュアにしましょう

以前にDjangoで作ったサイトをSSL化しました。 dreamerdream.hateblo.jp Djangoはセキュリティー面ではかなり優秀な分類で、特に何もしなくても(というか、いらないことをしなければ)フォームなどリクエストに対して適切なエスケープ処理をしてくれます。 …

Djangoの使い方⑫画像などのファイルを簡単にサーバーにアップロードする

前回記事 dreamerdream.hateblo.jp 今回は作ったサイトへファイルを簡単にアップロードする方法です。 ブログサイトとか作る場合には絶対必要な項目! Djangoにファイルをアップロードする為の方法に「データベースに登録する」「モデルを利用する」という方…

スマホでSSH接続やプログラミングが出来るんですって!?

つい先日、外出先で自分の作ったサイトをのんびり楽しんでいたら不具合を発見! 「すぐ修正しないと!」と思ったもののパソコン持って来てないしネットカフェも無いし困りました。 ふと、「スマホでターミナル使えないのか?AndroidってLinuxベースだよね?…

ムームーメールから送るとGmailに疑問符「?」が表示され、迷惑メールになる問題対策

ムームードメインで取得できるメールサービス、ムームーメールは独自ドメインに付けるメールとしては格安で提供されているので超お得なメールサービス! (アドレスは作り放題!なんと1ヶ月50円(1年600円)という驚異的な安さのメールサービスです。…

Djangoの使い方⑪Djangoからムームーメールで送信する

前回はサイトをSSL化しました。 dreamerdream.hateblo.jp さて、Djangoにはユーザー管理機能が付属していて、すごいのはurls.pyに urlpatterns = [ path('accounts/', include('django.contrib.auth.urls')),] とするだけで、エンドポイント accounts/login/…

Djangoの使い方⑩サイトをhttps(SSL)サイトにする

以前記事から随分と時間が経ってしまいましたが、DjangoでWebサイトを構築しました。 dreamerdream.hateblo.jp Webサイトの紹介はしませんが、今回はそのDjangoで作ったWebサイトをhttps(SSL)化します。 ここ最近ではセキュリティーの関係でhttpプロトコル…

SSH攻撃への対策

この前sshログイン失敗の履歴をふと見てみたら色々なIDで試行されていることが判明しました。 SSHのログイン履歴は last SSHのログイン失敗履歴 sudo lastb 結果 jenkins ssh:notty 81.139.61.222 Sat Nov 10 08:55 - 08:55 (00:00) jenkins ssh:notty 81.13…

Apacheで簡単なDDOS対策「mod_evasive」

Apacheではサーバーへの大量パケットが投げられるというDDOS攻撃の対策として mod_evasive というモジュールを利用することが出来ます。 これは大量アクセスへ対策するもので、デフォルトのままで 同一ページへ1秒間に2回以上のアクセスでブロックリスト追…

Djangoの使い方⑨Apacheで複数のDjangoプロジェクトを綺麗に振り分ける方法

前回記事 dreamerdream.hateblo.jp Apacheで静的なページを振り分ける方法はコチラ↓今回はこの応用です。 dreamerdream.hateblo.jp (Apacheは2.4です) 静的ページと同じようにDjangoで作ったページも振り分けることが出来ますが、WSGIモジュールを挟むので…

Apacheで同じIPアドレスでドメインごとにWebページを綺麗に振り分ける方法

Webサーバーの作り方を知ってホームページを自作するとき、「複数のページをドメインごとに振り分けたい」と思うことがあるでしょう。 ドメインとIPアドレスと接続ポートの関係性を知った段階の人なら 「複数のドメインで複数のホームページを開くにはポート…

ムームードメインで取得したドメインをConohaに設定!ドメインって盗まれないの?

今回はDNSの設定ですが、疑問点が出て来ましたのでもし誰か解る方あったら教えていただきたいです。 Conohaのネームサーバーで設定する 疑問点 ムームードメインからのIP設定方法 まずはムームードメインでドメインを取得します。 これは簡単! 好きなドメイ…

Djangoの使い方⑧テキストファイルの改行\r\nコードをHTMLの<br>に変換する

前回記事 dreamerdream.hateblo.jp Djangoでテンプレートにテキストを表示する場合、通常の方法でテキストを貼付けるとソースコードでは改行されているけどHTMLの<br>タグが無いので改行ができていない文がずらーっと表示されます。 例えば、文字列 'abcdefg....…

Djangoの使い方⑦formの使い方とテンプレートで動的なページを作る方法

前回記事 dreamerdream.hateblo.jp formは動的なWebページでは書かせない要素です。 基本的にはGETかPOSTでサーバーにリクエストを飛ばします。 (PUTやDELETEリクエストもあるけど必要性を感じません。) 例 index.html <form method="post" action="">Hello!<br><p> <textarea name="text" rows="5" cols="30">テキスト内容</textarea> </p> <input type="submit" value="送信"></form>

Djangoの使い方⑥cssを含むstaticディレクトリのコピー

以前の記事のようにApacheでDjangoのページを表示しようとするとレイアウトが崩れることがあります。 dreamerdream.hateblo.jp 原因はデフォルトのスタイルシート、staticディレクトリが読み込めないということです。 本来、このような型で表示されるべきと…

VPSの使い方 ⑤SWAP領域を拡大する

前回記事 dreamerdream.hateblo.jp 僕はVPSの格安プランに申し込んだのでメモリ領域は512MBしかありません。 個人のWebサイトだけであれば充分ですが、それならレンタルサーバーの方が安いのでわざわざVPSにはしていません。もちろん他にもアプリを動かし…

VPSの使い方 ④必用なアプリをインストールする

前回記事 dreamerdream.hateblo.jp VPSで必用なアプリは当然ながら目的によって異なりますが、僕はApache+Djangoでのwebサービスの構築を目指していますのでウェブサービスの為に必用なアプリをインストールします。 中盤のDNSの設定はssh接続だけでも必用…

VPSの使い方 ③不要なサービスとポートを閉じる

前回記事 dreamerdream.hateblo.jp ポートを閉じるにはまずは現段階の何もインストールしていない状態でどのポートが開いているか?を調べる為にポートスキャンソフト、NMAPをインストールします。 yum -y install nmap nmapコマンドで覚えておきたい使い方1…

https://cdn.profile-image.st-hatena.com/users/DreamerDream/profile.png私、(PONさん (@o_n_pon) | Twitter)を応援してくださるお優しいかたは15円から投げ銭可能ですので↓よりカンパをお願いしますm(_ _)m

kampa.me