Sponsored Link |
Sponsored Link 目次 †
dhcpdでのログローテートでの注意事項 †ISC製のdhcpd(多分ほぼ全部のLinuxに入っている?)でのログローテートの際、"kill -HUP"が効かないため、サービスでrestartする必要性がある。 例 †
Linuxでのルータ設定 †RedHat系では普通にセットアップ後、/etc/sysctl.conf にてnet.ipv4.ip_forward == 1 に変更する。 ※備考 フォワーディングとは、 他のネットワーク宛に届いたパケットを、 もう1枚のネットワークカードを使って別のネットワークに転送することです。 インターネットではデータ-をバケツリレー方式で転送しますが、 このリレーを行うのがフォワーディング grep †grep -C -5 0857 †0857を含む前後5行を表示 grep -A -5 0857 †0857を含む後5行を表示 grep -B -5 0857 †0857を含む前5行を表示 grep -o †上記オプションはリファレンスにのってない。"-o"オプションはマッチした箇所だけ出力される。 tar.gz,gz圧縮、解凍 †tar.gz解凍 †tar -xzvf package.tar.gz gz解凍方法 †gunzip filename tar圧縮方法(zをつけるとgzip) †tar czvf hogehoge-1.1.tar.gz hogehoge/ tarで特定ディレクトリを除く圧縮 †
chageコマンド †chage op date User chage -E 2008/04/17 i_kaori アカウント有効期間の表示(検索用:有効期間、有効期限) †chage -l アカウント crontabの書き方 †crontab [ -u ユーザ名 ] { -l | -r | -e } 時間の設定は以下。
シェルの強制中断 ( Ctl + Z ) †シェルの強制中断を行ったとき、実行状態のままとまっている。 jobs と打つ。 出力例 [1]+ Stopped aaa.sh これをとめるには ps aux | grep aaa とかでプロセス番号を指定する。たくさんあってめんどくさいときは出力例の中にある「[*]」の*部を引数にして下記コマンドでとめることができる。 kill %*
splitコマンド(分割、cut) †
IPv6におけるPing連打 †ping6 IPv6Address -I eth1 -i 0.01 -c 1000 -s 480 -Iでインターフェース指定 -iで送信間隔指定 -cで送信回数指定 -sでサイズ指定 grepを再帰的に行う †grep -r パターン パス sortコマンド †sortの書式 †sort [オプション] ファイル名
ディレクトリ以下を検索 †検索にヒットした行そのものや行数を知りたい †find ディレクトリ名 -type f -exec grep -c 検索パターン {} /dev/null \; | grep -v ^/dev/null 1行に複数マッチした場合もカウントしたい †find ディレクトリ名 -type f -exec awk '{count +== gsub(/検索パターン/, "")} END {print FILENAME " : " count}' {} \; bashrcを即反映== †source ~/.bashrc tcpdumpでssh以外のパケットキャプチャ †tcpdump -w test.pcap "not port(22)" インタフェイスを指定するときは tcpdump -D で確認後、 tcpdump -i 1 等で指定。
tcpdump使い方基本 †tcpdump -s 1600 -w out.pcap -sはサイズ。16進の部分を多く表示させるため 10メガごとに分割 †tcpdump -C 10 -s 1600 -w out.pcap -Cで設定する。 垂れ流し †echo 'Date Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg';while [ 0 ]; do echo -n `date +'%F %T'` ' ';netstat -i | grep eth0; sleep 1;done 帯域制御(帯域制限)コマンド †tc 全部1秒遅延させる (追加と削除) †追加:tc qdisc add dev eth0 root netem delay 1000ms 削除:tc qdisc delete dev eth0 root netem delay 1000ms その他 †http://www.playing-engineer.com/?p==222 PostfixにおけるIPv6設定 †デフォルトではipv6に対応していないため、main.cfにipv6対応するよう追記する main.cf †mynetworksに追加したいipv6の範囲を追加する。今回はリンクローカルを追加する例。 mynetworks == 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/24 [fe80::]/64
inet_protocols == ipv4, ipv6
opensslによるCA構築 †★CA構築 †cd /etc/pki/tls/misc/ ./CA ?newca でCA構築完了。 rm -rf /etc/pki/CA ディレクトリをそのまま削除でよい。 ★秘密鍵(Key)の作成 †openssl genrsa -out ./key.pem 2048 -> これで確認済み openssl genrsa -des3 -out ./key.pem 2048 openssl genrsa -des3 -out ./key.pem 1024 ★csr作成 †openssl req -new -key ./key.pem -out ./csr.pem csrと秘密鍵はpostfixで参照するディレクトリで行う(どこでもいい)。 /etc/pki/tls/certs これはpostfixでパスを設定する。 ★署名(サーバー証明書作成 -> メールサーバにおいとくやつ) †cd /etc/pki/tls/misc openssl ca -out /etc/pki/CA/certs/cert.pem -infiles /etc/pki/tls/certs/csr.pem
/etc/pki/CA/certs/cert.pem ★メール用証明書作成(SMTPSでの動作確認した/starttlsも) †(cat IP.pem;cat IPkey.pem) > IPmail.pem で作成する。作成された証明書と秘密鍵をつなげるイメージでおk ★STARTTLS対応 †master.cfの下の行をコメントアウトする。 -o smtpd_tls_wrappermode==yes ★ルート証明書をcer形式出力(ルート証明書 -> iRエージェントやコンパクトサーバーにおいとくやつ) †cd /etc/pki/CA openssl x509 -inform pem -outform der -in cacert.pem -out ca.der "l"で確認するとca.derが作成されていることを確認する。 ★証明書失効 †openssl ca -gencrl -revoke ./certs/***.pem crlnumberがないと言われたときは echo "00" > crlnumber で作成すればいい。 ★失効リスト作成 †openssl ca -gencrl -out ***.crl で作成。 ◆index error が出たとき †index.txtを削除したあと、 OpenSSLで楕円曲線暗号方式の鍵を作成する方法 †環境 †仮想環境上(VMPlayer)にインストール OS : CentOS 5.6 OpenSSL : 1.0.0d openSSLのバージョン †今回の環境に利用したOS(CentOS5.6)にバンドルされているopensslのバージョンは"openssl-0.9.8e-12.el5_5.7"である。 ---------- [root@localhost ssl_Create]# openssl ciphers -v ECDSA Error in cipher list 18020:error:1410D0B9:SSL routines:SSL_CTX_set_cipher_list:no cipher match:ssl_lib.c:1188: [root@localhost ssl_Create]# ---------- そこで現在(20110720)の最新バージョン、"openssl-1.0.0d"を利用するとECDSAが利用できることがわかる ---------- [root@localhost ssl_Create]# /usr/local/ssl/bin/openssl ciphers -v ECDSA ECDHE-ECDSA-AES256-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA1 ECDHE-ECDSA-DES-CBC3-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=3DES(168) Mac=SHA1 ECDHE-ECDSA-AES128-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA1 ECDHE-ECDSA-RC4-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=RC4(128) Mac=SHA1 ECDHE-ECDSA-NULL-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=None Mac=SHA1 [root@localhost ssl_Create]# ---------- したがって新規に"openssl-1.0.0d"をインストールする必要があるため、次に手順を記載する openSSLインストール方法 †openSSLのサイト ( http://www.openssl.org/ ) から openssl-1.0.0d.tar.gz をダウンロードする。 --- [root@localhost ssl_Create]# whereis openssl openssl: /usr/bin/openssl /usr/lib/openssl /usr/include/openssl /usr/share/man/man1/openssl.1ssl.gz --- 今回は環境変数に登録せず、1.0.0dを利用するときは、フルパスで入力することにした。 認証局構築及び認証局の自己証明作成 †コマンド †
コマンド説明 †
サーバ証明書作成方法] †一応、openssl.cnfをnsCertType = server としておく ネットスケープ対応だが、証明書を確認したときにサーバ証明書とわかりやすい これで動作がおかしい場合は、extensionsでサーバ証明書だと明示する必要があるかもしれない(未確認) (802.1Xで認証サーバが使用する証明書は明示しないとwindowsXPの場合は認証できないため) コマンド †
コマンド説明 †
クライアント証明書作成方法 †一応、openssl.cnfをnsCertType = client, email としておく ネットスケープ対応だが、証明書を確認したときにサーバ証明書とわかりやすい これで動作がおかしい場合は、extensionsでクライアント証明書だと明示する必要があるかもしれない(未確認) (802.1Xでサプリカントが使用する証明書は明示しないとwindowsXPの場合は認証できないため) コマンド †
コマンド説明 †
その他 †[root@localhost ~]# /usr/local/ssl/bin/openssl ecparam -list_curves secp112r1 : SECG/WTLS curve over a 112 bit prime field secp112r2 : SECG curve over a 112 bit prime field secp128r1 : SECG curve over a 128 bit prime field secp128r2 : SECG curve over a 128 bit prime field secp160k1 : SECG curve over a 160 bit prime field secp160r1 : SECG curve over a 160 bit prime field secp160r2 : SECG/WTLS curve over a 160 bit prime field secp192k1 : SECG curve over a 192 bit prime field secp224k1 : SECG curve over a 224 bit prime field secp224r1 : NIST/SECG curve over a 224 bit prime field secp256k1 : SECG curve over a 256 bit prime field secp384r1 : NIST/SECG curve over a 384 bit prime field secp521r1 : NIST/SECG curve over a 521 bit prime field prime192v1: NIST/X9.62/SECG curve over a 192 bit prime field prime192v2: X9.62 curve over a 192 bit prime field prime192v3: X9.62 curve over a 192 bit prime field prime239v1: X9.62 curve over a 239 bit prime field prime239v2: X9.62 curve over a 239 bit prime field prime239v3: X9.62 curve over a 239 bit prime field prime256v1: X9.62/SECG curve over a 256 bit prime field sect113r1 : SECG curve over a 113 bit binary field sect113r2 : SECG curve over a 113 bit binary field sect131r1 : SECG/WTLS curve over a 131 bit binary field sect131r2 : SECG curve over a 131 bit binary field sect163k1 : NIST/SECG/WTLS curve over a 163 bit binary field sect163r1 : SECG curve over a 163 bit binary field sect163r2 : NIST/SECG curve over a 163 bit binary field sect193r1 : SECG curve over a 193 bit binary field sect193r2 : SECG curve over a 193 bit binary field sect233k1 : NIST/SECG/WTLS curve over a 233 bit binary field sect233r1 : NIST/SECG/WTLS curve over a 233 bit binary field sect239k1 : SECG curve over a 239 bit binary field sect283k1 : NIST/SECG curve over a 283 bit binary field sect283r1 : NIST/SECG curve over a 283 bit binary field sect409k1 : NIST/SECG curve over a 409 bit binary field sect409r1 : NIST/SECG curve over a 409 bit binary field sect571k1 : NIST/SECG curve over a 571 bit binary field sect571r1 : NIST/SECG curve over a 571 bit binary field c2pnb163v1: X9.62 curve over a 163 bit binary field c2pnb163v2: X9.62 curve over a 163 bit binary field c2pnb163v3: X9.62 curve over a 163 bit binary field c2pnb176v1: X9.62 curve over a 176 bit binary field c2tnb191v1: X9.62 curve over a 191 bit binary field c2tnb191v2: X9.62 curve over a 191 bit binary field c2tnb191v3: X9.62 curve over a 191 bit binary field c2pnb208w1: X9.62 curve over a 208 bit binary field c2tnb239v1: X9.62 curve over a 239 bit binary field c2tnb239v2: X9.62 curve over a 239 bit binary field c2tnb239v3: X9.62 curve over a 239 bit binary field c2pnb272w1: X9.62 curve over a 272 bit binary field c2pnb304w1: X9.62 curve over a 304 bit binary field c2tnb359v1: X9.62 curve over a 359 bit binary field c2pnb368w1: X9.62 curve over a 368 bit binary field c2tnb431r1: X9.62 curve over a 431 bit binary field wap-wsg-idm-ecid-wtls1: WTLS curve over a 113 bit binary field wap-wsg-idm-ecid-wtls3: NIST/SECG/WTLS curve over a 163 bit binary field wap-wsg-idm-ecid-wtls4: SECG curve over a 113 bit binary field wap-wsg-idm-ecid-wtls5: X9.62 curve over a 163 bit binary field wap-wsg-idm-ecid-wtls6: SECG/WTLS curve over a 112 bit prime field wap-wsg-idm-ecid-wtls7: SECG/WTLS curve over a 160 bit prime field wap-wsg-idm-ecid-wtls8: WTLS curve over a 112 bit prime field wap-wsg-idm-ecid-wtls9: WTLS curve over a 160 bit prime field wap-wsg-idm-ecid-wtls10: NIST/SECG/WTLS curve over a 233 bit binary field wap-wsg-idm-ecid-wtls11: NIST/SECG/WTLS curve over a 233 bit binary field wap-wsg-idm-ecid-wtls12: WTLS curvs over a 224 bit prime field Oakley-EC2N-3: IPSec/IKE/Oakley curve #3 over a 155 bit binary field. Not suitable for ECDSA. Questionable extension field! Oakley-EC2N-4: IPSec/IKE/Oakley curve #4 over a 185 bit binary field. Not suitable for ECDSA. Questionable extension field! [root@localhost ~]# apache2.2*は楕円曲線の証明書に対応しておらず2.3から対応予定とのこと(未リリース) yum/wgetのプロキシ設定 †yum/wget使用時にプロキシが必要な場合に設定 yum †/etc/yum.confに以下を記載 wget †/.wgetrcに以下を記載 Teratermでのssh接続自動化 †複数のサーバーに対してsshするとき、各サーバーのIP、ユーザー名、パスワードの入力が億劫なため、 準備するマクロ †以下を適当な名前付けて*.ttlという名前で保存する ;;;;192.168.1.1 //コメントで接続先IPを記載しておくといいかも ;各種値設定 ;接続先ホスト Host2 = '192.168.1.1' ;ログインするユーザー User1 = 'user' ;ユーザーパスワードとルートパスワードのファイル指定。初回接続時に作成される。2回目からは自動。 getpassword 'C:\uerpass.dat' 'usrpass' inputstr getpassword 'C:\pass.dat' 'rootpass' inputstr2 ;各種定義 Prompt1 = '$' PromptPW = 'Password:' Ini = 'TERATERM_org.INI' Df = 'df' ;いろんなおまじない Cmd = '' strconcat Cmd Host2 strconcat Cmd ' /ssh /1 /auth=password' strconcat Cmd ' /user=' strconcat Cmd User1 strconcat Cmd ' /passwd=' strconcat Cmd inputstr strconcat Cmd ' /f=' strconcat Cmd Ini ;接続 connect Cmd ;対話的処理スタート(dfコマンド発行) wait Prompt1 sendln 'df -h' wait '$' sendln 'su -' wait ':' sendln inputstr2 バージョン違いのエラーが出たら strconcat Cmd ' /ssh /1 /auth=password' の1を strconcat Cmd ' /ssh /2 /auth=password' などに変更し、バージョンを合わせる John The Ripper でのpdf解析方法 †pdfに書けたパスワードを解くときに使う。開いた瞬間にパスワードを求められるファイルに対して有効だが、パスワードの文字数によって、解析時間がかなり掛かる。 準備 †簡単に行う為に、VirtualBoxを準備して、そこにKaliLinuxをインストールする。 手順 †
Ubuntuでのdockerでpull時のプロキシ設定 †調べてよくでてくるプロキシ設定では通らなかった時の設定方法。 一般的な方法 †
NGだった 自分の環境での方法 †
リアルタイムでネットワーク監視 †現状の通信状態を確認したい時に使用 yum -y install iftop iftop で行ける。どれくらい速度が出ているか知りたい時に便利。 lessコマンド行表示と行番号ジャンプ †lessコマンドにて、開く時に -Nを指定すると、行番号が表示される。 各OS(ディストリビューションごと)のアプリ管理コマンド一覧表 †
※参考サイト:https://freebsd.seirios.org/doku.php?id=ports:pkg_yum_apt imapのMaildirの日本語文字化けをターミナル上で確認する †日本語フォルダ名を作成して、imapサーバを使っている場合、ターミナル上からはUTF-7-IMAPで変換された状態で表示される。 ls -asl | inkf --ic=UTF-7-IMAP -w |