プログラミングで飯を食え。腕をあげたきゃ備忘録!

PHP、JavaScript、HTML5、CSS3などWEB系言語を中心に基本テク、備忘録をまとめます。Android、Iphoneアプリ開発についても!

CentOS7でポートを開放する方法。

firewall-cmd --add-port=22/tcp --zone=public --permanent

こんな感じで開放できます。

その他は以下のような感じ。

# 許可されているサービスやポートの一覧を表示
firewall-cmd --list-all --zone=public
firewall-cmd --list-services --zone=public
firewall-cmd --list-ports --zone=public
 
# 許可するサービスの追加と削除
firewall-cmd --add-service=ssh --zone=public --permanent
firewall-cmd --remove-service=ssh --zone=public --permanent
 
# 許可するポートの追加と削除
firewall-cmd --add-port=22/tcp --zone=public --permanent
firewall-cmd --remove-port=22/tcp --zone=public --permanent
 
# 利用可能なサービス一覧
firewall-cmd --get-services
 
# firewalldのリロード
firewall-cmd --reload

CentOS7にAstriskのインストールから内線構築まで。


<Astriskのインストール>
 [Aasteriskのdependenciesをインストール]
 yum install -y make wget openssl-devel ncurses-devel newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel libuuid-devel
 
 
 [tarファイルをダウンロード]
  cd /usr/src/
  wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
  wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
  wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13.1.0.tar.gz
 
 [tarファイルを解凍(指定するtarファイル名は適宜)]
  tar zxvf dahdi-linux-complete*
  tar zxvf libpri*
  tar zxvf asterisk*
  
 [DAHDIをインストール]
  cd /usr/src/dahdi-linux-complete*

       rpm -ivh ftp://195.220.108.108/linux/centos/7.0.1406/os/x86_64/Packages/kernel-3.10.0-123.el7.x86_64.rpm

  make && make install && make config
  
 [libpriをインストール]
  cd /usr/src/libpri*
  make && make install
  
 [JSONライブラリのインストール]
  yum list | grep json
  ↑↑↑ これでパッケージを探して
  たぶん↓のようなものが出てくる
  json-glib.i686
  json-glib-devel.i686
  json-glib-devel.x86_64
  これをインストール。
  
  yum -y install json-glib.i686
  yum -y install json-glib-devel.i686
  yum -y install json-glib-devel.x86_64
  
 [janssonのインストール]
  http://www.digip.org/jansson/
  ↑↑↑ ここの「Releases」のところでtar.gzのダウンロードURLを調べて、
  
  cd /usr/src/
  wget http://www.digip.org/jansson/releases/jansson-2.7.tar.gz
  tar zxvf jansson-2.7.tar.gz
  cd jansson-2.7
  ./configure
  make
  make install
  
 [Asteriskのディレクトリへ移動]
  cd /usr/src/asterisk*
  
 [Asteriskをインストール]
  ./configure --libdir=/usr/lib64 && make menuselect && make && make install
  make config
  make samples
  
 [DAHDI起動]
  service dahdi start
  
 [Asterisk起動]
  service asterisk start
  
 [AsteriskCLI(CUIみたいなもの)に接続するには]
  asterisk -vcr
  
 [内線を作るための/etc/asterisk/sip.confの超基本設定]
  [general]
  context=default
  port=5060
  bindaddr=0.0.0.0
  srvlookup=yes
  disallow=all
  allow=ulaw
  allow=alaw
  allow=gsm
  localnet=192.168.100.0/255.255.255.0
  language=ja
  
  [2001]
  type=friend
  defaultuser=2001
  secret=20011043
  canreinvite=no
  host=dynamic
  
  [2002]
  type=friend
  defaultuser=2002
  secret=20021043
  canreinvite=no
  host=dynamic
  
  [2003]
  type=friend
  defaultuser=2003
  secret=20031043
  canreinvite=no
  host=dynamic
  
 [内線を作るための/etc/asterisk/extensions.confの超基本設定]
  [default]
  exten => _200X,1,Dial(SIP/${EXTEN},30,r)
  exten => _200X,2,Hangup()
  
 [iptables(ファイアーウォール)でポートを開く]
  cd /etc/sysconfig/
  vi iptables
  -------------------------------------------------------------------
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 5060 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 25 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
  -------------------------------------------------------------------
  このようにポートを解放して、iptables再起動。
  systemctl restart iptables.service
  systemctl enable iptables.service
  
  ※ ちなみに、iptablesの機能を全停止するには
    iptables -F


 [Asterisk再起動]

  service asterisk restart


 [Asteriskの状況を確認する]
  ● コンソールに入る
   asterisk -vcr
   
  ● peer(アカウント・クライアント)のレジスト状況を見る
   sip show peers
   
  ● peer(アカウント・クライアント)のレジスト状況をアカウントを指定して見る
   sip show peer 2001
   など。
   
  
 ※ 内線はX-Liteを使うなりSIP端末を使うなり、適宜設定してください。

