job

python yamlをインストール

job

なにやら必要だというので。 pipでインストールできなかったので手動で。 ブツをダウンロード https://pyyaml.org/download/pyyaml/ から最新版をダウンロード。この記事を書いている段階で最新はPyYAML-3.13.tar.gz。 展開してインストール $ tar -zxvf ./P…

zabbixでMySQLを監視

job

zabbixで利用しているバックエンドDBがMySQL。せっかくなのでMySQLも監視してみる。 テンプレートを適用 設定→ホストで監視対象のサーバを選択。テンプレートタブをクリック、新規テンプレートをリンクで選択をクリック。 グループで"Templates"選択すると、…

zabbixでのPostgreSQL監視

job

ZabbixでPostgreSQLを監視するにはpg_monzというテンプレートを利用するのですが、先日zabbixをバージョンアップして以降ちゃんと監視できていなかった模様。以下防備録で。 テンプレートを入れ替え pg_monzは https://github.com/pg-monz/pg_monz にあるの…

zabbixの負荷が高い

job

zabbixの監視が時々不具合。なんだかagentと通信ができないってなレポートがとんできます。それもひとつや2つじゃなくて、50ほどある監視対象サーバすべてで。 原因がよくわからない。データストアしているMySQLの負荷が高いようなので、ちょっとチューニン…

特定のアドレスからのリクエストの場合、基本認証をスキップする

job

Apache2.4で運営しているサイトがありサイト全体に基本認証を設定しています。そのサイトにAPIでリクエストしてくるところがあり、そこからのリクエストは基本認証をスキップして欲しいとの要望。ユーザ名とパスワードくらいいれればいいのに。むかしのmod_a…

mov動画をmp4へ変換しつつ、指定秒数を切り出す

job

iphoneでとった動画をmp4形式へ変換して、さらに分割したいとの要望。 そんなの適当に見せとけばいいのに。 ffmpegでなんとかなりそうなので調べてみた結果、以下のようにすればいいみたい。 $ ffpmeg -ss 開始秒数 -i ./入力ファイル.mov -t 切り出す秒数 -…

mod_evasiveを有効に

job

先週のDOS攻撃騒ぎに伴ない、mod_evasiveを有効にしました。mod_evasive自体は随分前から導入はしていたんですが、正常なリクエストでも、1ページあたりのエレメントが多かったりすると攻撃と勘違いしてdenyしてしまうケースがあるので一時期無効化していま…

攻撃継続中

job

昨日からの攻撃が継続中。攻撃対象の仮想ホストを変えてDOS攻撃してきます。ある程度ソースアドレスはバラけていますが、メインのアドレスからの攻撃が主なので、そこさえ塞いでしまえば怖くありません。攻撃といってもscript kiddyっぽい初級者の攻撃かな。…

攻撃とか

job

管理しているウェブサイトに継続的にアタックがかかっています。継続中。 基本認証がノートライで破られているので、技術的にではなく、社会的にパスワードが漏れたっぽい。まぁ試験サイトを見られているだけなのでそれほど害があるわけではありませんが。 …

攻撃

job

実は昨日の月曜日の昼ごろからzabbixやpingdomあたりから止まってるよー、復活したよーっていう警告メールがバンバン届いていて、気がきじゃなかったんです。 パソコンは持ち歩いていますが、とまったままならともかく、とまったり復活したりっていう場合は…

PHPバージョンアップ

job

某システムをphp5.6から7.1へバージョンアップ。7.2ならあと2年使えるんだけど、なぜだかベンダが7.1しか対応しないとか。あと1年ほどしたらまた同じことやらないといけないかと思うと結構憂鬱。 手順はすべてchefのレシピとテンプレートに落とし込んで実行…

Windowsの大文字と小文字

job

あるWebシステムの認証をActiveDirectoryのLDAPでおこなっています。Windows系の認証ではなぜか大文字と小文字を区別しないので、ユーザ名として"Hoge_Fuga"と"hoge_fuga"は等価に評価され、どちらでも認証できる。 たしか全角でいれてもOKだったような気が…

ウェブスケジュールのスケジュール決め

job

ウェブのバックエンドシステムをバージョンアップ。公開側は無停止でやりますが、編集側はほんの短時間ですが止めないといけません。それで、運営側と話してスケジュールを決めるんですが当たり前のように深夜帯とか、休日を指定してくる。でもって、彼らは…

chmodとchownのスクリプトをワンライナーで

job

6月14日のエントリで、バックアップディレクトリのファイルを"--reference"オプションで参照して、tarで展開したファイルやディレクトリのパーミションやオーナを調整するスクリプトを書きました。 このtar展開やその他環境調整はchefで行っているため、chef…

Web環境刷新中

job

現在動作しているWebCMSのバージョンアップ作業実施中。試験環境とか、Dockerの捨て環境などでchefのレシピを適用して環境構築しています。 事前にベンダがいろいろ調査してくれて、「これでバッチリです」と言ってくれた手順でしたが、実際にやってみるとや…

