R筋

プログラミング、金融、育児

金融業界に就職するということ

少し前だがこんなニュースがあった。

www.nikkei.com

記事のなかでも触れられているが、昨今の銀行業界は、低金利の長期化、異業種の参入、他にもみんな日々ニュースで知っての通り、AIによる業務の代替、半沢直樹効果、リストラの拡大、地銀の苦境、フィンテックの拡大、など経営環境の悪化→人材の流出→さらなる苦境という悪循環に陥っている。僕が新卒の就職活動していたころはメガバンクがすべて10位以内にランクインしていたが、今年はトップ10入りの銀行はなし。なんの目標も持たず「安泰」だけに釣られて銀行に入社した僕ですら会社の将来性に不安を感じて転職してしまうくらいなわけであるからして、この10年で銀行業界の見通しが急速に悪化していることは明白であろう。つくづく思うことは、どの業界にしてもこの先の見通しなんて誰にもわからないということだ。今年などは特にそうだ。コロナの影響を受けて、外食・観光産業がここまで壊滅的になるということは誰も想像できなかった。風向きが悪くなれば坂を転げ落ちるのは一瞬だ。そういう意味で、特にやりたいことがない人がその年の人気企業ランキングをもとに就職先を選ぶということは極めて危険であるということを身を以て感じた者として、ありきたいではあるが「やりたいことを見つける」ということの大切さをこれから就職活動をする人に強く訴えたい。この先は特にコロナがどうなるか、働き方がどうなるか見通しが全く立たない中で、安易に流された選択をすると、その就職先の景気がいいときはまだいいが、居心地が悪くなったときには日々不本意な思い出過ごす事になりかねない。とはいえ、主張はブレブレだがやりたいことを見つけるなどということは凡人には無理だ。30過ぎた今ですらわけわからん状態なのに、まして社会経験もないうちに何をどうやってやりたいことを見つけるというのだろうか。そういう人におすすめしたいのが金融業界への就職である。あ?なんだあ?!と思った皆様。次はこのニュースを見てほしい。

www.nikkei.com

金融業界の倍率低下に拍車をかけそうな判断であるが、そういうことを喜んでやるのもまた金融業界。コロナによって直接訪問できない顧客に対し声だけのやり取りで相手のニーズを掴む訓練のためのようだ。煽りではなくこれは身につけることができれば本当にすごいスキルになるだろう。証券というのは金融のなかでも輪をかけて大変というのは、みんなもイメージするところだろう。先日こんなツイートを見た。

 すくなからず営業という仕事に携わると、この簡潔なメッセージの中の優しさがよく分かる気がする。自分のコントロールできないことも責任を追わないといけない仕事であり、その理不尽を受け入れらなければ、地元だからなどという理由で就職することは進めないということだ。だいぶ知れ渡ってきているが、金融業界はもっとこういう前提を就活生に伝え、それでもくる者は徹底的に鍛えるというスタンスを崩すべきではない。

そうすれば金融業界(特に、証券・銀行)に就職することは、業界自体もブラックだし、働き方も相当なストレスを受け入れる必要があるということを自覚して行く人にとって、ものすごく意味がある。もちろん、誰もが高プロなスキルを生かしてGAFAに就職し年収1000万を手にするに越したことはない。ただそれができないが、みんなやりたがらない嫌なことをすることで生き残るという戦略が取れる人には、選択肢として検討の余地がある。スマートで合理的な社会が急速に構築されていく中において、ひたすらに前時代的な慣習を守るべきだ。逆張りスタンスを徹底することで、この不安定な社会においては、ある日突然ハイテク化、デジタル化社会の致命的な欠陥が露呈し、既存のIT技術がすべて信頼できなくなった日が訪れた場合は、リテール営業経験が最も重要なスキルとなる社会が出現し、大変なハイスペック人材となれるであろう。 

 

 

 

 

「それいけ!アンパンマン いのちの星のドーリィ」の感想

