以阿里雲伺服器為例
一、掛載硬碟
1、磁碟分割
fdisk -l #查看裝置,一般可以看到裝置名稱為/dev/xvdb
fdisk /dev/xvdb #對磁碟進行分區
輸入n #建立新分區
輸入p #建立主要磁碟分割
輸入1 #建立第一個主要磁碟分割
輸入w #儲存並執行以上命令,建立分區
待上面的命令執行完成之後,使用fdisk -l查看,會看到類似
/dev/xvdb1的分區
說明分區成功。
2、磁碟格式化
mkfs.ext4 /dev/xvdb1 #對分區進行格式化
說明:ext4是CentOS6.x預設的分區格式,CentOS5.x請使用ext3
待格式化完成之後(根據分區大小,格式化需要的時間不同,請耐心等待),對分區進行掛載
3、掛載磁碟
例如:要把/dev/xvdb1掛載到/data目錄
mkdir -p /data #建立目錄
mount /dev/xvdb1 /data #掛載
df -h #查看掛載結果
vi /etc/fstab #設定開機自動掛載,在最後一行輸入以下代碼
/dev/xvdb1 /data ext4 defaults 0 0
:wq! #儲存退出
mount -a #使分區設定立即生效
二、建立SWAP分區
說明:預設阿里雲服務沒有swap分區,512M的雲端服務器安裝php 5.6的時候會提示記憶體不足,安裝失敗!
強烈建議,不論記憶體有多大,都增加swap分區。
在512M的阿里雲服務上增加1024M的swap空間
具體操作:
1、dd if=/dev/zero of=/tmp/swap bs=1M count=2048 #建立1024M的檔案塊
2、mkswap /tmp/swap #建立swap檔案
3、swapon /tmp/swap #啟用swap檔案
4、swapon -s #查看swap
5、修改/etc/fstab檔案,增加以下內容,讓系統引導時自動啟動
vi /etc/fstab #在最後添加下面代碼
/tmp/swap swap swap default 0 0
:wq! #儲存退出
系統營運 www.111cn.net 溫馨提醒:qihang01原創內容©著作權,轉載請註明出處及原文連結
三、系統核心最佳化
1、CentOS 5.x CentOS 6.x CentOS 7.x
vi /etc/security/limits.conf #在最後一行添加以下代碼
* soft nproc unlimited
* hard nproc unlimited
* soft nofile 655350
* hard nofile 655350
:wq! #儲存退出
2、CentOS 5.x CentOS 6.x CentOS 7.x
vi /etc/profile #在最後一行添加以下代碼
ulimit -SHn 655350
ulimit -SHu unlimited
ulimit -SHd unlimited
ulimit -SHm unlimited
ulimit -SHs unlimited
ulimit -SHt unlimited
ulimit -SHv unlimited
:wq! #儲存退出
source /etc/profile #使配置立即生效
ulimit -a #查看設定
3、CentOS 6.x(CentOS 5.x和CentOS 7.x不需要設定此項)
vi /etc/security/limits.d/90-nproc.conf #在最後一行添加以下代碼
* soft nproc unlimited
* hard nproc unlimited
* soft nofile 655350
* hard nofile 655350
:wq! #儲存退出
4、CentOS 5.x CentOS 6.x CentOS 7.x
sed -i "s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" '/etc/sysctl.conf'
echo -e "net.core.somaxconn = 262144" >> /etc/sysctl.conf
echo -e "net.core.netdev_max_backlog = 262144" >> /etc/sysctl.conf
echo -e "net.core.wmem_default = 8388608" >> /etc/sysctl.conf
echo -e "net.core.rmem_default = 8388608" >> /etc/sysctl.conf
echo -e "net.core.rmem_max = 16777216" >> /etc/sysctl.conf
echo -e "net.core.wmem_max = 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.netfilter.ip_conntrack_max = 131072" >> /etc/sysctl.conf
echo -e "net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180" >> /etc/sysctl.conf
echo -e "net.ipv4.route.gc_timeout = 20" >> /etc/sysctl.conf
echo -e "net.ipv4.ip_conntrack_max = 819200" >> /etc/sysctl.conf
echo -e "net.ipv4.ip_local_port_range = 10024 65535" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_retries2 = 5" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_fin_timeout = 30" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_syn_retries = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_synack_retries = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_timestamps = 0" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_tw_recycle = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_tw_len = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_tw_reuse = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_time = 120" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_probes = 3" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_intvl = 15" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_tw_buckets = 36000" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_orphans = 3276800" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_syn_backlog = 262144" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_wmem = 8192 131072 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_rmem = 32768 131072 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_mem = 94500000 915000000 927000000" >> /etc/sysctl.conf
/sbin/sysctl -p #使配置立即生效
cat /var/log/secure #查看系統設定是否正確,沒有error提示說明設定正確
四、系統安全設定
1、建立普通帳號
useradd osyunwei #建立普通帳號
passwd 123456 #設定密碼
2、禁用root直接登入
vi /etc/ssh/sshd_config #編輯
找到PermitRootLogin,將後面的yes改為no
:wq! #儲存退出
3、開啟防火牆
yum install iptables #安裝防火牆 yum install wget 先安裝下載工具
chkconfig iptables on #設定開機啟動
vi /etc/sysconfig/iptables #編輯,添加以下代碼
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -s 192.168.1.1/24 -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Iptables For OsYunWei.Com Date 2015/05/22
service iptables start #啟動防火牆
備忘:-s 192.168.1.1/24 表示只允許這個ip段訪問3306連接埠,可以根據需求修改
4、修改ssh預設連接埠
把ssh預設遠端連線連接埠22修改為222
vi /etc/ssh/sshd_config
在連接埠#Port 22下面增加Port 222
:wq! #儲存退出
vi /etc/ssh/ssh_config
在連接埠#Port 22下面增加Port 222
:wq! #儲存退出
/etc/init.d/sshd restart #重啟sshd服務
vi /etc/sysconfig/iptables #編輯
把22連接埠修改為222
:wq! #儲存退出
/etc/init.d/iptables restart #重啟防火牆,使配置生效
五、修改主機名稱
這裡設定主機名稱為:www.111cn.net
1、hostname “www.111cn.net” #設定主機名稱為www.111cn.net
2、
vi /etc/sysconfig/network #編輯設定檔CentOS 5.x CentOS 6.x
HOSTNAME= www.111cn.net #修改localhost.localdomain為www.111cn.net
:wq! #儲存退出
vi /etc/hostname #編輯設定檔CentOS 7.x
www.111cn.net #修改localhost.localdomain為www.111cn.net
:wq! #儲存退出
3、vi /etc/hosts #編輯設定檔
127.0.0.1 www.111cn.net localhost #修改localhost.localdomain為www.111cn.net
:wq! #儲存退出
六、同步系統時間
yum install -y ntp #安裝ntp
ntpdate cn.pool.ntp.org #執行時間同步
hwclock --systohc #系統時鐘和硬體時鐘同步
echo -e "0 0 * * * /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null" >> /var/spool/cron/root #添加計劃任務
service crond restart #重啟服務
七、安裝基礎軟體包
yum install -y apr* autoconf automake bison cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext
gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng* libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool*
libgomp libxml2 libxml2-devel libXpm* libtiff libtiff* libX* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet
t1lib t1lib* nasm nasm* wget zlib-devel