Excel関連

関数

pac

=LEN(D6)
=ISBLANK(C6)
=LEFT(D6,22)
=IF(EXACT(H6,"( shExpMatch ( host, """),"○","×")
=MID(D6,23,F6-30)
=IF(EXACT(J6,A6),"○","×")
=MID(D6,F6-7,8)
=IF(EXACT(L6,""" ) ) ||"),"○","×")

=IF(AND(I6="○",K6="○",M6="○"),"OK","NG")

 

IPアドレス計算ツール

f:id:nakka-yuzu:20170115202232p:plain

=LEN(B6)
=LEFT(B6,FIND("-",B6&"-",1)-1)
=SEARCH(".",E6&".",FIND(".",E6&".",9))
=MID(E6,F6+1,LEN(E6))
=MID(B6,FIND("-",B6&"-",1)+1,D6)
=SEARCH(".",H6&".",FIND(".",H6&".",9))
=MID(H6,I6+1,LEN(H6))

=IFERROR(VLOOKUP(N6,$R$6:$S$37,2,0),"")

=IF(AND(E6<>"",H6=""),1,IFERROR(J6-G6+1,""))

 

LEFT

RIGHT

MID

LEN

FIND

SEARCH

 

 

=IF(COUNTIF(D6,"( shExpMatch ( host, """*""" ) ) ||"),"○","×")

 

 

 

シェルスクリプト

Linuxの日本語環境について
echo $LANG

LANG=ja_JP.utf8
一時的→打つ
ユーザ→/home/ホームディレクトリ/.i18nに入れとく
みんな→/etc/sysconfig/.i18nに入れとく

sshクライアントのフォントによって文字化けすることも…
(Linux)コマンドを連結して行う「;」「&」「&&」「||」の違い : 3流プログラマのメモ書き


■メール

[root@dti-vps-srv740 ~]# cat pschk_mail.sh
#!/bin/bash

#監視するプロセス名を定義する
PROCESS_NAME="smbd"

#メールを送信するメールアドレスを指定する
MAILTO=root@localhost

#メール本文に使用するファイルを指定する
MAILFILE=/var/tmp/pschk_mail.txt

#監視するプロセスが何個起動しているかカウントする
count=`ps -ef | grep $PROCESS_NAME | grep -v grep | wc -l`

#監視するプロセスが0個の場合に、処理を分岐する
if [ $count = 0 ]; then

#0個場合は、サービスが停止している事をメールする
echo "$PROCESS_NAME"

#メールの本文を生成
echo "ホストネーム" > $MAILFILE
hostname >> $MAILFILE
echo "現在時刻" >> $MAILFILE
date "+%Y/%m/%d %H:%M:%S" >> $MAILFILE
echo "$PROCESS_NAME ダウン" >> $MAILFILE
echo "" >> $MAILFILE
echo "以下プロセス数です" >> $MAILFILE
echo "$count" >> $MAILFILE

#メールの件名を生成
MAIL_SUB="$PROCESS_NAME"

#メールを送信する
mail -s $MAIL_SUB $MAILTO < $MAILFILE

else
echo "$PROCESS_NAME OK"
fi




■ユーザ追加スクリプト

#!/bin/bash

echo
echo "useradd "$1" -m" "を実行します"
echo "問題がなければEnterを押してください"
read x
useradd $1 -m

echo
echo "nice grep "$1" /etc/passwd" "を実行します"
echo "問題がなければEnterを押してください"
read x
nice grep "$1" /etc/passwd

echo
echo "ls -l /home | grep" $1 "を実行します"
echo "問題がなければEnterを押してください"
read x
ls -l /home |grep $1


■if文

#!/bin/bash

if [ -z $1 ] || [ -z $2 ] ; then
echo "引数が足りません、コマンドを確認してください"
read wait

elif [ $1 = share ] ; then
echo "共有ユーザ$1の登録を開始します"
read wait
else
echo "所有者$1の登録を開始します"
read wait
fi

VPSの設定(iptables等)

以下参照

ファイアウォールiptablesを簡単解説~初心者でもよくわかる!VPSによるWebサーバー運用講座(4) - さくらのナレッジ

iptablesの設定方法 – さくらのサポート情報

iptables --append INPUT --proto tcp --dport 22 --jump ACCEPT

iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP みたいな

 iptables -(n)Lで確認

service iptables save ←大事

service iptables restart ←これで完了

 

Linuxコマンド集 - 【iptables】パケットフィルタリングを設定する:ITpro

iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
①データを持たないパケットの接続を破棄する

②SYNflood攻撃と思われる接続を破棄する
③ステルススキャンと思われる接続を破棄する

 

-m multiport --dportsでポートをまとめて(,や:で)書ける

 

 

TCP wrapperについて

/etc/allow、/etc/deny プロセス名:ホスト名(IP) ALL:ALL

tcpdchkコマンドで書式のチェックができる…はず