Movatterモバイル変換


[0]ホーム

URL:


BLOGTIMES

cles::blog

平常心是道
« :: »cles::blog >ArchiveList > 2021-2
«Prev ||1 |2 |3 |4 |5 |6 ||Next»
2021/02/28

Windows には OpenSSH が標準で入っている?

windows10  cli  ssh 
ssh - Windows には OpenSSH が標準で入っている?

Windows のコマンドプロンプトにいつものクセで ssh と打ち込んでしまったら、なぜか反応があってびっくり。最近の Windows 10 にはcurl や tar など Linux でよく使われるコマンドが標準搭載されていますが、いつのまにかOpenSSH も標準搭載されていたようです。

システムのフォルダを探してみるとC:\Windows\System32\OpenSSH にインストールされているみたいですね。scp 等もあるので、簡単な作業の場合には PuTTY や WinSCP などをインストールせずにこれだけで済ませることもできそうです。


    at 22:23 |
    2021/02/28

    CentOS 8 へのブルートフォースアタックを SSHGuard で防御

    ssh  centos8  firewalld 

    SSH に対する攻撃の対策については iptables でやるのであれば昔はipt_recent、最近はhashlimit を使ったりするようですが、単純なレートリミットだと正常なログインでも引っかかってしまう可能性があるので 今回はSSHGuard をインスト-ルしてみました。

    SSHGuard はログを監視して ssh に関するログインの失敗が一定以上ある IP を自動的に一定期間ブロック(場合によっては永久にブロック)するという機能を持ったdaemon です。機能的にはfail2ban とかと同じカテゴリのソフトウェアです。

    インストールから起動まで

    メインの設定ファイル/etc/sshguard.confdnf でインストールしただけでは作成されないので、man sshguard-setup の内容を参考に自分で設定する必要があります。CentOS 8(パケットフィルタはfirewalld、ログの監視先はjournalctl という構成)の場合には、以下のような感じでセットアップすることができるはずです。sshguard.whitelistの IP アドレス等は適当に調整してください。

    # install packagednf -y install sshguard# create confcp /usr/share/doc/sshguard/examples/sshguard.conf.sample /etc/sshguard.confcp -a /etc/sshguard.whitelist{,.org}# change confpushd /etcpatch -p2 <<'EOF'--- /etc/sshguard.whitelist.org 2020-08-02 14:53:08.000000000 +0900+++ /etc/sshguard.whitelist 2021-02-28 16:20:01.621414766 +0900@@ -5,9 +5,9 @@ #2001:0db8:85a3:08d3:1319:8a2e:0370:7344 # address blocks in CIDR notation-#127.0.0.0/8+127.0.0.0/8 #10.11.128.0/17-#192.168.0.0/24+192.168.0.0/16 # hostnames #rome-fw.enterprise.comEOFpatch -p2 <<'EOF'--- /usr/share/doc/sshguard/examples/sshguard.conf.sample 2018-12-16 11:41:51.000000000 +0900+++ /etc/sshguard.conf 2021-03-02 09:22:13.490714460 +0900@@ -6,14 +6,14 @@ #### REQUIRED CONFIGURATION #### # Full path to backend executable (required, no default)-#BACKEND="/usr/local/libexec/sshg-fw-iptables"+BACKEND="/usr/libexec/sshguard/sshg-fw-firewalld" # Space-separated list of log files to monitor. (optional, no default)-#FILES="/var/log/auth.log /var/log/authlog /var/log/maillog"+#FILES="/var/log/secure" # Shell command that provides logs on standard output. (optional, no default) # Example 1: ssh and sendmail from systemd journal:-#LOGREADER="LANG=C /usr/bin/journalctl -afb -p info -n1 -t sshd -t sendmail -o cat"+LOGREADER="LANG=C /usr/bin/journalctl -afb -p info -n1 -t sshd -t sendmail -o cat" # Example 2: ssh from os_log (macOS 10.12+) #LOGREADER="/usr/bin/log stream --style syslog --predicate '(processImagePath contains \"sshd\")'"@@ -24,17 +24,17 @@ # Block attackers for initially BLOCK_TIME seconds after exceeding THRESHOLD. # Subsequent blocks increase by a factor of 1.5. (optional, default 120)-BLOCK_TIME=120+BLOCK_TIME=300 # Remember potential attackers for up to DETECTION_TIME seconds before # resetting their score. (optional, default 1800)-DETECTION_TIME=1800+DETECTION_TIME=86400 # Size of IPv6 'subnet to block. Defaults to a single address, CIDR notation. (optional, default to 128) IPV6_SUBNET=128 # Size of IPv4 subnet to block. Defaults to a single address, CIDR notation. (optional, default to 32)-IPV4_SUBNET=32+IPV4_SUBNET=24 #### EXTRAS #### # !! Warning: These features may not work correctly with sandboxing. !!@@ -44,8 +44,8 @@ # Colon-separated blacklist threshold and full path to blacklist file. # (optional, no default)-#BLACKLIST_FILE=90:/var/lib/sshguard/enemies+BLACKLIST_FILE=60:/var/lib/sshguard/enemies # IP addresses listed in the WHITELIST_FILE are considered to be # friendlies and will never be blocked.-#WHITELIST_FILE=/etc/friends+WHITELIST_FILE=/etc/sshguard.whitelistEOFpopd# enable/start daemonsystemctl enable --now sshguard.service

    動作確認

    SSHGuard はバックエンドがfirewalld の場合、対象となるログを監視して、一定の閾値を超えた場合にsshguard4/sshguard6という名前のブラックリスト用ipset に IP アドレスを追加するという動作を行います。よって、フィルタがきちんと動作するためには firewalld からsshguard4/sshguard6 がきちんと参照されているかということと、sshguard4/sshguard6 が SSHGuard によってきちんと読み書きされていることが必要になります。

    前者については、以下のコマンドのrich rules: 欄を見ると確認ができます。

    # firewall-cmd --list-allpublic (active) target: default icmp-block-inversion: no interfaces: ens192 sources: services: cockpit dhcpv6-client ssh ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: rule family="ipv6" source ipset="sshguard6" drop rule family="ipv4" source ipset="sshguard4" drop

    後者については例えばログを見てみたときに以下のようなログ(999.999.999.999は例なので、実際には攻撃元の IP が入ります)が残っていれば SSHGuard が実際にログを読み取って処理を行っていることが分かります(ただし、これは実際に攻撃を受けないといけませんが)。

    # journalctl -u sshguardFeb 28 16:58:51 sshhost.example.com sshguard[57453]: Attack from "999.999.999.999" on service SSH with danger 2.Feb 28 16:58:51 sshhost.example.com sshguard[57453]: Attack from "999.999.999.999" on service SSH with danger 2.Feb 28 16:59:23 sshhost.example.com sshguard[57453]: Attack from "999.999.999.999" on service SSH with danger 2.Feb 28 16:59:23 sshhost.example.com sshguard[57453]: Blocking "999.999.999.999/32" for 120 secs (3 attacks in 32 secs, after 1 abuses over 32 secs.)

    さらに、実際にブロックが行われていれば、以下のように ipset を使って登録されている IP アドレスを見ることができます。

    # ipset list sshguard4Name: sshguard4Type: hash:netRevision: 6Header: family inet hashsize 1024 maxelem 65536Size in memory: 440References: 0Number of entries: 1Members:999.999.999.999

      at 17:56 |
      2021/02/27

      IIJmio が 4 月からの新プラン「ギガプラン」をスタート

      iij  mvno 

      音声通話がついたプランの場合、現行で最も廉価なのはミニマムスタートプランの 3GB で 1,600 円ですが、これがギガプランになると 2GB で 780円 と半額以下になります。

      既存ユーザーのギガプランへの変更は 4/1 受け付け開始、最短で 5/1 からのプラン変更反映となるようです。これはシステム的な都合もあるようで、その分の埋め合わせのための先行受付キャンペーンをやるみたいです。僕はもともとモバイルの通信容量はあまり使っていないので、780 円のプランに乗り換える予定です。

      IIJmio:シンプルで自由度の高い新プラン「IIJmioモバイルサービス ギガプラン」を提供開始

      さて、この度弊社では、2021年4月1日より新プラン「ギガプラン」を提供開始いたします。
      あわせて、既存のIIJmioモバイルサービス(ミニマムスタートプラン、ライトスタートプラン、ファミリーシェアプラン、ケータイプラン)で音声回線をご利用のお客様を対象に、3月1日より先行エントリーキャンペーンを実施いたします。


        at 22:19 |
        2021/02/27

        確定申告が完了してた

        etax  nta  アパート経営 
        確定申告完了報告 - 確定申告が完了してた

        忙しくてメールを見落としていましたが、今年も早々に税理士さんが確定申告を済ませてくれていました。

        今期は結構な税額に・・・

        昨年は物件の修繕も少なくて稼働率も高かったので、予想よりもだいぶ黒字が大きくなってしまい、そのぶん所得税も高くなってしまいましたが、これはもう調整しようがないのでしょうがないですね。こういう状況で、交通費も交際費もほとんど使えませんでしたし。。。


          at 16:35 |
          2021/02/26

          シン・エヴァンゲリオン劇場版は 3/8 公開に

          anime  evangelion 

          #シン・エヴァンゲリオン劇場版』公開日決定のお知らせhttps://t.co/JnMmDT6bmc

          再延期の発表以降、検討を重ねました結果、『シン・エヴァンゲリオン劇場版』の公開日を西暦2021年3月8日(月)に決定しました。

          ご鑑賞の際は各劇場での感染対策へのご協力をお願い申し上げます。#シンエヴァpic.twitter.com/ffwjPglunV

          — 株式会社カラー (@khara_inc)February 26, 2021

          1月に再延期が発表されていたシン・エヴァンゲリオン劇場版の公開日が 3/8 に決まったようです。

          相変わらず緊急事態宣言の状況下ですが、今度こそ無事公開になることを期待したいと思います。


            at 20:32 |

            ドコモや au が MNP や解約 ページに noindex を設定していたことが問題に

            docomo  au 

            ドコモや au が MNP や解約 ページに noindex を設定していたことがニュースになっていたのでメモ。

            この設定については現在は削除されているようです。
            ちょっとセコい感じもしますが、スイッチングコストを高くするのは作戦の一環なのでしょうがないのかなという感じもします。

            解約ページ/MNP転出ページに検索サイト避けの「noindex」――総務省指摘でドコモとKDDIがタグ削除 - ケータイ Watch

            NTTドコモとauは、解約やMNP転出手続の方法を紹介するWebページ内に付与していた「noindex」タグを削除した。総務省の「スイッチング円滑化タスクフォース」での事業者間協議で指摘されていたもの。「noindex」タグが付与されていることで、検索サイトにこれらのページが表示されないようになっていた。


              at 19:38 |
              2021/02/25

              SoftEther を CentOS 8 にインストール

              softether  centos8 

              久しぶりに SoftEther を CentOS 8 にインストールしてみました。
              これも Dokcer 化しても良かったのですが、ネットワーク周りとかいろいろと面倒なことになりそうなので、これは直接に VM にインストールしてしまうことにしました。

              手順としてはこんな感じでしょうか。

              dnf -y groupinstall "Development Tools"dnf -y install readline-devel ncurses-devel openssl-develwget https://jp.softether-download.com/files/softether/v4.34-9745-rtm-2020.04.05-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.34-9745-rtm-2020.04.05-linux-x64-64bit.tar.gztar zxvf softether-vpnserver-v4.27-9668-beta-2018.05.29-linux-x64-64bit.tar.gzchmod 700 vpnserverpushd vpnservermake i_read_and_agree_the_license_agreementcat << EOS > ./adminip.txt192.168.0.0/16EOSpopdmv vpnserver /usr/local/bincat << EOS > /etc/systemd/system/softether.service[Unit]Description=SoftEther VPN ServerAfter=network.target[Service]Type=forkingExecStart=/usr/local/vpnserver/vpnserver startExecStartPre=/sbin/ip link set dev ens224 arp off promisc onExecStop=/usr/local/vpnserver/vpnserver stop[Install]WantedBy=multi-user.targetEOSsystemctl daemon-reloadsystemctl enable softether.servicesystemctl status softether.servicecat << EOS > /etc/firewalld/services/softether.xml<service> <short>Softether</short> <description>Softether VPN Server</description> <port protocol="tcp" port="443"/> <port protocol="tcp" port="5555"/> <port protocol="udp" port="443"/> <port protocol="udp" port="5555"/></service>EOSfirewall-cmd --reloadfirewall-cmd --add-service=softetherfirewall-cmd --runtime-to-permanentnmcli connection show ens224 connection.zonenmcli connection up ens224

              AES-NI に対応させるとか、リージョンロックを外すとか

              上記だけでも普通に使うことはできますが、スマートカードとか証明書対応したい場合にはさらに以下の手順が必要です。

              最近の OpenSSL は AES-NI が有効になっているので、もしかしたら以前やっていたAES-NI 対応は意味がないかもしれません。ちなみに Intel のライブラリはCPUID で GenuineIntel かどうかを見ているので、CPU がAMD の場合には AuthenticAMD を認識できるようにしてやる必要もあります。

              具体的な手順としては以下のような感じになります。

              wget https://software.intel.com/sites/default/files/article/181731/intel-aesni-sample-library-v1.2.zipwget https://jp.softether-download.com/files/softether/v4.34-9744-beta-2020.03.20-tree/Source_Code/softether-src-v4.34-9744-beta.tar.gzwget https://raw.githubusercontent.com/el1n/OpenWRT-package-softether/master/softethervpn/patches/102-regionunlock.patchunzip intel-aesni-sample-library-v1.2.zipcat << EOS >./intel_aes_lib.patch--- Intel_AESNI_Sample_Library_v1.2/intel_aes_lib/src/intel_aes.c.org 2010-10-01 17:37:14.000000000 -0400+++ Intel_AESNI_Sample_Library_v1.2/intel_aes_lib/src/intel_aes.c 2021-02-20 04:49:34.126103061 -0500@@ -293,17 +293,30 @@ * ECX = 'l' 'e' 't' 'n' */+// See: https://github.com/rrnewton/intel-aes/blob/master/cbits/Intel_AESNI_Sample_Library_v1.0/intel_aes_lib/src/intel_aes.c+// AuthenticAMD++ int intel = 1;+ int amd = 1; if (memcmp((unsigned char *)&cpuid_results[1], "Genu", 4) != 0 || memcmp((unsigned char *)&cpuid_results[3], "ineI", 4) != 0 || memcmp((unsigned char *)&cpuid_results[2], "ntel", 4) != 0)- return no;+ intel = 0;- __cpuid(cpuid_results,1);+ if (memcmp((unsigned char *)&cpuid_results[1], "Auth", 4) != 0 ||+ memcmp((unsigned char *)&cpuid_results[3], "enti", 4) != 0 ||+ memcmp((unsigned char *)&cpuid_results[2], "cAMD", 4) != 0)+ amd = 0;- if (cpuid_results[2] & AES_INSTRCTIONS_CPUID_BIT)- return yes;+ if (intel || amd)+ {+ __cpuid(cpuid_results,1);- return no;+ if (cpuid_results[2] & AES_INSTRCTIONS_CPUID_BIT)+ return yes;+ }+ else+ return no; }EOSsed -i "s/\r//g" Intel_AESNI_Sample_Library_v1.2/intel_aes_lib/src/intel_aes.cpatch -p0 --ignore-whitespace < intel_aes_lib.patchpushd ./Intel_AESNI_Sample_Library_v1.2/intel_aes_lib./mk_lnx_lib64.shpopdcat << EOS > ./enable_aesni.patch--- src/makefiles/linux_64bit.mak.org 2021-02-20 03:15:08.467625594 -0500+++ src/makefiles/linux_64bit.mak 2021-02-20 03:15:57.523605859 -0500@@ -66,9 +66,9 @@ OPTIONS_LINK_DEBUG=-g -fsigned-char -m64 -lm -ldl -lrt -lpthread -lssl -lcrypto -lreadline -lncurses -lz-OPTIONS_COMPILE_RELEASE=-DNDEBUG -DVPN_SPEED -DUNIX -DUNIX_LINUX -DCPU_64 -D_REENTRANT -DREENTRANT -D_THREAD_SAFE -D_THREADSAFE -DTHREAD_SAFE -DTHREADSAFE -D_FILE_OFFSET_BITS=64 -I./src/ -I./src/Cedar/ -I./src/Mayaqua/ -O2 -fsigned-char -m64+OPTIONS_COMPILE_RELEASE=-DUSE_INTEL_AESNI_LIBRARY -DNDEBUG -DVPN_SPEED -DUNIX -DUNIX_LINUX -DCPU_64 -D_REENTRANT -DREENTRANT -D_THREAD_SAFE -D_THREADSAFE -DTHREAD_SAFE -DTHREADSAFE -D_FILE_OFFSET_BITS=64 -I./src/ -I./src/Cedar/ -I./src/Mayaqua/ -O2 -fsigned-char -m64-OPTIONS_LINK_RELEASE=-O2 -fsigned-char -m64 -lm -ldl -lrt -lpthread -lssl -lcrypto -lreadline -lncurses -lz+OPTIONS_LINK_RELEASE=-O2 ../Intel_AESNI_Sample_Library_v1.2/intel_aes_lib/lib/x64/intel_aes64.a -fsigned-char -m64 -lm -ldl -lrt -lpthread -lssl -lcrypto -lreadline -lncurses -lz INSTALL_BINDIR=/usr/bin/ INSTALL_VPNSERVER_DIR=/usr/vpnserver/EOStar zxvf softether-src-v4.34-9744-beta.tar.gzcd v4.34-9744/patch -p1 < ../102-regionunlock.patchpatch -p0 < ../enable_aesni.patch./configuremakecp -af ./bin/vpnserver/* /usr/local/vpnserversystemctl restart softether.service

                at 21:56 |

                logspout を使って Docker のログを集約してみる

                docker  dockercompose 
                logspout - logspout を使って Docker のログを集約してみる

                ログサーバができたので、あとはログを投げ込むだけですが Dokcer のコンテナ1つ1つにログ用の設定を入れていくのも大変なので、何か良い方法がないかと思って調べてみたらコンテナのログを集約して投げ込んでくれるgliderlabs/logspout というものを見つけました。

                これを使うと /var/run/docker.sock をマウントする必要があるものの、個別のコンテナの設定を変更することなく、ログサーバに stdout/stderr の内容を送ることが可能になります。これを Docker のホストにつき1つずつ起動させておけば OK です。

                ファイル構成

                docker-logspout/ ├ docker-compose.yml  └ logspout/   └ Dockerfile


                  at 01:08 |
                  2021/02/24

                  Dokcer で Elasticsearch + Kibana + Logstash を立ててみた

                  docker  elasticsearch  dockercompose 

                  既存環境の Docker 化はntp,DNS,gitbucket,svn,redmine,リバースプロキシと一通り揃ってきたので、最後にログサーバを立てていくことにします。

                  これまでログ集約用のサーバはrsyslogを立てていましたが、ログの内容をチェックするのがやはり面倒くさいということで、可視化もできるElasticsearch + Kibana + Logstash という構成に移行することにしました。

                  Elasticsearch + Kibana は最近あまり使っていなかったのですが、いつの間にかちゃんと画面にパスワードが設定できるようになっていたんですね。Logstash もフィルタであれこれできそうなので良い感じです。

                  ファイル構成

                  docker-es-kibana-logstash/ ├ docker-compose.yml  └ pipeline/   └ logstash.conf


                    at 22:46 |
                    2021/02/23

                    Firefox の HTTP/3 を有効にしてみる

                    firefoxquantum  http3 
                    Firefox 86 の HTTP/3 - Firefox の HTTP/3 を有効にしてみる

                    せっかくHTTP/3 に対応したサーバを立てたので、僕が普段使っているFirefox の HTTP/3 を有効にしてみました。

                    以下の説明だと nightly でないとできない感じですが、現行の Firefox 86 でもabout:confignetwork.http.http3.enabledtrue にすることで有効化することができました。

                    How to test HTTP/3 and QUIC with Firefox Nightly

                    Then open Firefox and enable HTTP/3 by visiting "about:config" and setting "network.http.http3.enabled" to true.


                      at 22:12 |
                      «Prev ||1 |2 |3 |4 |5 |6 ||Next»
                      « :: »cles::blog >ArchiveList > 2021-2
                      Copyright © 2004-2023 by CLES All Rights Reserved.
                      サイト内検索
                      検索ワードランキング
                      へぇが多いエントリ
                      閲覧数が多いエントリ
                      1 .アーロンチェアのポスチャーフィットを修理(100462)
                      2 .福岡銀がデマの投稿者への刑事告訴を検討中(99790)
                      3 .年次の人間ドックへ(99756)
                      4 .三菱鉛筆がラミーを買収(99357)
                      5 .2023 年分の確定申告完了!(1つめ)(99328)
                      最新のエントリ
                      cles::blogについて
                      誰が書いてる?
                      最近行った場所
                      サイトポリシー
                      タグ一覧
                      検索ワードランキング

                      Referrers

                        Powered by CLES
                        Nucleus CMS v3.31SP3/w memcached
                        21390659(W:1318 Y:1313 T:1318)
                        cles::blogのはてなブックマーク数
                        benchmark


                        [8]ページ先頭

                        ©2009-2025 Movatter.jp