久しぶりに映画をみて号泣してしまった。最近、感動することもなければそもそも映画をしっかり見るということもなくなっていたもんで、歳のせいもあって泣くと、鼻水が口に流れ込んでえづくし、見終わったあとも頭も痛いし目もしょぼしょぼで満身創痍になってしまったわけだが、それを差し引いてもいい映画だった。それと昔は難解な映画とかを好んで見て、色々と考察するのも好きだったんだけど30すぎると脳みそも腐り始めアンパンマンの内容がめちゃくちゃ丁度いい映画だということがよくわかった。「なんのために生きるのか」というのがテーマになっているんだけど、まぁありがちなテーマでいままでのいろいろな映画で何度も取り上げられてきたんだと思うんだけども、主題歌と相まってアンパンマンがこのテーマを描くことの意味はとても大きい。アンパンマン大好きな3歳の息子も話の内容まで理解できたかは不明だがとても神妙な顔で見ており、見終わって親がもう一回見ようとすると「悲しいお話だからもう見るの嫌」と言っており、訴えるものがあったのだと感じる。

アマゾンプライムで48時間レンタル400円で買ったわけだが、最初「この映画60分なのに2日で400円て、普通の2時間映画なら800円なわけじゃん!これを1周間レンタルしたら800×3=2400円ということになるぞ!バカ高ぇ!!」と騒ぎ、「3人で見れば1人あたり400÷3=180円くらいか、2回見れば100円以下に抑えられるから、土曜日に買うのがまぁベストだろう今日と明日見るぞ!」と言いながら購入ボタンを押した僕もアンパンチを食らって置く必要があるようだ。先述の通り息子も1回しか見たがらないわけだが、一回だけでもプライスレスな価値があることは確かだ。

いままで人形としてひどい扱いを受けてきたから命を貰ったら自分が楽しいことだけをして生きていきたいというドーリィちゃん

人に親切にすると温かい気持ちになれるというアンパンマン

アンパンマンの生き方は私にはできない、生きる意味はわからないというロールパンナちゃん

この映画で「生きる意味」の一つの答えとしてアンパンマンの「人に親切にする」ということが示されている訳だが、ロールパンナちゃんが「わからない」と言う通りそれが正解でもないということが示されている点も良い。「わからないまま終わる、そんなものはいやだ」というテーマソングの中にあってもそれがわからない人もいるということも救いになっている。

ロールパンナちゃんは、バイキンマンにそそのかされるとブラックロールパンナになっちゃってアンパンマンに攻撃してくるという設定があり、最近アニメにはでてこないのは、その不安定なところが最近の子供に刺激が強いんじゃないのかなどという浅はかな考察を妻としていたこともあったが、おそらくアンパンマンの生き方ばかりが正解とならないように、人は悪い心ももっているだよ、アンパンマンみたいになれなくてもいいだよ、生きる理由がわからなくてもいいだよということを示すため非常に重要であり、そういう面からここぞというときに出してるキャラクターなんじゃないかと感じられた。

そんなわけで、アンパンマンの映画といえどむしろ3歳には難しい内容で、大人が楽しめるように作られている気がした。佳境のシーンなど男性コーラスのアンパンマンのマーチが流れてきたり、うちの子含め子供はビビるんじゃないかwと思ったほどだが、年齢ごとに色々感じ方が変わるのを見るのと楽しそうで、定期的に息子とみたい映画となった。

みんなも下のアフィリンクをチェックじゃぞ~

映画 それいけ!アンパンマン いのちの星のドーリィ

映画 それいけ!アンパンマン いのちの星のドーリィ

  • 発売日: 2016/01/01
  • メディア: Prime Video
 

 

子供の自己肯定感はどこから来るのか


教育に携わる仕事をしている妻から昔聞かされた仕事の愚痴で、記憶に残っているものがある。
全然宿題をしてこず、居残りの指示もダッシュで逃亡して何も言うことを聞かない困った生徒がいたそうだ。
今日その子に「こんなことばっかりしていると学校卒業したらどうするつもり?」と聞いたときに、「どうせ死ぬからいいよ」と答えたそうだ。

当初、適当に相槌をうって聞き流していたのだが、なんだか印象に残り、この愚痴から色々と感じることがあった。

