Category ""を表示しています。
2017.4.9 日
最近中間証明書を使うというのがもう主流というか当たり前になってきていて非常に面倒くさい。 グローバルサインのSSLチェッカーを使うと「中間証明書がない」と叱られます。中間証明書は設定済みなんですが、4階層以上の証明ツリーを持つ場合とnginx等の中間証明書を設定できない場合、こういったエラーが出るようです。具体的にいうとこれらのエラーが出るのは殆どスマホのアンドロイド端末ですね。 https://ssltools.websecurity.symantec.com/checker/views/certCheck.jsp 4階層以上の場合はこんな風になっているらしい。 ルート証明書(ブラウザに標準で格納されています) ┗ クロスルート設定用証明書(共通のクロスルート設定用証明書をダウンロードし、...
2017.4.9 日
rootのパスワード Ubuntuではデフォルトでrootのパスワードが設定されていません。インストール時に設定できるユーザーがsudo suでroot権限を得てコマンドを打つしかないのですが、rootにパスワードを設定すると普通にその他のOSと同様にrootでログイン可能です。Ubuntuでは基本的にrootのパスワード設定は推奨されていません。パスワードを設定しなければroot権限を乗っ取られることが殆どないと判断しているからです。ですのでパスワード設定には十分注意してください。 まず設定ユーザーでログインする。 sudo su [Enter]を打つとパスワードを要求されます。この時、rootのパスワードは当然まだないのでこのユーザーのパスワードを打ちます。(不思議です。) root権限...
2017.4.5 水
サーバーのCPU情報は、/proc/cpuinfoで確認できます。だいたいの目安で数値自体はかなりいい加減らしいです。その上、何を書いているのかよくわかりません。見るところ3箇所程度。 #cat /proc/cpuinfoとか#vi /proc/cpuinfoとかで見ます。 項目 内容 processor 0 vendor_id GenuineIntel cpu family 6 model 44 model name Intel(R) Xeon(R) CPU X5650 @ 2.67GHz stepping 2 cpu MHz 2666.848 cache size 12288 KB physical id 1 siblings 12 core id 0 cpu cores 6 apici...
2017.4.5 水
鍵のペアを作成する際にコメントに名前とかEmailとか入れておくとちょっと手間ですが誰がログインしたのかわかるようになります。 sshのsecureログのカスタマイズ vi /etc/ssh/sshd_config #SyslogFacility AUTH ↓ SyslogFacility AUTHPRIV #LogLevel INFO ↓ LogLevel VERBOSE ログ確認 tail -f /var/log/secure こんな感じでフィンフガープリントがとれます。 Apr 5 12:00:45 hostname sshd[4819]: Received disconnect from 123.456.789.000: 11: disconnected by user Apr 5 ...
2017.4.5 水
「HTTP/2」がついに登場! 開発者が知っておきたい通信の仕組み・新機能・導入方法 概要としてはこんな感じで、この先数年後にはデフォルトスタンダードになってるんじゃないかと思います。 環境の下準備 CentOS7のインストール直後にやっておくとよいかと。yum upgradeでだいたい全部入ってしまうようで環境によっては蛇足かもしれません。 yum -y upgrade yum -y update yum groupinstall "Base" yum groupinstall "Development tools" yum groupinstall "Japanese Support" yum install bind-utils yum install nmap FirewallとかS...
2017.3.31 金
/etc/profileにショートカットを追加しておく llでリスト表示させるようにしておきます。 vi /etc/profile .... # some more ls aliases alias ll='ls -al' alias la='ls -A' alias l='ls -CF' 追記が気持ち悪い人は、/etc/profile.dでもいい。 cd /etc/profile.d touch bash_alias.sh vi # some more ls aliases alias ll='ls -al' alias la='ls -A' alias l='ls -CF' :wq
2017.3.26 日
普通のクラウドサーバーとかVPSとかだったら最初からSSHが入っているのでほぼSSHの初期設定は必要なのですが、ここではセキュリティー上、パスワード認証を不可にして秘密鍵の接続のみということにします。個人的にはrootをよくつかうのでrootの接続は秘密鍵+IP制限でよかろうと思います。鍵の設定とかはこちら参考にしてください。 SSHの設定 パスワードのログイン禁止 パスワードのログインを禁止する cd /etc/ssh/ cp -p sshd_config sshd_config.org vi sshd_config PasswordAuthentication yes ↓ PasswordAuthentication no systemctl restart sshd これでパスワードで...
2017.3.26 日
Linuxは進化しすぎていろいろな設定方法がありすぎて気持ちが悪いのでここではシンプルな方法のみ。 コマンドプロンプトのホスト名を変更 hostnameファイルで変更 コマンドプロンプトのホスト名を変更 vi /etc/sysconfig/network .... HOSTNAME=centos7.example.com .... たぶん再起動しないとダメ。 hostnameファイルで変更 vi /etc/hostname .... 127.0.0.1 centos7.example.com .... .bashrcで変更 サーバー全体に反映させるんだったら、/etc/profileを変更した方がいいかもです。個別に設定するのだったら.bashrcか.bash_profileに設定するのがよ...
2017.3.26 日
CentOS7 インストール後の初期設定 CentOS7の便利な設定をしておく CentOS7 ホスト名の設定(変更)方法 SSHの設定 無料SSLを取得する Let’s Encrypt
2017.3.20 月
Let’s Encrypt 総合ポータル 普通のSSLと何が違うのかというのはいろんなサイトさんで説明しているので詳しいことは割愛。とはいえ、この無料SSLの最大の特徴は3ヶ月で自動的に無効になり更新が必要というところです。認証はDVのみ。無料にて完全自動化なので、ヘルプデスクとかお問い合わせとかが全くないので自力でやらないとだめ。以上が簡単ではありますが、この無料SSLの特徴になります。 取得ツールのインストール SSLの発行はGithubからツールをインストールして行います。 cd /usr/local/ git clone https://github.com/certbot/certbot certbotが落ちてくればOKです。 続いて、certbotが依存するパッケージ...
2017.1.11 水
X-Forwarded-ForとかX-Cluster-Client-Ip LB(ロードバランサー)がかませてあるネットワーク設定ではアクセス元のグローバルIPが変換されてしまってログなんかに記述されるIPアドレスがLBのローカルIPアドレスになってしまうことがあります。 そういう場合にはX-Forwarded-ForとかX-Cluster-Client-Ipなどの特殊な変数でアクセス元のもともとのIPアドレスを取得できることがあります。 ロードバランサー越しにIPアドレスを取る(X-Cluster-Client-Ipの場合) ロードバランサーの性能というか設定によりけりだと思いますが、X-Cluster-Client-IpでIP取れました。設定するIPアドレスのドットをエスケープするところが...
2016.11.7 月
php.iniで設定する PHPのアップロードサイズは、php.iniの設定を見るとデフォルトでは、 ; Maximum allowed size for uploaded files. ; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize upload_max_filesize = 2M となっていて2Mなんですね。php.iniの877行目辺りです。 普通に画像とかファイルとかをあげるにはまあまあなサイズですが、用途によっては全然足りないです。なので、ここでアップロードサイズを大きくしてあげます。 Ubunutuとかだと、/etc/php5/apache2/php.iniで、CentOSとかだと/etc/p...
2016.11.7 月
php.iniが訳あって直接書き込むことができない場合は、.htaccessに書く方法があります。しかし大元の本物php.ini内で、 php_value = On php_flag = On という風に設定する必要があります。これができないと.htaccessに設定しても無効になってしまいます。phpinfo()でも確認できるので、大元のphp.iniの設定を確認してみてください。レンタルサーバーによってはこの機能が使えるようになっているところもあります。ロリポだと大元のphp.iniもある程度GUIで設定可能です。 しかしこの設定で可能な範囲はlocal valueだけでMaster valueは大元のphp.iniの設定が必須になります。アプリの開発によってはMaster valueの...
2016.11.1 火
Web Site Exploreは日本語だし多機能だしとてもよいですが、軽くクロールしたい場合はseo-spiderがなかなかいいです。 https://www.screamingfrog.co.uk/seo-spider/ URLとタイトルなんかを取得することができます。とはいえFree版は500ページしかクロールしないのですが小規模なサイトの場合には大変重宝します。 エクスポートからCSVを作成することもできます。
2016.10.31 月
Linux CPU情報確認 /proc/cpuinfo サーバーのCPU情報は、/proc/cpuinfoで確認できます。だいたいの目安で数値自体はかなりいい加減らしいです。その上、何を書いているのかよくわかりません。見るところ3箇所程度。 cat /proc/cpuinfo とか vi /proc/cpuinfo とかで見ます。 processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 44 model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz stepping : 2 cpu MHz : 2666.848 cache size : 12288 KB physical id : ...
2016.10.27 木
ちゃんと設定しているつもりなのに繋がらないという時のエラーメッセージ集です。 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! クライアント側の/Users/ユーザ名/.ssh/known_hostsに古い接続情報が残っている場合にこのエラーが出ます。「リモードホストのアイデンティファイする方法が変わりました」ということで、known_hostsの情報とホスト側の新しい情報を照らし合わせると合ってなかったということです。known_hosts内の接続しているホスト名行を削除するか、中身をすべて削除すると新しいフィンガープリントを発行して接続できるよ...
2016.10.26 水
OWASP Zed Attack Proxy (ZAP)はIPAが推奨してくれているセキュリティー診断ツールです。概要的なものはいろんなサイトに載っているのでそこを読んでもらうとして、ざっくりいうとWEBサイトの脆弱性診断をしてくれる無料の信頼できるソフトです。こちらでも使い方くわしく解説してくれております。 JAVAのダウンロードとインストール https://www.java.com/ja/download/ JavaSetup8u111.exeがおちてくるのでこれをインストール。(2016-10-26現在) OWASP ZAPのダウンロードとインストール https://code.google.com/archive/p/zaproxy/downloads ZAP_2.5.0_Wind...
2016.10.24 月
HDDを初期化します。中身が全部消えるのでご注意ください。今回はDebian6でやっています。Ubuntuのやり方はこちら参照ください。 まずはマウントされているHDDのパーテーションを確認 fdisk -l Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes 255 heads, 63 sectors/track, 243201 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes ...
2016.10.24 月
MovableTyleのサーバー移行方法はいろいろあるのだけど、往年のWeb屋さんはあまりCMSの面倒くささについてはさほど理解が深くないのでHTMLをスポンとFTPであげてしまえばハイお終いというぐらいなものだと思っています。にも関わらずCMSを使ったWEBサイトの移行はそうは簡単ではないです。以下MobaleTypeのサーバー移行の要件をまとめてました。 MTで生成したHTML,CSS,JSなどのファイルそのものの移動。 MT(CMS)ファイルの移動。(mt-config.cgiの設定変更) 移動元のMTからバックアップ、移動先のMTへ復元(記事とテンプレートの移動) SSL、ソシャルボタンなどの設定 1. MTで生成したHTML,CSS,JSなどのファイルそのものの移動 殆どの場合WE...
2016.10.24 月
思わず溜めすぎてしまったログがgzで80MB近い容量になっていて展開したら2GBあった。のだけど、このファイルをいろいろ加工しないといけなくて、いろいろ触る度にコマンドラインでさえ5分ぐらい返ってこないということになってしまったので、その時の作業のメモです。 # split -l 10000 sample.log とやったら、676ファイルに分割されてさらに出力できないというエラーが出た。いったい何行あるんだということで、仕方なく1GBで分割してみた。 # split -b 1000m sample.log -rw-r--r-- 1 root root 1048576000 Oct 31 18:59 xaa -rw-r--r-- 1 root root 1048576000 Oct 31 1...
2016.10.22 土
spfフラグの基本 Gmailをはじめ最近spfフラグなるものを設定しないとときとして迷惑メール扱いされたり、最悪の場合メールがどばないということになったりします。なのでこれからはメールサーバー設定の際は必須になる予感です。2015-05-25現在ではまだ「迷惑メール対策」ということになっているような気配です。 example.comでspfフラグを設定するにはTXTレコードに以下のように設定します。 example.jp. IN TXT "v=spf1 +ip4:12.34.56.678 -all" ネットワークアドレスで設定することも可能です。 example.jp. IN TXT "v=spf1 +ip4:192.168.100.0/24 -all" 冗長化などでメールサーバーが2つあ...
2016.10.10 月
Coccinellidaのダウンロード 以前にCoccinellidaを使ってみたら原因不明でつながらなかったのでしばらく使っていなかったのですが、久々に使うと普通に使えました。2019-04-18時点でCurrent Version – 0.7です。できるだけ新しいものを使った方がよいでしょう。至るところにダウンロードサイトがあるので、特に問題ないかと思います。 https://sourceforge.net/projects/coccinellida/files/ おそらく公式ページと思われるCoccinellidaのホームページ ダウンロードするとCoccinellida.appというアプリケーションファイルが出てくるので、とりあえずはアプリケーションフォルダに移動しておき...
2016.10.4 火
cronが設定されているかどうか確認する $ crontab -l で現在のcron設定が表示されます。cronはユーザー単位で設定されるので、スーパーユーザーの場合はrootがcronを設定することになりますので注意。設定が初めての場合、または何もない場合は、「no crontab for <ユーザー名>」と言われます。 $ crontab -l SHELL=/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/var/lib/gems/1.8/bin RAILS_ENV=production # m h dom mon dow command */30 * * * * perl /h...
2016.9.21 水
SSHはリモートホストをコントロールする通信方法ですが、言ってみれば相手先のサーバーにログインしてしまうと相手先のサーバー内の環境において作業をするということで…つまりはlocal環境で作業していることになります。remotehostにログインすると自分自身はlocalhostになる。ややこしいですが、そういうことです。 しかし、こちら側(localhost)からあちら側(remotehost)をリモート側としてコントロールすることはできるか?というとできます。 例えばこんな例を考えてみてください。 MySQLをDumpする。 tarでアーカイブする。 SCPで転送する。 tarを展開する。 restoreする。 この一連の動作をcronで行おうとするとき、1〜3はlocalhost側で作業...
2016.9.20 火
SSLのインストールが完了したら、 シマンテック・インストールチェッカー ジオトラスト・インストールチェッカー Thawte・インストールチェッカー COMODO・インストールチェッカー
2016.9.20 火
file_`date "+%Y%m%d_%H%M%S"`.txt file_20140409_111255.txtというファイルができます。私はたいていcronでバックアップファイルを作るときなんかに利用してます。 mysqldump -u user -h localhost -pPASSWORD sample_db sample_tbl > /tmp/dumpfile_`date "+%Y%m%d_%H%M%S"`.sql とかいうのもいいです。 dateコマンドにはフォーマットがいろいろあるでいろいろ使えます。 文字列 指定した文字列を表示する %H 時 (00〜23) %I 時 (01〜12) %k 時 ( 0〜23) %l 時 ( 1〜12) %M 分 (00〜59) %p A...
2016.9.14 水
yumのアップデート 有無を言わさずyumのアップデートをしておきましょう。グローバルIPを削除するとできなくなってしまうので今のうちに。 yum -y update ホストの設定 とはいえ初期段階では儀式的なものになりますが、設定しておいた方がよいのです。HOSTは複数設定できるので必要なものはすべて設定しておくとよいです。 グローバルIPにはドメインなど。プライベートIPには実質的なホスト名などを設定します。 (vi /etc/hosts) 127.0.0.1 localhost 192.168.1.2 saba 120.340.560.xxx saba.omnioo.com プロンプトに表示されるユーザー名 ssh接続するとデフォルトのユーザー(たぶんプライベートIP)が表示されるので...
2016.9.14 水
LB経由でグローバルIPを取得してApacheのログを残す X-Cluster-Client-Ip IIJのLB+FWでは{X-Cluster-Client-Ip}というカスタム変数からグローバルIPを取得できます。この設定はどのLBにもデフォルトで設定されているようです。 Apacheのログフォーマットを修正する デフォルトのcombinedで設定されているログフォーマットをコメントアウト(または削除)して以下のフォーマットを入れてあげます。{X-Cluster-Client-Ip}で、LBを経由してグローバルIPアドレスを取得します。 LogFormat "%{X-Cluster-Client-Ip}i %A %h %l %u %t \"%r\" %>s %b \"%{Refere...
2016.9.8 木
http://qiita.com/megu_ma/items/bb902740ee7de9ddd102
2016.9.7 水
というこのタイトルはちょっと抽象度に欠けていて、本来は任意のプリケーションを任意の拡張子で実行するというものです。 index.aspxにアクセスするとこのファイルにかかれているphpが実行されるというものです。 .htaccessかhttpd.confみたいなファイルに以下を書きます。 AddHandler application/x-httpd-php .php .aspx 拡張子がhtmlの方が検索順位が有利になる的な話がそうとう昔にありましたが、そのときによくやっていた感じです。