VirtualboxとCentOS7でApach・PHP・PostgreSQL環境を作るまで

VirtualboxとCentOS7でApach・PHPPostgreSQL環境を作るまで

http://linux.just4fun.biz/%E4%BB%AE%E6%83%B3%E5%8C%96%E9%96%A2%E9%80%A3/CentOS7%E3%82%92VirtualBox%E3%81%AB%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F.html
↑↑↑ このあたりを参考にVirtualboxにCentOS7をインストールしてください。


httpを追加。
# firewall-cmd --state
# firewall-cmd --list-services
# firewall-cmd --add-service=http

yumで一気にLAMPP。
# yum -y install emacs wget php-mysql php php-gd php-mbstring mariadb mariadb-server httpd php-pgsql

ドキュメントルートをユーザディレクトリ直下のpublic_htmlに変更する。
# cd ユーザディレクトリのパス
# mkdir public_html
# chown ユーザ:ユーザ public_html
※ 必要に応じてchmodしてパーミッションを調整してください。

# vi /etc/httpd/conf/httpd.conf
※ ドキュメントルートを /home/ユーザ/public_html に変更してください。

SELinuxを無効化する。
# vi /etc/selinux/config
--------------------------------------
SELINUX=disabled
--------------------------------------

PostgreSQLをインストールする。
# rpm -iUvh http://yum.postgresql.org/9.3/redhat/rhel-7-x86_64/pgdg-centos93-9.3-1.noarch.rpm
# yum -y install postgresql93 postgresql93-server postgresql93-contrib postgresql93-libs --disablerepo=* --enablerepo=pgdg93
# systemctl enable postgresql-9.3
# /usr/pgsql-9.3/bin/postgresql93-setup initdb
# systemctl start postgresql-9.3


# su - postgres
# psql -U postgres
PostgreSQLに入れる。
  

Apach起動。
# systemctl start httpd.service
# systemctl enable httpd.service


CentOSのコンソールでifconfigとすればinetにIPが表示されるので、
ホストOSのブラウザからそのIPを入力すればドキュメントルートにアクセスできる。

ちなみにそのIPでSFTPもSSHも可能。

 

一度shutdownや再起動した際は、以下を流してからアクセス。

 

systemctl start postgresql-9.3
systemctl start httpd.service
systemctl enable httpd.service
setenforce 0
firewall-cmd --add-service=http

 

以上。

CentOS7にGoogle Chromeをインストールする方法!

GUIがインストールしてあることを前提にするとChromeを使いたい場合もある。

なので、コマンドで簡単にインストールしてしまいます。

# wget http://chrome.richardlloyd.org.uk/install_chrome.sh
# chmod u+x install_chrome.sh
# ./install_chrome.sh

これを順に実行するだけ。

パーミッションの仕組みについて!

今更ですが、結構ぼんやり覚えていたパーミッションについて備忘録しときます。

基本的にパーミッションは以下の3つのユーザの権限を示しています。

 

・オーナー

・グループ

・その他

 

rwx r-x r-x

この書き方に対応させるなら左から、

 

オーナー グループ その他

 

ですね。

 

で、rwxはそれぞれ

 

r・・・読み取り

w・・・書き込み

x・・・実行

 

の権限を表しており、それぞれに

 

r・・・4

w ・・・2

x・・・1

 

という数字が割り当てられているため、

 

rwx・・・7

rw-・・・6

r-x・・・5

のように実行権限がどのように与えられているかによってその和が変わりますから、

一意の数字で表すことができるわけです。

 

つまり、

パーミッションが755というのは、

rwx r-x r-x

のことで、754なら

rwx r-x r--

のことになるわけですね。