Category Archives: Linux

「Linux管理」Iptablesファイアウォールにルールを設定する方法まとめ

1.ICMPプロトコルパケットを拒否
iptables -I INPUT -p icmp -j REJECT

2.ICMPプロトコル以外のパケットを許可
iptables -A FORWARD -p ! icmp -j ACCEPT

3.192.168.1.10からのデータ転送を拒否、192.168.0.0/24ネットワークデータを転送
iptables -A FORWARD -s 192.168.1.11 -j REJECT
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT

4.外部eth1のアドレスをプライベートネットワークに転送
iptables -A INPUT -i eth1 -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

5.「192.168.1.0/24」を拒否して、4時間後許可
[root@server ~]# iptables -I INPUT -s 10.20.30.0/24 -j DROP
[root@server ~]# iptables -I FORWARD -s 10.20.30.0/24 -j DROP
[root@server ~]# at now +4 hours
at> iptables -D INPUT 1
at> iptables -D FORWARD 1
説明:crondでタスクを実行
[1]+ Stopped at now +4 hours

6.「202.13.10.0/16」からのみSSHリモートログインを許可
iptables -A INPUT -p tcp –dport 22 -s 202.13.10.0/16 -j ACCEPT
iptables -A INPUT -p tcp –dport 22 -j DROP

7.TCPポート20~1024を許可
iptables -A INPUT -p tcp –dport 20:1024 -j ACCEPT
iptables -A OUTPUT -p tcp –sport 20:1024 -j ACCEPT

8.「192.168.0.0/24」のDNS解析パケットを転送
iptables -A FORWARD -s 192.168.0.0/24 -p udp –dport 53 -j ACCEPT
iptables -A FORWARD -d 192.168.0.0/24 -p udp –sport 53 -j ACCEPT

9.他のHostからpingを禁止、ファイアウォールから他のhostにpingを許可
iptables -I INPUT -p icmp –icmp-type Echo-Request -j DROP
iptables -I INPUT -p icmp –icmp-type Echo-Reply -j ACCEPT
iptables -I INPUT -p icmp –icmp-type destination-Unreachable -j ACCEPT

10.MACアドレス「00:0C:29:29:55:3F」からのデータパケットを禁止
iptables -A FORWARD -m mac –mac-source 00:0c:29:29:55:3F -j DROP

11.外部に向けTCPポート20、21、25、110を許可、FTPポート1250-1280を開放
iptables -A INPUT -p tcp -m multiport –dport 20,21,25,110,1250:1280 -j ACCEPT

12.192.168.1.20-192.168.1.99のTCPデータを禁止
iptables -A FORWARD -p tcp -m iprange –src-range 192.168.1.20-192.168.1.99 -j DROP

13.通常のTCPに関係ないsynリクエストパケットを禁止
iptables -A FORWARD -m state –state NEW -p tcp ! –syn -j DROP

14.既存の接続応答パケットを許可、新たなデータパケットをfirewallへのアクセスを拒否
iptables -A INPUT -p tcp -m state –state NEW -j DROP
iptables -A INPUT -p tcp -m state –state ESTABLISHED,RELATED -j ACCEPT

15.web(80)、FTP(20、21、20450-20480)を開放
iptables -I INPUT -p tcp -m multiport –dport 20,21,80 -j ACCEPT
iptables -I INPUT -p tcp –dport 20450:20480 -j ACCEPT
iptables -I INPUT -p tcp -m state –state ESTABLISHED -j ACCEPT
iptables -P INPUT DROP

Uninxでgradle-2.2.1をインストール、コンパイルする方法

1.gradle-2.2.1のダウンロード
http://www.gradle.org/downloads

2.解凍

2.1 cd gradle-2.2.1 cd ..

2.2 ターミナル:sudo su pwd*****

2.3 mv gradle-2.2.1 /usr/local/bin/gradle-2.2.1

2.4 vim .bash_profile

2.5 コピー
GRADLE_HOME=/usr/local/bin/gradle-2.2.1;
export GRADLE_HOME
export PATH=$PATH:$GRADLE_HOME/bin

2.6 esc,:wq で終了

2.7 gradle -versionでバージョンを確認

コマンド:
gradle build

Linuxでシステム時間を確認、修正方法

1.システム時間の確認コマンド
#date

2.時間の修正
# date -s “20014-12-23 12:00:00”
clock -w

Linuxでmplayerをインストールする方法

インストール:
sudo apt-get install mplayer

mplayerが閉じる
pkill mplayer

Ubuntuでカーネルを操作する(コンパイル、削除)方法

