IT Notebook

とあるエンジニアの備忘録

サーバ設定

ApacheのWebサーバに対して"Mozilla/5.0 Jorgee"というUserAgentにいろいろ探られている件

最近アクセスログを確認したところ攻撃を受けていることを確認。今のところ特に抜き出された様子はないが、このままほっておけないので対応。 攻撃を受けてたログ 163.22.88.133 - - [15/Sep/2017:10:35:38 +0900] "HEAD http://XXX.XXX.XXX.XXX/mysql/admin…

ELB配下でのApacheのIPアドレス制限方法

AWSのELB配下のEC2のApacheで送信元IPアドレス制限をかけるにはちょっとした工夫が必要です。 通常のApacheのIP制限 例えばApacheで「/wp-admin」に「999.999.999.999」からのアクセスのみ許可する場合、次のような設定になります。 <Location /wp-admin> order deny,allow deny </location>…

NginxとTomcatの連携させた時にハマった件

先日Tomcatで直接受け付けていたサーバをNginxで受け付けるようにして リバースプロキシでTomcatへ渡す設定した時にハマったので、その時の備忘録となります。 ハマったこと リパースプロキシ設定は特に問題なかったが、ログインするとなぜか「 127.0.0.1 で…

NginxでCSSファイルが更新されない時の対応について

以前CSSファイルが更新されないという減少が発生した時の対応となります。 原因 Nginxで「sendfile on;」というパラメータが有効になっていた。 このパラメータを有効にしていると、kernelのシステムコール「sendfile」を使用して、kernel内にファイルを複写…

Linuxのプロンプトにホスト名を表示する方法