まず「どうするつもり」という質問に「どうせ死ぬ」と答えるという応報自体に対して。
話の通じる相手と仕事ができるというのはすごく恵まれているということだ。
僕が仕事中に会話する人はおそらくだいたいが大卒で、同程度の専門知識、世間一般の常識を持ち、相手とそれなりに論理的な会話が成立する。
「○○の課題が未完了ですがどうしますか?」と聞けば「△△という方法で対応します」とか「☓☓という理由で対応不要です」などと相手は返事をくれるという日常であり、「どうせ死ぬからいいよ」という人はいない。そもそも、その前提に一度も疑問を持つことはなく、その回答が来た場合どうすればいいのかは考えたこともない。ただ考えてみれば教師や医者、介護職、動物園の飼育員、もっと広く言えば接客業をしている人のほとんどがそうかも知れないが、自分とはまったくことなるバックグラウンドで生きてきた人とコミュニケーションを取らなければいけない仕事というのが世の中では一般的なのであろう。
そんななかで、僕が仕事中に「話がわからないやつだなぁ」という感覚を持ったとしても、その僕とその相手との理解力の差の分散は世間一般の仕事で発生しているカウンターパーティーとのそれとくらべれば圧倒的に小さいのだろう。狭い世界が常識になっていると、そういう感覚がなくなってきてイライラしてしまいがちだが、ここは一つ「どうせ死ぬ」と言われるよりはましだと考えて頑張ろうと思った。

妻の愚痴に戻るが、支離滅裂な回答の中でも「どうせ死ぬからいいよ」という内容を返答したことに関して。(これが本題)
この生徒は自己肯定感を持てないから、自分の人生を大切に生きることができないとのだろうということを感じた。
詳細は省くが、当該生徒の家庭は相当に荒れていて、普段はほとんど放置されて日々を過ごしているそうだ。母子家庭だが母との関係は最悪で、お互い相手の悪口を言い合っている。親側には、子供に対して寄り添うようなことはなく、第三者のような立場で批判をするそうだ。
家で勉強していたら褒めてあげたり、勉強の面白さを教えてあげたり、勉強することで広がる可能性について示したり、もっと言えば、子供に対してその人生を大切にしていこうという行動がないのだと思う。結局、当たり前の話だが、親の愛情表現の不足がその子にとって、どうせ自分は大したことない、どうせ死ぬし宿題しても無駄という考えにつながっているのであろう。つまり自己肯定感が低い。そして子の自己肯定感の殆どは親が築くものだと思う。

「自己」肯定感というと、自分が自分を尊重できる意味で捉えがちだが、「自己愛」との違いからその意味を考えてみると「世界が自分を大切にしていると自分が感じられること」を自己肯定感といい、「自分が自分を大切にしていること」が自己愛であるため、その主体が異なることがわかる。子供にとって一番重要なウエイトを占める世界は親であるがその親が自分のことを大切にしないということは、自分が世界から価値がないと言われていると同じことであり、自己肯定感を育てることはできないのだと思う。その結果、子供は自暴自棄になり生産性のある活動をやめ刹那的に生きることが最適な行動になるのである。
僕も平凡な中流家庭に育ったが、なんどか道を踏み外しそうになったときには、親は僕を否定することなく僕の味方という立場で解決策を探してくれていたと思う。おそらく多くの親が当たり前にやっていて、多くの子供はそれを感じられることで、(もちろん性格による差はあると思うが)、新しい挑戦ができ、それにより成長していくのだと思う。

長々と書いてきたが、結局の所みんな知っている「子供に無関心だとグレる」とかそういう話だろう。ただ、僕は育児のなかで意識的に「自己肯定感を高めることができているか」ということを考えながら子供に接したいと思った。例えば「英語力」だとか「運動神経」だとか子供に対して伸ばしたい力というものがあると思うがその一つのような位置づけで「自己肯定感」を高める育児をするということが目標だ。調べると自己肯定感を高める言葉がけだとか褒め方だとか、いくつか記事が見つかるが僕の中で具体的なメソッドはまだ確立していない(←おい)
そもそも僕自身自己肯定感が低いので、どうしたらいいのかわからない(←おい)
自己肯定感の高い人はどうしたらいいのか至急教えて下さい><

