説明:多くの場合、Linuxシステムの友人は多かれ少なかれ、最適化するシステムパラメータのいくつかを知っているとどのようにシステムのセキュリティを強化するために、システムのデフォルトのパラメータのいくつかは、より保守的ですので、システムのセキュリティを向上させるために、不要なサービス、ポートを無効にすることにより、システムのメモリ、CPU、カーネルリソースを向上させるシステムパラメータを調整することができ、より良いシステムの可用性を再生します。私自身のLinuxの理解を通して、私はシステムチューニングの次の要約を作りました:
オペレーティングシステム:CentOS 6.5_x64 最小インストール
1、ホスト名設定
[root@localhost~]# vi /etc/sysconfig/network
HOSTNAME=test.com
[root@localhost~]# hostname test.com #一時的な効果
2.SELinuxを閉じる
[root@localhost~]# vi /etc/selinux/config
SELINUX=disabled
[root@localhost~]# setenforce #一時的な効果
[root@localhost~]# getenforce #selinuxの状態を確認する
3. ファイアウォールを空にし、ルールを設定します。
[root@localhost~]# iptables -F #ファイアウォールのルールをクリアする
[root@localhost~]# iptables -L #ファイアウォールのルールを表示する
[root@localhost~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@localhost~]# iptables -A INPUT -p tcp --dport 53 -j ACCEPT
[root@localhost~]# iptables -A INPUT -p udp --dport 53 -j ACCEPT
[root@localhost~]# iptables -A INPUT -p udp --dport 123 -j ACCEPT
[root@localhost~]# iptables -A INPUT -p icmp -j ACCEPT
[root@localhost~]# iptables -P INPUT DROP
[root@localhost~]# /etc/init.d/iptables save
# 必要に応じて適切なポートを有効にします。
4、一般ユーザーの追加とsudo権限管理
[root@localhost~]# useradd user
[root@localhost~]# echo "123456" | passwd --stdin user #パスワードを設定する
[root@localhost~]# vi /etc/sudoers #または、visudoを開き、すべての権限をユーザーに追加する。
root ALL=(ALL) ALL
user ALL=(ALL) ALL
5.rootのリモートログインを無効にします。
[root@localhost~]# vi /etc/ssh/sshd_config
PermitRootLoginno
PermitEmptyPasswords no #空パスワードログインを無効にする
UseDNSno #DNSクエリをオフにする
6.不要な起動サービスをオフ
7.不要なシステムユーザーの削除
8.閉じて、ctl-alt-deleteキーの組み合わせを再起動します。
[root@localhost ~]# vi /etc/init/control-alt-delete.conf
#exec /sbin/shutdown -r now "Control-Alt-Deletepressed" #
9.ファイル記述子のサイズ変更
[root@localhost ~]# ulimit #デフォルトは1024
1024
[root@localhost ~]# echo "ulimit -SHn 102400">> /etc/rc.local #自動的に起動するように設定する
10.システム関連情報の削除
[root@localhost ~]# echo "Welcome to Server" >/etc/issue
[root@localhost ~]# echo "Welcome to Server" >/etc/redhat-release
11、履歴記録の修正
[root@localhost ~]# vi /etc/profile #修正記録10
HISTSIZE=10
12.システム時刻の同期
[root@localhost ~]# cp /usr/share/zoneinfo/Asia/Tokyo/etc/localtime #東京タイムゾーンを設定する
[root@localhost ~]# ntpdate .pool.ntp.org hwclock-w #時刻を同期し、blosハードウェア時刻に書き込む
[root@localhost ~]# crontab -e #1日1回00:00に同期するタスクスケジュールを設定する
0 * * * * /usr/sbin/ntpdate .pool.ntp.org ; hwclock -w
13.カーネルパラメータの最適化
[root@localhost ~]# vi /etc/sysctl.conf #最後に以下のパラメーターを追加する。
net.ipv4.tcp_syncookies = 1 #1是开启SYN Cookies,当出现SYN等待队列溢出时,启用Cookies来处,理,可防范少量SYN攻击,默认是0关闭
net.ipv4.tcp_tw_reuse = 1 #1TIMEをオンにし、発言を許可する再利用である_AIT sockets新しいTCP接続を再利用する、デフォルトは0オフ
net.ipv4.tcp_tw_recycle = 1 #TCP再送信の失敗回数、デフォルトは15回、カーネルリソースを解放するために回数を減らす
net.ipv4.ip_local_port_range = 4096 65000 #アプリケーションで利用可能なポートの範囲
net.ipv4.tcp_max_tw_buckets = 5000 #システムはまた、TIMEを維持する。_WAITソケットの最大数、これを超えた場合,TIME_WATIソケットはすぐにクリアされ、警告メッセージが表示される。
net.ipv4.tcp_max_syn_backlog = 4096 #SYNboの最大リクエストキューを入力する。
net.core.netdev_max_backlog = 10240 #キューに送信できるパケットの最大デバイスキュー、デフォルト300
net.core.somaxconn = 2048 #listen保留中のリクエストの最大数、デフォルト128
net.core.wmem_default = 8388608 #送信バッファサイズのデフォルト値
net.core.rmem_default = 8388608 #ソケットバッファサイズのデフォルトを受け入れる
net.core.rmem_max = 16777216 #最大受信バッファサイズ
net.core.wmem_max = 16777216 #最大送信バッファサイズ
net.ipv4.tcp_synack_retries = 2 #SYN-ACKハンドシェイクの再試行回数、デフォルトは5回
net.ipv4.tcp_syn_retries = 2 #アウトバウンドSYNハンドシェイクの再試行回数、デフォルト4回
net.ipv4.tcp_tw_recycle = 1 #TCP接続でTIMEを有効にする_WAIT sockets高速リサイクル、デフォルトは0オフ
net.ipv4.tcp_max_orphans = 3276800 #ユーザー・ファイル・ハンドルに関連付けられていないシステム内のTCPソケットの最大数、この数を超えると、孤児となった接続は直ちにリセットされ、警告メッセージが表示される。
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_mem[0]:この値以下では、TCPはメモリを圧迫しない;
net.ipv4.tcp_mem[1]:この値で、メモリ・プレッシャーの段階に入る;
net.ipv4.tcp_mem[2]:この値を超えると、TCPはソケットの割り当てを拒否する。メモリ単位はページであり、物理メモリのサイズに応じて調整でき、メモリが十分大きければ上方修正できる。上記のメモリ単位はバイトではなくページである。
この時点でCentOS 6.5_x64の最小インストールシステムは基本的に最適化され、調整されているので、システムを再起動する必要があります。
この記事は「ペンギン」ブログからのものです。