chmodとchownの--referenceオプション

job

ウェブの環境調整中です。プロダクトを置き換えるのにパッケージではなく、tarballを展開してちょこちょことなにやら実施。ところが、tarballに含まれているファイルやディレクトリのpermissionやowner,groupが現環境とちがっていていろんなところで不具合が…

HTTPSサイトが起動しない

job

新規に仮想ホストでHTTPS対応のサイトを立ち上げ。機密鍵と、中間証明書、サーバ証明書を適当に指定してapacheを起動するとこんなエラーログを吐いて立ち上がらない。 [Wed Jun 13 13:29:56.028149 2018] [ssl:error] [pid 15197:tid 139938700863296] AH025…

シェル芸人からの挑戦

job

という連載がSoftware Designで掲載中。シェル芸というか、ワンライナー的なことに関しては大昔からそういうことやってきたこともあって、ちょいとは自信があります。でもこの連載を読んでいると、そういう使い方もあるのかとか、そのコマンドは知らなかった…

sshで複数のトンネルを作る

job

Dockerの環境をいろいろ操作しています。ウェブサービスを提供しているコンテナなので、HTTP,HTTPSなど複数のポートに対してアクセスできる必要があります。sshで複数ポートのトンネルってどうやって作るんだろとトライ。 まぁ複数-Lオプション書けばいいん…

chef-soloでsshの通信ポート番号を変更する

job

稼働中システムのバージョンアップ作業が進行中。本システムはちゃんと試験環境があるんですが、運用しているうちに試験環境が試験環境じゃなくなって潰したらあかん環境になってしまっています。まぁよくあること。 なので、Dockerで環境をつくって、そこに…

zabbix環境のphpを5.4から7.2へ

job

5月10日のエントリでZabbixの環境を更新しましたが、phpはまだ5.4にままでした。 今日更新したのでその手順を。 httpdサービスを停止する # systemctl stop httpd php54のリポジトリを無効化して、php72のリポジトリを有効化する それぞれのリポジトリファイ…

sudoとpam_tally2

job

sudoでパスワードを正常に入力して認証が成功してもpam_tally2でのfailureカウントがカウントアップされるというレポート。確認のために別アカウントを作成して現象を確認。たしかにカウントアップされるみたい。なぜだ。sudo,tally2でgoogle先生に聞くとRHE…

Webalizer再解析

job

4月分のWebalizer解析ができてないよとのレポート。確かにできてない。 apacheのログはsyslogデーモン経由でちょっとディスク容量がおおきいサーバへ集約していて、そのディスクをマウントしたうえで、Webサーバの一台からリモートマウントしている。 そうい…

Zabbixを3.0.4から3.4.9へ

job

いれてから一年以上経過してだいぶ古くなってきているのでバージョンアップ。 以下の手順で実施しました。 Zabbixサーバを停止 # systemctl stop zabbix-server 現行DBをバックアップ # mysqldump -u root -p --all-database | bzip2 > mysql_zabbix.dmp.bz2…

PHPをupdate

job

昨日リリースされていたphp5.6.36を各種サーバへインストール。 changelogによれば4つバグフィックス。つかってない機能だけど、まぁ機械的に適用したほうがいいでしょうってことで。 5.6も今年一杯。早いこと7へ上げる算段をつけないといかんです。

yumのupdateに失敗

job

週末にRHELが使っているカーネルのupdateがあった模様。早速各サーバでupdateを実施。 そのうちの一台は他サーバへNFSマウントポジションを提供する機能があって、そのnfsdがちょいと妙な動きをしてることがわかっていました。時々タイムアウトして他サーバ…

rsyncをexpectで動かしたかった

job

4月11日のエントリで書いた件。これをexpectをつかって自動化しようとしました。 書いたスクリプトがこんなの。 #!/usr/bin/expect set timeout -1 spawn sudo rsync -auvz -e "sudo -u hoge ssh -l hoge" --rsync-path="sudo rsync" /usr/local/apache2/ se…

nginxでHTMLを改変

job

nginxでリバースプロクシを実現しているアプリケーションが出力するHTMLに、aタグとか画像リンク中に絶対パスが含まれているところがあって、ちょいと困ったことになっている。 消してくれとリクエストしたんですが、ベンダさんはできないとの回答。できない…

rsyncをsuで実行

job

host1からhost2へディレクトリ構造をまるごとコピーしたい。以前にもtarを標準出力で流してsshで受け取ってtarで展開なんてことをやっていたんですが、頻繁にやるとなると差分だけ移動したい。ってことでrsyncを利用することに。 rsyncのマニュアルをみるとs…

nfsdを再起動

job

Apacheの設定ファイルはあるサーバ上のディスクに存在していて、複数あるWebサーバがそのディスクをリモートマウントして参照しています。そうすることで、単一のファイルで複数のウェブサーバを簡単に管理できます。 ところが数カ月前からどうもこのリモー…