アフィリエイト自動化で無限の富を手に入れる

アフィリエイトを自動化して寝ていてもお金が増えりゃあなぁと考え、色々と調べていると各種APIを組み合わせて利用するとそれなりに形にできそうだなということがわかったので、使いみちを持て余していたraspberry piを活用し、やったことをメモ。

 

できたもの

イメージ図だが、こんな感じでアフィリエイトのリンクを定期的にツイートするBOTを作成した。

f:id:anpontan382:20200808235855j:plain

(ちなみにこのイメージはpowerpointで図形と画像を組み合わせて作成した。パワポはオブジェクトを任意に配置するのには適しているため、簡単なイメージならすぐに作れて便利だよ。)

 

仕組み

raspberry pi で以下の処理を定期実行。

raspberry pi からAPIを提供しているECサイト(DMM、楽天、アマゾン、ヤフーショッピング等)から掲載している商品の情報(商品画像、商品の説明文、画像、アフィリンク)の情報を取得

②ツイート内容の作成やツイート済商品のDB登録

twitter api あてにツイート

f:id:anpontan382:20200809000416p:plain

(ちなみにこのイメージはdrow.ioを用いて作成した。フローチャートやネットワーク図などシステム関連の一般的な図形のサンプルが豊富であり、これも簡単なイメージであればすぐにつくることができて便利だよ。)

 

稼働結果

7月は1ヶ月稼働させてみたが、楽天の場合、約1,300円分の収益が生まれた。他のECサイトからも同程度の報酬が計上されており、1ヶ月で約3,000円ほど儲かった!

f:id:anpontan382:20200809001133j:plain

BOTの開発に5~6時間要しているため、時給換算でまだ元はとれていないが、アフィブログと違い、稼働してからはほどんど実働がない点は優れている。アカウントが凍結されない限りは、自動的に売上が発生するのではないか。

 

 

注意点

amazonアフィリエイトシステムであるアマゾンアソシエイト、twitterで自動投稿を実現するためのtwitter apiなどは、利用にあたって事前審査がある。またアマゾンAPIは利用したい場合直近30日で1円以上のアフィリエイト収益が出ている必要があるため、最初は手動でアフィリンクを貼って売上を発生させる必要がある。

qiita.com

www.seo-pro.jp

yurukata.com


どの商品をなんと言って紹介するかという点も収益におおきな影響があるだろう。楽天APIなどは売上げランキングの情報もまとめて取得できるので、ランキング上位から順番に紹介していくなどを実装すればいいが、アマゾンのAPIはそういう機能がないため別途売れ筋商品を取得するロジックを考える必要がある。また、なんども同じツイートをしてもクリック率が上がらないため、すでにツイート済の内容はDBに登録して管理できるようにするなどの工夫も行った。大した収益があるわけではないが、このあたりがこのBOTのキモなのでしばらくは企業秘密とし、収益が上がらなくなったら情報商材として公開することで2度美味しいところを得ることとしたいグヒ。

以下に参考にしたURLを貼っておくことにする。

qiita.com

webservices.amazon.com

it.fudebaco.com

review-of-my-life.blogspot.com

 

 

SFTPサーバ構築時の注意点

先日SFTPサーバを構築したのだが、色々と罠にハマりなかなかに一苦労だった。
ただ全てネットの先の諸先輩方の力で解決策が示されており、なんとかなるに至ったため、感謝を込めて、ハマりどころと解決してくれたページを紹介したい。

 

・「error: subsystem: cannot stat /usr/libexec/openssh/sftp-server: No such file or directory」
参考になったサイト:https://tksm.org/wp/archives/3806

tksm.org


sshd_configのMath句内で、ForceCommand internal-sftpを指定していたとしても、OSによっては、subsystemのsftp-serverが採用されてしまうそうだ。
そのためsubsystem internal-sftpの指定をしないといけない。

 