1.マルチコンパイルCPU数CONCURRENCY_LEVEL
#! /bin/sh
export CONCURRENCY_LEVEL=9
fakeroot make-kpkg –initrd –append-to-version=-modem kernel_image
2.カーソルのインストール
sudo dpkg -i linux-image-3.12.5-modem+_3.12.5-modem+-10.00.Custom_amd64.deb

3.カーソルの削除
dpkg –list|grep linux-image

4.リストされたpackageを削除
sudo apt-get –purge remove linux-image-3.12.5-modem+
5..crashファイルを解凍
解凍
sudo apport-unpack /var/crash/linux-image-3.12.5-modem+.0.crash /home/cpuwolf

crash分析
crash VmCore ~/cpuwolf/build/linux-stable/vmlinux

fedoraで「Cannot run program android-4.4W/aap」の解決方法

1.エラーメッセージ
Cannot run program “/home/artshell/developer/android-studio/sdk/build-tools/android-4.4W/aapt”: error=2,

2.原因分析
64ビットのfedora linuxで32ビットの32-libsライブラリが必要

3.解決対策
for installation of compiled app another 32-bit lib required:
yum install ncurses-libs.i686

新問題:
android-4.4W/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

対策
yum install libz.so.1

参考URL:
https://ask.fedoraproject.org/en/question/9556/how-do-i-install-32bit-libraries-on-a-64-bit-fedora/

awkコマンドで文字と文字列の変換、文字列連結を操作する方法

1.文字列から数字に変換
root@startnews24 ~]$ awk ‘BEGIN{a=”100″;b=”10startnews24test10″;print (a+b+0);}’
110

2.数字から文字列に変換
[root@startnews24 ~]$ awk ‘BEGIN{a=100;b=100;c=(a””b);print c}’
100100

3.文字列の連結
[root@startnews24 ~]$ awk ‘BEGIN{a=”a”;b=”b”;c=(a””b);print c}’
ab
[root@startnews24 ~]$ awk ‘BEGIN{a=”a”;b=”b”;c=(a+b);print c}’
0

Linuxでawkとsedコマンドでファイルの単語を統計する方法

機能:
awk、sedとtrコマンドでファイルに単語startnews24の数を統計する

操作コマンド:
1.awk ‘BEGIN {num=0} {i=1;while(i<=NF) {if ($i==”startnews24″) num++; i++}} END{ print “num=”num}’ sed

2.awk -v RS=’\\<startnews24\\>’ ‘END {print –NR}’ file

3.sed ‘s/[^a-zA-Z]/\n/g’ file |sort |uniq -c |grep startnews24

4.tr -s “\t| ” “\n”

5.sed ‘s/\t/\n/g;s/ /\n/g’ file |sort |uniq -c |grep startnews24

CentOS環境に登録するyumリポジトリを変更する方法

操作コマンド:
1.cd /etc/yum.repos.d
2.mv CentOS-Base.repo CentOS-Base.repo.backup 元のリポジトリをバックアップ
3.wget http://mirrors.163.com/.help/CentOS6-Base-163.repo repoのダウンロード
4.mv CentOS6-Base-163.repo CentOS-Base.repo
5.yum clean all –キャッシュのクリア

Linuxシステム情報を表示するコマンド

シリア番号: dmidecode | grep -i ’serial number’
CPU:cat /proc/cpuinfo [dmesg | grep -i ‘cpu’][dmidecode -t processor]
メモリ:cat /proc/meminfo [free -m][vmstat]
カード:cat /proc/pci
グラフィックス/サウンド:lspci |grep -i ‘VGA’[dmesg | grep -i ‘VGA’]
NIC:dmesg | grep -i ‘eth’[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i ‘eth’]
PCI:lspci (相比cat /proc/pci更直观)
USB:cat /proc/bus/usb/devices
キーボードとマウス:cat /proc/bus/input/devices
システムハードディスク情報:fdisk & disk – l & df
IRQ:cat /proc/interrupts
システムアーキテクチャ:uname -a
32ビットカーネル:isalist –v [isainfo –v][isainfo –b]
フレッシュレート:/usr/sbin/ffbconfig –rev /?
システム構成:/usr/platform/sun4u/sbin/prtdiag –v
システムのパッチ:showrev –p
実行レベル:who –rH
現在のバージョン:nslookup –class=chaos –q=txt version.bind

dmesg | more ハードウェア
lspci usbとカード
lsnod ロードしたドライブ
lshw
psrinfo -v プロセッサの種類と速度
prtconf -v  OBPヴァージョン
iostat –E  (vendor, RPM, Capacity)
prtvtoc /dev/rdsk/c0t0d0s ジオメトリとディスクパーティション
df –F ufs –o i i-nodeの数
isalist –v