おしゃれにプロセス見る。だけじゃなかった。

このエントリーをはてなブックマークに追加

今時、topコマンドじゃなくてhtopなんていうおしゃれなコマンドがあるんですね。

しかもカジュアルにプロセス殺せるという。
なんか、クソみたいなプロセスがうごいてたのでKILLしてみた。

シグナルも選べるんですね。

–追記–
プロセス選んでsでstraceできるし
プロセス選んでlでlsofできるし
ちょっと、できること豊富っぽい。
時間が有れば、しっかり調べてみる。

Let’s Encryptを使って取得した証明書を自動で更新する(はず)

このエントリーをはてなブックマークに追加

なんか、↓のコマンドでうまくいきそうな気がする。

残り30日を切ったときだけ、更新処理が走ってくれるみたいなので、今のところは
Cert not yet due for renewal
と帰ってくる。

Let’s Encryptを使って無料でhttps化する。(初回発行)

このエントリーをはてなブックマークに追加

職場で話題に上がったLet’s Encryptを使って、無料でhttps化する。

Let’s Encryptって90日間の証明書で、都度都度更新めんどくさいんだろうな。
というイメージだったのですが、
どうやら自動化がいい感じにある。って聞いたのでやってみようと思った次第です。

Let’s Encrypt の使い方に従って進めていきます。

手元の環境はCentOS6です。

まずは、epelリポジトリを追加するようですが、既に追加してるのでスキップ

CentOS6では、パッケージ管理でインストールできないようなので手動で導入する必要が有った。

少し躓いたのん、epelリポジトリ追加してるけど、デフォルト有効にしていないから、前もってパッケージ群を追加しておく。

パッケージ追加したし、やってみる。

ドメイン名、メールアドレスの入力して、Agreeしたらなんか怒られた。

httpd落として、ローカルで発行コマンド叩いたらいけるっぽい事書いてあったので、
気を取り直して叩いた。

うまく言った気がする。

sslの設定を書き換えて、証明書、中間証明書、秘密鍵を指定してあげれば良い。

で、停止していたhttpdを起動すればhttps化できた。

今のところ、自動化はまだできてない・・・

dstatは知ってると役に立つ

このエントリーをはてなブックマークに追加

だいぶ前に、dstat -tlaf 1は良さげ
と言ってたのですが、ちゃんとオプションとか知らずに言っててすいませんでした。

すごく良いので、ちゃんとオプションについて書いてみます。

オプションなしで動かすと、デフォルトの-cdngyが渡される。

-c:cpu stats (system, user, idle, wait, hardware interrupt, software interrupt)
-d:disk stats (read, write)
-n:network stats (receive, send)
-g:page stats (page in, page out)
-y:system stats (interrupts, context switches)

次は、dstat -tla 1

-t:time/date output
-l:load average stats (1 min, 5 mins, 15mins)
-a:equals -cdngy (default)
1 は1秒ごとに更新ですね。

ヨサゲと言ってたdstat -tlaf 1

-fは
CPUや、DISK、NETWORKを詳細に表示してくれるんですね。

ページングはあるけどメモリが出てないですね、man見れば書いてますが-mですね。
メモリは-f渡してもこれ以上の詳細表示は無いですね。

ここまで欲張るとターミナルからはみ出る。

vmstatに時刻出すときどうやってたっけ?って悩むことなく-tvで

manはボリューム満点なので
まずは–helpから見ていくと良いと思います。

ヴィジュアルモードスゲー

このエントリーをはてなブックマークに追加

vim使っていて、がさっと1ブロック消したいときに
指折り何行あるか数えて8ddとか、
結構行数ある時は10ddとかで刻んで消したりとか、
なんかイケてないオペレーションしてたんですが
ヴィジュアルモードで範囲指定してdするだけで良いんですね!!

知らなくてごめんなさい。

どうしてもSSHしたいから踏み台を作ったはなし

このエントリーをはてなブックマークに追加

ちょっとした研修施設でMicrosoftAzureの研修のようなものに参加させていただいたのですが
インスタンスの構築はwebブラウザからサクサクと進めればいいのですが
立ったインスタンスにsshでアクセスしようとしたものの、アクセスできないorz
どうやらその研修施設のネットワークがガチガチすぎて、22番ポートに出ていけない。
というか、80番と443番にしか出ていけないw

困ったので、443番でssh待ち受けるサーバを作った
AmazonEC2上に立てたので、標準だと公開鍵認証認証なのですが
公開鍵を持ち歩くことないので、踏み台アカウントを作成して、踏み台アカウントはパスワード認証にした。
#さすがにec2-userとかパスワード認証にする勇気はないです。(ユーザー名知れ渡ってるし、総当たりされそう)

ちなみに、上記な環境です。

やったことはシンプル
* /etc/ssh/sshd_config の編集
* sshdの再起動
の2つだけです。

リッスンポートを22から443に変更

踏み台アカウントはパスワード認証

変更後にsshdの再起動。
めでたくして、443ポートで待ち受ける踏み台サーバができました。

インターネットすることを許可する/しない

このエントリーをはてなブックマークに追加

秋の夜長の意味もよくわかってないですが
夏至をすぎれば冬至まで夜は長くなる一方なので、夜は長くなるでしょう。

そんな戯言はどうでもいいのですが、夜にインターネットすると時間泥棒がやってくる。
ということで、インターネットを許可しない。

squidを使って、夜の間だけインターネットを許可しないってことをやったのでめも。
バージョンは 以下のバージョンです。

まずは、時間泥棒たちのURIを正規表現っぽい感じで、以下に記載

次に、squidの設定ファイルを編集

こんな感じでよろしく追記した。

上記でDAYTIME を 08:00-22:00で設定
※曜日が設定したければ 時刻の前に曜日設定ができる。(acl DAYTIME time MTWHF 08:00-22:00)
 S(日曜日)、M(月曜日)、T(火曜日)、W(水曜日)、H(木曜日)、F(金曜日)、A(土曜日)

上記で許可したい時間帯は時間泥棒の閲覧を許可する。

上記で時間泥棒の閲覧を許可しない。

こうすることで、許可する時間だけ許可することが出来る。

注意しないといけないのは、squidのaclは上から順番に評価していくので
http_access deny する前に http_access allow すると、意図せず許可してしまうということ。

オリジナルのsquid.confだと

こんな感じで、localnetからのアクセス許可してるので、気をつけないといけないです。

ということで、自制心のない僕でもなんとかなりそうです。
あぁ、ブラウザのプロキシ設定は忘れずに。

aws cliをタブ補完したい

このエントリーをはてなブックマークに追加

タイトルの通り。
aws cli コマンドというかオプションというか長すぎて覚えられない。
タブ補完できたら良いな。と思ったらできた!

たった3行!
超快適!

ドンピシャ検索

このエントリーをはてなブックマークに追加

ELBのアクセスログで5xxエラーを拾いたい。
こんな感じでログ出るはずなので

grepすると、違うところも引っかかる

フィールドは決まってるので
8番目の(elb_status_code)をgrepできればいい。
スペース区切りで出力されるので、確実に8番目にステータスコードが来るはず。
awkならスペース区切りの8番目とかできるでしょ。

うん、8番目取れたけど…8番目が5xxの行全体が欲しいんだよね。

8番目が5で始まるにマッチする行全体を表示すると、欲しいの取れそう。

ドンピシャ取れた!