・「fatal: bad ownership or modes for chroot directory」
参考になったサイト:https://tksm.org/wp/archives/3806

tksm.org


4. SFTP用ディレクトリの作成と権限変更の
ディレクトリ所有者が root で且つ 他のユーザに書き込みさせない 設定が必要」
SFTPでログインするディレクトリは、「drwxr-xr-x(755) root:root」という状態であるということが必要ということ。
ログインディレクトリより上も含めて、755にしないといけない。これは777でもだめで、所有者以外が書き込みできないフォルダ
である必要がある。

 

・複数のユーザで同じディレクトリにログインできるようにしたい
参考になったサイト:https://qiita.com/fallout/items/b702524f2cc0909d92f9

qiita.com


対象のユーザを同じグループに所属させた上で、sshd_configにMatch grop ○○と記載することで、複数ユーザが同じchrootDirecotryを
設定できる。

 

・SFTPユーザAは、書き込み可能、SFTPユーザBは参照のみのディレクトリを作りたい
参考になったサイト:https://ti-tomo-knowledge.hatenablog.com/entry/2018/08/17/010813

ti-tomo-knowledge.hatenablog.com


ログインディレクトリに対してログインユーザは書き込み権限がない。そのためログインディレクトリの下にディレクトリを作成し、
そのディレクトリでユーザAは書き込みできる、ユーザBは参照のみできるという設定を行う。
ユーザAをディレクトリの所有者として、パーミッションを755に設定するということになる。

2020年6月版 TLS1.0/TLS1.1サポート状況

もう世の中は大半が対応し終わって、あまり興味もないだろうが、TLS1.0/TLS1.1の無効化状況について書いた。

・世の中全体

medium.com


によると、2020年2月時点では世界中でTLS1.0/TLS1.1の通信は、0.8%しかないそうだ。
というか既にもっと先を行ってて、TLS1.3がもう50%近くまで達している。
僕の身の回りでいうと、TLS1.0/TLS1.1使用率80%くらいあり、周回遅れなところで仕事している身としては、世の中の変化の激しさに驚くばかりである。
そろそろ本当に対応しないとまずい状況になった気がしてきたため、ブラウザのサポート状況を調査した。

chrome

次リリースのchrome 84でTLS1.0/TLS1.1の廃止が決定している。
developers.google.com
chrome 84の安定版は7/14からリリース開始。
www.chromestatus.com

firefox

firefox 74で廃止される予定だったが、コロナの影響で、廃止撤回。
www.mozilla.org
現行の5/5リリースのfirefox 76までは、方針に変更なし。
6/2のfirefox 77も大丈夫そう。6/30のfirefox 78あたりからは怪しくなるか・・
wiki.mozilla.org

safari

2018年の記事では、2020年5月にサポート終了となっている。
www.macrumors.com
その後の情報が調べても分からないが、twitterなどを覗いても特に騒いでる人がいないので、
現時点では無効化されていないと考える。

IE/Edge

当初2020年前半に終了と周知されていたが情勢を踏まえて以下の通りとなった。
新Edge    2020年7月頃
旧Edge/IE11  2020年9月8日
blogs.windows.com

office365
2020年5月終了と周知されていたが、一時的に保留。
docs.microsoft.com

・まとめ

殆どのブラウザが当初の終了予定から延長しているようであった。
理由としては、リモートワークの増加で混乱が生じることや、TLSに未対応な政府ホームページからコロナ関連情報が取得できなくなるというようなものがあるようだ。
もちろんセキュリティのため、速やかに廃止することに越したことはないのだけど、、未対応の情シス担当のみんなは、今このすきに頑張っていこう!

raspberry pi にHTTP/HTTPSプロキシサーバを構築する

三台目を購入

自粛のため、家でネットショッピングばかりしており、勢い余ってraspberry pi 4 model Bを買ってしまった。

これで今家にあるラズパイは全部で3台となった。一応、過去のラズパイはIOT機器として、毎日ちゃんと稼働しているので、決して無駄な買い物ではない。
1台目:
anpontan382.hatenablog.com

