備忘録

備忘録

Linux

ネットワーク接続のコネクションを表示する方法

Ⅰ. はじめに タイトルの通り「ネットワーク接続のコネクションを表示する方法」です。 Ⅱ. やり方 一覧表示 netstat -nat ソートして表示 netstat -nat | awk {'print $5'} | cut -d ":" -f1 | sort | uniq -c | sort -n 参考 https://ja.wikipedia.org/wiki/…

TermuxにSSH接続する方法

Ⅰ. はじめに Ⅱ. やり方(パスワード認証) 1. リポジトリを変更する 2. 以下のコマンドを実行する 3. SSHサーバの起動 接続結果 Ⅱ. やり方(公開鍵認証) 1. リポジトリを変更する 2. ストレージ権限を有効にする 3. 以下のコマンドを実行する 4. 秘密鍵を取…

.soファイルのシンボルテーブルを出力する方法

Ⅰ. はじめに タイトルの通り「.soファイルのシンボルテーブルを出力する方法」です。 Ⅱ. やり方 以下のコマンドを実行する nm -D libhoge.so 実行結果 U abort U accept U access U acos (以下省略) 参考 https://stackoverflow.com/a/4514781

MariaDB(MySQL)を自動的にGoogleDriveにバックアップする方法

Ⅰ. はじめに タイトルの通り「MariaDB(MySQL)を自動的にGoogleDriveにバックアップする方法」です。 Ⅱ. やり方 1. git cloneする $ git clone https://github.com/kagasu/DBAutoBackup 2. gdriveを初期化する // gdrive を以下のリポジトリから自分でビルド…

Linuxでディスク読書速度を測定(ベンチマーク)する方法

Ⅰ. はじめに Ⅱ. やり方(簡易版) 書き込み速度 読み込み速度 Ⅲ. やり方(fioを使用する方法) インストール 書き込み速度(random read) 読み込み速度(random write) その他 Ⅰ. はじめに タイトルの通り「Linuxでディスク読書速度を測定する方法」です。 Ⅱ.…

Linuxでディスク容量を確認する(ncduコマンド)

Ⅰ. はじめに ディスク容量や使用率等だけであれば「dfコマンド」、どのディレクトリがどれだけというのは「duコマンド」で見ることが出来ます。 しかし「duコマンド」は毎回ディレクトリを指定する必要がある為面倒です。 そこで ncdu を使います。 Ⅱ. ncdu…

Python3でMariaDB(MySQL)に接続する方法

Ⅰ. はじめに タイトルの通り「Python3でMySQLに接続する方法」です。 Ⅱ. やり方 1. 必要なものをインストールする RedHat系の場合 yum install python3-devel mysql-devel pkgconfigDebian系 の場合 apt-get install python3-dev default-libmysqlclient-dev…

Linuxで他プロセスのメモリを読み書きする方法

Ⅰ. はじめに タイトルの通り「Linuxで他プロセスのメモリを読み書きする方法」です。 Windowsの場合はOpenProcessしてプロセスのハンドルを取得した後にReadProcessMemory, WriteProcessMemoryすればOKです。 Ⅱ. サンプルプログラム メモリを読み書き「され…

mitmproxyとarpspoofを利用してスマートフォン(Android/iOS)のHTTP(s)通信を見る方法

Ⅰ. はじめに Ⅱ. 環境 Ⅲ. やり方 1. IPフォワードを有効にする 2. ルーティングを変更する 3. ARPスプーフィングを行う 4. mitmproxyを透過型として起動する 5. ルート証明書(mitmproxy-ca-cert.pem)をスマートフォンにインストールする 6. ログがmitmproxy…

WindowsでHyper-V用Kali Linuxをインストールする方法

Ⅰ. はじめに 今回はKali Linux公式HPで公開されているHyper-V用のイメージを利用します。 予めHyper-Vを有効にする必要があります。 http://kagasu.hatenablog.com/entry/2016/09/24/192659 Ⅱ. やり方 1. Hyper-V用Kali Linuxのイメージをダウンロードする h…

bashで文字列を数値に変換して数値計算する方法

Ⅰ. はじめに bashの変数は全てを文字列として扱う為、そのままでは数値計算ができません。 数値計算を行う方法として以下の3通りあります。 # 概要 1 $(())を使う方法 2 exprを使う方法 3 bcを使う方法 Ⅱ. $(())を使う方法 $ echo $((10+10)) 20 Ⅲ. exprを使…

CentOSでSOCKSサーバ(Dante)を構築する

Ⅰ. はじめに Inferno Nettverk A/S によって開発されているSOCKS4,5サーバ Dante の構築方法です。UbuntuでSOCKSサーバ(Dante)を構築する方法はこちら https://kagasu.hatenablog.com/entry/2020/09/28/075504 Ⅱ. 環境 $ cat /etc/redhat-release CentOS Lin…