Linuxのプロンプトにホスト名を表示する方法 Amazon Linuxのデフォルトのプロンプトはこんな感じです [ec2-user@ip-10-10-10-10 ~]$ このサーバのホスト名を「test1」とした場合、以下のようなコマンドでとりあえず実行すると変更されるのですが [ec2-user@i…

td-agentでログ出力レベルを変更する方法

使い続けて3年以上。ログはerrorとwarningしか出力されないと思い込んでしまっていた ついに詳細なログを確認しないと解決出来そうにない問題にぶち当たり調べた時のメモ 環境 OS:Ubuntu 14.04.2 LTS td-agent:0.12.12 修正箇所 「/etc/init.d/td-agent」の…

Apache2.4でエラー「Unknown Authn provider: ldap」が出たときの対応手順

Apache2.4でOpenLdapと連携させる時に以下のエラーがでて結構苦労したのでメモ 環境 OS:Ubuntu 14.04.1 LTS エラーメッセージ AH00526: Syntax error on line 8 of /etc/apache2/mods-enabled/FILENAME: Unknown Authn provider: ldap Action 'configtest' f…

Subversion1.8.8 + Apache2.4.7 + OpenLDAP連携した環境構築

SubversionをAWS上に構築した時のメモ 今更ながらですが... 環境 OS:Ubuntu 14.04.2 LTS 手順 1.パッケージインストール sudo apt-get update sudo apt-get install subversion subversion-tools libapache2-svn apache2-utils apache2 libapache2-modsecuri…

GitLab7.4.3から7.14.3へのアップグレード

GitLab7.4.3のslack連携がうまくできなかったので GitLab7の最新版である7.14.3へアップグレードした時のメモ 環境 OS:Ubuntu 14.04.1 LTS 手順 1.アップグレードするパッケージの確認 この確認方法ですがを探すの結構苦労しました ここでは「7.14.3-ce1 ubu…

OpenLDAPで「bdb_equality_candidates」エラーが発生した時の対応方法

環境 OS:Ubuntu 14.04.1 LTS OpenLDAP:2.4.31 出力ログ Jan 6 01:47:06 localhost slapd[28974]: <= bdb_equality_candidates: (uid) not indexed 原因 インデックスが見つからないため 対応 インデックス作成 対応手順 1.OpenLdapサービス停止 service slap…

OpenLDAPでSSH公開鍵を登録してログインするまでの手順

やりたいこと SSH公開鍵をLDAPに登録して一元管理したいため調査しました。OpenSSHをソースからコンパイルしてとかいろいろ情報がありましたが、Ubuntu 14.04.1 LTSではOpenSSH 6.6.1p1がapt-getで入手できるのでスキーマファイルをダウンロードしてinclude…

Linuxでn日前・n分前のファイルを削除する方法

今更ながらfindコマンドでn日前・n分前のファイルを削除する方法をメモ 1.findコマンドのフォーマット find [path..] [expression] 2.日時を指定するオプション -atime +n 最終アクセス日時がn日以前のfile(or directory)を検索 -atime -n 最終アクセス日時…

Ubuntu14.04にapt-getでMariaDB Serverをインストールする方法

MariaDB Serverをインストールした時のメモ 環境 OS: Ubuntu14.04 インストールコマンド sudo apt-get install software-properties-common sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db sudo add-apt-repos…

Ubuntuでapt-getでインストールされるパッケージの確認方法

apt-getでインストールされるパッケージの確認方法を調査したのでメモ 確認コマンド apt-cache policy <パッケージ名> 今度からはパッケージインストール手順はこんな感じにする予定 apt-get update apt-cache policy <パッケージ名> apt-get install <パッ…

Ubuntu14.04にapt-getでPercona Serverをインストールする方法

Percona Serverをインストールした時のメモ 環境 OS: Ubuntu14.04 インストールコマンド sudo su - sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A echo "deb http://repo.percona.com/apt "$(lsb_release -sc)" main" | sudo t…

Linux - topコマンドでCPU使用率をコア単位で表示する方法

今までは「sar -P ALL 1」とかでリアルタイムに表示させていたけど、topコマンドでも表示できるのでメモ topコマンドでCPU使用率をコア単位で表示する topを叩いて「1」を入力 するとこんな感じで表示される top - 11:01:33 up 90 days, 23:09, 2 users, loa…

Linux - sarコマンドについて

sarコマンドを使用するたびに検索していたので、障害調査や性能試験でよく使うコマンドを纏めてみました。 環境 OS........ Ubuntu14.04 sysstat... 10.2. インストール インストールコマンド sudo apt-get install sysstat ファイル指定 sysstatで取得して…

Nginx - 特定のUserAgentを転送する設定

Nginxの特定のUserAgentを転送する設定をしたのでメモ 設定ファイルをif文で記述できるのでいろいろと応用ができそう Nginxの設定 location / { if ($http_user_agent ~ <UserAgent>) { proxy_pass http://172.30.10.101; } }</useragent>

Linux - 標準出力で先頭指定行飛ばしたり、後ろ指定行読み飛ばしたりする方法

tailコマンドやheadコマンドを使って標準出力の行を制御。これは便利! 先頭5行飛ばして6行目から出力する tail -n +6 test.txt 後ろ5行出力しない head -n -5 test.txt 参考 http://d.hatena.ne.jp/iww/20130623/tail

Linux - dfコマンドについて

dfコマンドのオプションなどについて纏めていこうと思います Disk使用量を確認するコマンド(KB表示) コマンド df -k サンプル $ df -k Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvda1 8125880 4231856 3458212 56% / none 4 0 4 0% /sys…

HAProxy - reloadコマンド

HAProxyの設定を変更したあとreloadするコマンドのメモ 新しいプロセスが生成されて、新規コネクションは新しいプロセスで受け付ける 古いプロセスはそれまでのコネクションがすべて切断されたタイミングで終了する HAProxyのreloadコマンド haproxy -f /etc…

sSMTP - sSMTPからAWS-SES経由でメールをおくる

AWS-SES経由でメール送信を簡単にできそうなMTAを探していたところ「sSMTP」というのが良さそうだったので設定してみました 作業環境 OS: Ubuntu14.04 ssmtpインストールと初期設定 sudo su - apt-get update apt-get install ssmtp groupadd ssmtp adduser <OSUSER></osuser>…

Ubuntu - エラー「E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)」

ubuntuで「apt-get update」した時のエラー エラー出力 E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable) E: Unable to lock directory /var/lib/apt/lists/ 原因 他のプロセスがaptを使用しているため 対応 1…

NTP - 2015/7/1 8:59:60 のうるう秒対応について

内容 時間調整のために世界一斉に、2015/6/30 23:59:59(UTC)から2015/7/1 0:00:00(UTC)に切り替わるタイミングで2015/6/30 23:59:60(UTC)が挿入される これを日本時間に直すと、2015/7/1 8:59:59(UTC+9)から2015/7/1 9:00:00(UTC+9)に切り替わるタイミングで…

Linux - bash変数のインクリメントについて

今までbashで変数をインクリメントする時は「expr」を使用していたけど、2重括弧を使用する方法があったのでメモ 「expr」を使用する方法 i=`expr $i + 1` 2重括弧を使用する方法 i=$(( i + 1 )) 2重括弧を使用するほうが早いらしいので今後は2重括弧を使う…

Jenkins - エラー「source: not found」

Jenkinsに登録したジョブがエラー発生 少しはまってしまったのでメモ エラー内容 /tmp/hudson7506796319628811162.sh: 4: /tmp/hudson7506796319628811162.sh: source: not found 原因 sourceコマンドが認識できない 対応 1行目に以下の行を追記 #!/bin/bash

NFS - NFS構築

NFSについて調査するにために構築した時のメモ NFSサーバ構築 1.nfsサーバインストール apt-get install nfs-kernel-server 2.「/etc/exports」設定変更 /share_1 *(rw,all_squash,sync,anonuid=1000,anongid=1000,insecure,no_subtree_check) /share_2 *(rw…

Linux - gpasswd ユーザをグループに追加・削除するコマンド

LinuxのOSユーザをグループに追加・削除するコマンド グループへの追加 gpasswd -a user1 group1 グループからの削除 gpasswd -d user1 group1

MHA - DBサーバのレプリケーション確認コマンド

MHAで監視するDBサーバのレプリケーションに問題無いか確認するコマンド MAHレプリケーション確認コマンド masterha_check_repl --conf=/etc/master.cnf

MHA - MHAサーバ - DBサーバ間のSSH疎通確認コマンド

MHAはMHAサーバ - DBサーバ間でSSHで接続できる必要がある その疎通に問題無いか確認するコマンド MAH疎通確認コマンド masterha_check_ssh --conf=/etc/master.cnf