2台目:
anpontan382.hatenablog.com

今回は、今までのraspberry pi zeroと比べるとメモリで言えば、8倍(512MB→4GB)というハイスペックマイコンであるため、もう少し高度な使い方をしてみたい。
ということで、とりあえず勉強も兼ねて、プロキシサーバとして稼働させることにした。
家庭で(というか僕の環境で)プロキシを利用するメリットは以下が挙げられるだろう。

・ネット通信量の削減
前述の通り、最近は自粛や在宅勤務といった事情で、自宅に籠もりネットばかりしているため、wimax環境の僕はすぐに10GB/3日の制限に達し、低速インターネッツを余儀なくされている。そのため、プロキシサーバの持つキャッシュ機能により、一度みたことのあるページはわざわざ再度、同じ通信をせずとも表示させることができる。

アクセスログから、妻のネット通信を覗き見る
我が家は、私のPC・スマホ、妻のPC・スマホ、の4台がwifiに接続されている。これらをすべてプロキシ経由にすることで、すべてのネット接続はプロキシ経由になるためaccess.logにいつ誰がどのページにアクセスしていたのか丸見えとなり、弱みを握ることが可能となる。

・勉強になる
以前DNSサーバを作ったときにも書いたが、プロキシサーバを作るということは、それはその道程において、普段のネット接続で意識することのないプロキシサーバに感謝するという行為である。
anpontan382.hatenablog.com

そういうわけで、raspberry pi 4にsquidを入れて、設定を行ってみることにする。

サーバ設定

プロキシサーバソフトsquidをインストールする。

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install squid -y

プロキシサーバの設定をする

基本的にすべての設定は「/etc/squid/squid.conf」で行う。
今回最小限の必要な変更のみだが、squid.confのデフォルト設定に従って
変更した箇所の変更前↔変更後を記述する。

①ローカルネットワークの定義

#デフォルト
acl localnet src 0.0.0.1-0.255.255.255	# RFC 1122 "this" network (LAN)
acl localnet src 10.0.0.0/8		# RFC 1918 local private network (LAN)
acl localnet src 100.64.0.0/10		# RFC 6598 shared address space (CGN)
acl localnet src 169.254.0.0/16 	# RFC 3927 link-local (directly plugged) machines
acl localnet src 172.16.0.0/12		# RFC 1918 local private network (LAN)
acl localnet src 192.168.0.0/16		# RFC 1918 local private network (LAN)
acl localnet src fc00::/7       	# RFC 4193 local private network range
acl localnet src fe80::/10      	# RFC 4291 link-local (directly plugged) machines
#カスタマイズ
#自分が使っているLANのネットワーク範囲を記載する。
#僕の家はLAN内部が192.168.100.XXXである。
acl localnet src 192.168.100.0/24

②許可ポートの定義

#デフォルト
acl SSL_ports port 443
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443		# https
acl Safe_ports port 70		# gopher
acl Safe_ports port 210		# wais
acl Safe_ports port 1025-65535	# unregistered ports
acl Safe_ports port 280		# http-mgmt
acl Safe_ports port 488		# gss-http
acl Safe_ports port 591		# filemaker
acl Safe_ports port 777		# multiling http
acl CONNECT method CONNECT
#カスタマイズ
#ホワイトリストプロキシの場合、接続を許可するポートを記載する。
#いらなそうなものはコメントアウトした。
acl SSL_ports port 443
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443		# https
acl Safe_ports port 1025-65535	# unregistered ports
#SSL通信時のCONNECTメソッドはトンネル化して通す
acl CONNECT method CONNECT

③許可ポートに対する制御

#デフォルト
http_access deny !Safe_ports
#カスタマイズ
#Safe_portsで定義したポート以外のアクセスを拒否する定義
#変更無し
http_access deny !Safe_ports

④許可メソッドに対する定義

#デフォルト
http_access deny CONNECT !SSL_ports
#カスタマイズ
#SSL_portsで定義したポート以外のコネクト接続を拒否する定義
#変更無し
http_access deny !Safe_ports

⑤キャッシュマネージャ関連