一時的なメールサービスのAPIサーバを作る

Ⅰ. はじめに 一時的なメールアドレスを作成するサービスはいくつか存在します。 一時的なメールアドレスを作成する - 備忘録しかし、どのサービスもAPI経由でのアクセスが出来ないものばかりです。 送信されるリクエストを解析してサービスを利用する事も可…

SSH接続でrootログインを許可する

vim /etc/ssh/sshd_config Port 22 ListenAddress 0.0.0.0 PermitRootLogin yes PasswordAuthentication yessystemctl restart sshd @IT:ssh接続でrootによるログインを許可するには

Glancesをインストールする

Glancesとは システムモニタリングツールです。 クロスプラットフォームで動作します。 Unix系に限らずWindowsでも動作します。 Pythonで書かれています。 公式WEBサイト https://nicolargo.github.io/glances/ インストール方法 1. インストールする $ curl…

dd でバイナリを書き換える

前提条件 ・UNIX系シェルで動作します。 ・Windowsの場合はBash on Ubuntu on Windowsがインストールされていること。 方法 1. 以下のコマンドを実行すると、 「0x465C0」に「0x01, 0x02, 0x03, 0x04」が書き込まれます。 printf '\x01\x02\x03\x04' | dd of…

Linux screenの使い方

名前をつけてscreenを作成 screen -S hoge 切り替え screen -r hoge セッション一覧表示 screen -ls 名前をつけてscreenを作成(デタッチした状態で開始) screen -dmS hoge 外部から終了する screen -S hoge -X quit 外部から任意のコマンドを実行する # 名…

CentOS 7.2にphalconをインストールする

cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core)yum -y install php php-devel php-mysql gcc libtool git git clone --depth=1 git://github.com/phalcon/cphalcon.git cd cphalcon/build ./install vim /etc/php.d/phalcon.ini extension=p…

CentOS7 firewall-cmd

以下の設定は全て恒久的な物になる。 一時的な設定を行いたい場合は--permanentを消す。 ※一時的 = OS再起動までSquidデフォルトポート(Port 3128) firewall-cmd --zone=public --add-port=3128/tcp --permanent # 設定の即時反映 firewall-cmd --reload

nginxとphp-fpmを使ってfastcgi_cacheする(PHP7.3)

環境 [root@ ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core)手順 yum -y install epel-release rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpmyum -y install --enablerepo=remi,remi-php73 php php-devel php-…

CentOS 7.2 MariaDB 外部接続を有効にする

環境 $ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) $ mysql --version mysql Ver 15.1 Distrib 10.1.10-MariaDB, for Linux (x86_64) using readline 5.1※ MariaDBは以下の記事の通り導入しました。 http://d.hatena.ne.jp/kagasu/20160…

LinuxにMariaDBをインストールする方法

Ⅰ. はじめに Ⅱ. やり方 1. 以下コマンドを実行する 2. MariaDB をインストールする 3. MariaDBを起動する 4. 初期設定を行う 5. その他パラメータの設定 5. MariaDBを再起動する 参考 その他設定 Ⅰ. はじめに タイトルの通り「LinuxにMariaDBをインストール…

IPアドレスからMACアドレスを調べる

■Linuxの場合 標準でarpingが入っています。 以下のようにすればOKです。 $ arping 192.168.0.1 ARPING 192.168.0.1 from 192.168.0.2 eth0 Unicast reply from 192.168.0.1 [AA:BB:CC:DD:EE:FF] 0.955ms ... ■Windowsの場合 標準でarpingコマンドがありませ…

正規表現でメールを転送(または、ローカルに保存)する

2017/04/05追記 コレもオススメ https://github.com/mozilla/restmail.net Ⅰ. はじめに ・hoge000@foo.com〜hoge999@foo.com宛にくるメールを全てadmin@bar.comに転送する。(またはファイルに保存) ・使い捨てメールサービスのMailinatorやMaildropのよう…

CentOS 6.x(64bit)にmonoをインストールする

CentOS 7.xはこっち(6.xでも使えるかどうかは検証してないので不明) http://d.hatena.ne.jp/kagasu/20160208/1454939712※2015/12/03 追記 リポジトリが404なので以下の方法でmonoはインストールできなくなりました。 cd /etc/yum.repos.d/ wget http://dow…

linux gccで動的リンクするときのリンクオプション

.soは/usr/local/libに突っ込んでおくと-L指定しなくてもいい $ ls -l main.c libhoge.so $ gcc -L./ -lhoge -o main main.c

シェルスクリプト実行時にログを吐かせる

$ sh -x hoge.sh デーモンでもOK $ sh -x /etc/init.d/mysql start

mysqldを監視し、自動起動するシェルスクリプト

#!/bin/bash mysqld=`ps ax | grep '^.* /usr/sbin/mysqld -k start$'` if [ -z "${mysqld}" ]; then sudo service mysql start fi