#デフォルト
http_access allow localhost manager
http_access deny manager
#カスタマイズ
#キャッシュマネージャ(squidの統計情報をCGIで見れる機能)へは
#ローカルホストのみがアクセスできるという設定
#使わないので削除
#http_access allow localhost manager
#http_access deny manager

⑥接続元の制御、その他の制御

#デフォルト
include /etc/squid/conf.d/*
http_access allow localhost
http_access deny all
#カスタマイズ
#追加でオリジナルルールを追加するときは、以下に記載する
#今は何もなし
include /etc/squid/conf.d/*
#ローカルホスト、localnetからのHTTPアクセスを許可する
http_access allow localhost
http_access allow localnet
#ここまで、どの定義にも該当しなかった通信はすべて拒否する
http_access deny all

⑦プロキシとの通信ポート

#デフォルト
http_port 3128
#カスタマイズ
#クライアント↔プロキシサーバ間の通信を行うポート
#8080などもよく使われるが、セキュリティ的には変更したほうが良い
http_port 3129

⑧キャッシュの保存量に関する定義

#デフォルト
# cache_dir ufs /var/spool/squid 100 16 256
# cache_mem 256 MB
# maximum_object_size_in_memory 512 KB
#カスタマイズ
#キャッシュサーバと利用するときに、キャッシュデータを置く場所
#数字は、左からキャッシュで使用する容量(MB)、ディレクトリを分割するサブディレクトリ数、サブディレクトリを分割する数
cache_dir ufs /var/spool/squid 100 16 256
#キャッシュのメモリサイズを指定
cache_mem 256 MB
#メモリ内に保存できるキャッシュの最大を指定
maximum_object_size_in_memory 512 KB

⑨X-Forwarded-Forヘッダーのセキュリティ対策

#デフォルト
# forwarded_for on
#カスタマイズ
#接続元のIPアドレスの情報をHTTPヘッダ上で隠す
forwarded_for off

⑩コアダンプ関連

#デフォルト
coredump_dir /var/spool/squid
#カスタマイズ
#コアダンプファイルの出力先
#変更なし
coredump_dir /var/spool/squid

⑪キャッシュの保存期間

#デフォルト
refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern ^gopher:	1440	0%	1440
refresh_pattern -i (/cgi-bin/|\?) 0	0%	0
refresh_pattern .		0	20%	4320
#カスタマイズ
#キャッシュの保存期間
#基本はデフォルトのままにしておく、gopherはいらなそうなので削除した
refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern -i (/cgi-bin/|\?) 0	0%	0
refresh_pattern .		0	20%	4320

⑫再起動

sudo systemctl restart squid

クライアント設定

・windows10のプロキシ設定
「プロキシの設定を変更する」→「プロキシサーバを使う」
アドレス:raspberry pi IPアドレスを記載
ポート:squid.confのhttp_portで指定したポート番号を記載
f:id:anpontan382:20200422000745j:plain

・InternetExplorerの設定
IE→設定→インターネットオプション→接続→「LANの設定」
→「LANにプロキシサーバを使用する」→上記と同様にアドレス・ポートを指定
f:id:anpontan382:20200422000856j:plain

確認

・この状態で普通にWEBサイトが見れるなら、とりあえず動いている。

・「/var/log/squid/access.log」を開いてみると、時間、アクセス先、ポート、メソッドがわかる。

1587304260.711   5780 192.168.100.XXX TCP_TUNNEL/200 15658 CONNECT anpontan382.hatenablog.com:443 - HIER_DIRECT/13.230.115.161

・キャッシュが取れているかを調べるには、squidclientというsquidの挙動を確認するソフトを使う。

sudo apt install squidclient
squidclient -h localhost -p 3129 mgr:client_list
squidclient -h localhost -p 3129 mgr:info

のコマンドにより、キャッシュの利用料、利用率等様々なステータスが確認できる。

・X-Forwarded-Forヘッダーの隠蔽ができているかは、以下にアクセスするとわかる。
tools.up2a.info
unknownが表示されている。
f:id:anpontan382:20200422000808j:plain