Nginx 服务启动脚本

#! /bin/sh

# chkconfig: 2345 55 25

# Description: Startup script for nginx webserver on Debian. Place in /etc/init.d and

# run 'update-rc.d -f nginx defaults', or use the appropriate command on your

# distro. For CentOS/Redhat run: 'chkconfig –add nginx'

 

### BEGIN INIT INFO

# Provides:          nginx

# Required-Start:    $all

# Required-Stop:     $all

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: starts the nginx web server

# Description:       starts nginx using start-stop-daemon

### END INIT INFO

 

# Author:   licess

# website:  http://lnmp.org

 

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

NAME=nginx

NGINX_BIN=/usr/local/nginx/sbin/$NAME

CONFIGFILE=/usr/local/nginx/conf/$NAME.conf

PIDFILE=/usr/local/nginx/logs/$NAME.pid

 

case "$1" in

    start)

        echo -n "Starting $NAME… "

 

        if netstat -tnpl | grep -q nginx;then

            echo "$NAME (pid `pidof $NAME`) already running."

            exit 1

        fi

 

        $NGINX_BIN -c $CONFIGFILE

 

        if [ “$?” != 0 ] ; then

            echo " failed"

            exit 1

        else

            echo " done"

        fi

        ;;

 

    stop)

        echo -n "Stoping $NAME… "

 

        if ! netstat -tnpl | grep -q nginx; then

            echo "$NAME is not running."

            exit 1

        fi

 

        $NGINX_BIN -s stop

 

        if [ “$?” != 0 ] ; then

            echo " failed. Use force-quit"

            exit 1

        else

            echo " done"

        fi

        ;;

 

    status)

        if netstat -tnpl | grep -q nginx; then

            PID=`pidof nginx`

            echo "$NAME (pid $PID) is running…"

        else

            echo "$NAME is stopped"

            exit 0

        fi

        ;;

 

    force-quit)

        echo -n "Terminating $NAME… "

 

        if ! netstat -tnpl | grep -q nginx; then

            echo "$NAME is not running."

            exit 1

        fi

 

        kill `pidof $NAME`

 

        if [ “$?” != 0 ] ; then

            echo " failed"

            exit 1

        else

            echo " done"

        fi

        ;;

 

    restart)

        $0 stop

        sleep 1

        $0 start

        ;;

 

    reload)

        echo -n "Reload service $NAME… "

 

        if netstat -tnpl | grep -q nginx; then

            $NGINX_BIN -s reload

            echo " done"

        else

            echo "$NAME is not running, can't reload."

            exit 1

        fi

        ;;

 

    configtest)

        echo -n "Test $NAME configure files… "

 

        $NGINX_BIN -t

        ;;

 

    *)

        echo "Usage: $0 {start|stop|force-quit|restart|reload|status|configtest}"

        exit 1

        ;;

 

Read More

Linux-icon

RHEL7配置NTP服务

1、安装ntp软件

2、编辑配置文件/etc/chrony.conf

3、允许某一网段进行时间同步(编辑/etc/chrony.conf)

4、启动NTP服务

5、测试同步

Read More

Linux普通用户绑定80端口

在Linux系统中,默认情况下只有root用户才可以绑定1024以下的端口,而普通用户需要绑定1024以下的端口,基本方法是使用的Nginx代理转发或者操作系统的iptables进行端口转发两种方法进行,本文将以tomcat为例,直接以普通用户运行tomcat,并使tomcat程序绑定80端口或者转发代理至tomcat的8080端口。

要使机器的80端口给客户端方法问,可以参考以下方式进行:

  • iptables端口转发方式
  • Nginx代理模式
  • setcap方式

 1、iptables方式

RHEL 7

#firewall-cmd –permanent –add-forward-port=port=80:proto=tcp:toport=8080

RHEL 7之前版本

#iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-port 8080

2、安装Nginx,并将80端口转发至8080

listen 80;

location / {
    proxy_pass       http://localhost:8080;
    proxy_set_header Host      $host;
    proxy_set_header X-Real-IP $remote_addr;
}

3、setcap方式

#setcap 'cap_net_bind_service=ep' /usr/local/jdk1.8.0/jre/bin/java

/usr/local/jdk1.8.0/jre/bin/java为tomcat运行的Java环境程序,如果为其他程序,则改为其他程序的绝对路径。

另外:ep为永久生效

通过MAN帮助查询man  7 capabilities

CAP_NET_BIND_SERVICE
Bind  a socket to Internet domain privileged ports (port numbers less than 1024).

 

 

Read More

img_0335-1.jpeg

Nginx单IP地址配置多个SSL证书

默认情况下,Nginx一个IP地址仅支持一个SSL证书,需要多个IP地址才能配置多个SSL证书,在公网IP地址有限的情况下,可以使用TLS Server Name Indication extension(SNI, RFC 6066),它允许浏览器在SSL握手的时候发送请求的server name,也就是 Host,这样 Nginx 就能找到对应server 的SSL配置。

配置步骤如下:

1、检查Nginx是否支持TLS

2、如果出现TLS SNI support disable,就得升级openssl版本,并且重新编译nginx。

具体步骤如下:
首先下载openssl(建议下载1.0.1h版本)

下载Nginx

解压openssl

解压nginx,并编译

#检查Nginx版本信息

配置Vhost中的域名证书

然后,重启Nginx即可。

Read More

Linux-icon

RHEL 7 ROOT 密码破解步骤

1、重启操作系统的时候,在启动页面,输入e进行编辑选择第一项,然后在内核部分,按最后的end键到最后加入:

#rd.break console=tty0

2、启动操作系统

按Ctrl+x保存启动

3、进入系统以后,重新挂载/sysroot/

#mount -o remount,rw /sysroot/

#chroot /sysroot/

4、重置密码

#passwd 

重复输入两次密码

5、 重新创建标签

#touch /.autorelabel

6、退出bash模式

#exit

7、重启操作系统

#reboot

Read More

Actions-edit-rename-icon

Sublime Text3 注册码

Sublime Text Build 3083 License key

复制如下三个任意一个正版注册码即可

—– BEGIN LICENSE —–

Andrew Weber

Single User License

EA7E-855605

813A03DD 5E4AD9E6 6C0EEB94 BC99798F

942194A6 02396E98 E62C9979 4BB979FE

91424C9D A45400BF F6747D88 2FB88078

90F5CC94 1CDC92DC 8457107A F151657B

1D22E383 A997F016 42397640 33F41CFC

E1D0AE85 A0BBD039 0E9C8D55 E1B89D5D

5CDB7036 E56DE1C0 EFCC0840 650CD3A6

B98FC99C 8FAC73EE D2B95564 DF450523

—— END LICENSE ——

—– BEGIN LICENSE —–

K-20

Single User License

EA7E-940129

3A099EC1 C0B5C7C5 33EBF0CF BE82FE3B

EAC2164A 4F8EC954 4E87F1E5 7E4E85D6

C5605DE6 DAB003B4 D60CA4D0 77CB1533

3C47F579 FB3E8476 EB3AA9A7 68C43CD9

8C60B563 80FE367D 8CAD14B3 54FB7A9F

4123FFC4 D63312BA 141AF702 F6BBA254

B094B9C0 FAA4B04C 06CC9AFC FD412671

82E3AEE0 0F0FAAA7 8FA773C9 383A9E18

—— END LICENSE ——

—– BEGIN LICENSE —–

J2TeaM

2 User License

EA7E-940282

45CB0D8F 09100037 7D1056EB A1DDC1A2

39C102C5 DF8D0BF0 FC3B1A94 4F2892B4

0AEE61BA 65758D3B 2EED551F A3E3478C

C1C0E04E CA4E4541 1FC1A2C1 3F5FB6DB

CFDA1551 51B05B5D 2D3C8CFE FA8B4285

051750E3 22D1422A 7AE3A8A1 3B4188AC

346372DA 37AA8ABA 6EB30E41 781BC81F

B5CA66E3 A09DBD3A 3FE85BBD 69893DBD

—— END LICENSE ——30833083

如果是公司用的话,建议还是买正版吧!70美元对于公司来说还是愿意出的。

小手一抖,更新了一下新的版本,更新之后就提示未激活,重新网上搜索了一下License Key,具体如下:

Sublime Text 3.x (after Build 309X)

—– BEGIN LICENSE —–

Michael Barnes

Single User License

EA7E-821385

8A353C41 872A0D5C DF9B2950 AFF6F667

C458EA6D 8EA3C286 98D1D650 131A97AB

AA919AEC EF20E143 B361B1E7 4C8B7F04

B085E65E 2F5F5360 8489D422 FB8FC1AA

93F6323C FD7F7544 3F39C318 D95E6480

FCCC7561 8A4A1741 68FA4223 ADCEDE07

200C25BE DBBC4855 C4CFB774 C5EC138C

0FEC1CEF D9DCECEC D3A5DAD1 01316C36

—— END LICENSE ——

—– BEGIN LICENSE —–

Free Communities Consultoria em Informática Ltda

Single User License

EA7E-801302

C154C122 4EFA4415 F1AAEBCC 315F3A7D

2580735A 7955AA57 850ABD88 72A1DDD8

8D2CE060 CF980C29 890D74F2 53131895

281E324E 98EA1FEF 7FF69A12 17CA7784

490862AF 833E133D FD22141D D8C89B94

4C10A4D2 24693D70 AE37C18F 72EF0BE5

1ED60704 651BC71F 16CA1B77 496A0B19

463EDFF9 6BEB1861 CA5BAD96 89D0118E

—— END LICENSE ——

—– BEGIN LICENSE —–

Nicolas Hennion

Single User License

EA7E-866075

8A01AA83 1D668D24 4484AEBC 3B04512C

827B0DE5 69E9B07A A39ACCC0 F95F5410

729D5639 4C37CECB B2522FB3 8D37FDC1

72899363 BBA441AC A5F47F08 6CD3B3FE

CEFB3783 B2E1BA96 71AAF7B4 AFB61B1D

0CC513E7 52FF2333 9F726D2C CDE53B4A

810C0D4F E1F419A3 CDA0832B 8440565A

35BF00F6 4CA9F869 ED10E245 469C233E

—— END LICENSE ——

—– BEGIN LICENSE —–

Anthony Sansone

Single User License

EA7E-878563

28B9A648 42B99D8A F2E3E9E0 16DE076E

E218B3DC F3606379 C33C1526 E8B58964

B2CB3F63 BDF901BE D31424D2 082891B5

F7058694 55FA46D8 EFC11878 0868F093

B17CAFE7 63A78881 86B78E38 0F146238

BAE22DBB D4EC71A1 0EC2E701 C7F9C648

5CF29CA3 1CB14285 19A46991 E9A98676

14FD4777 2D8A0AB6 A444EE0D CA009B54

—— END LICENSE ——

—– BEGIN LICENSE —–

Alexey Plutalov

Single User License

EA7E-860776

3DC19CC1 134CDF23 504DC871 2DE5CE55

585DC8A6 253BB0D9 637C87A2 D8D0BA85

AAE574AD BA7D6DA9 2B9773F2 324C5DEF

17830A4E FBCF9D1D 182406E9 F883EA87

E585BBA1 2538C270 E2E857C2 194283CA

7234FF9E D0392F93 1D16E021 F1914917

63909E12 203C0169 3F08FFC8 86D06EA8

73DDAEF0 AC559F30 A6A67947 B60104C6

—— END LICENSE ——

—– BEGIN LICENSE —–

Peter Halliday

Single User License

EA7E-855988

3997BFF0 2856413A 7A555954 67069B78

06D8CE12 63EAF079 AD039757 79E16D13

C555AD90 465CBE53 10F6DFC4 D3A3C611

411106F8 0CFEB15F 0A7BB891 111F5ED2

C6AA8429 77913528 FA6291A9 B88D4550

F1D6AB13 BF9153BC 91B4DFFE D296CFE0

C1D8EB22 13D5F14E 75A699EC 49EDDC23

D89D0F9B D240B10A A3712467 09DE7870

—— END LICENSE ——

—– BEGIN LICENSE —–

Fred Zirdung

Single User License

EA7E-844672

6089C0EC 22936E1A 1EADEBE2 B8654BBA

5C98FFA6 C0FD1599 0364779B 071C74FB

EEFE9EAB 92B3D867 CD1B32FE D190269F

6FC08F8F 8D24191D 32828465 942CE58E

AECE5307 08B62229 D788560A 6E0AAC4B

48A2D9EE 24FD8CAA 07BEBDF2 28EA86D4

CCB96084 6C34CAD2 E8A04F39 3B5A3CBC

3B668BB7 C94D0B4B 847D6D7F 4BC07375

—— END LICENSE ——

—– BEGIN LICENSE —–

Wixel

Single User License

EA7E-848235

103D2969 8700C7ED 8173CF61 537000C0

EB3C7ECB 5E750F17 6B42B67C A190090B

7669164F C6F371A8 5A1D88D5 BDD0DA70

C065892B 7CC1BB2B 1C8B8C7C F08E7789

7C2A5241 35F86328 4C8F70D9 C023D7C2

11245C36 59A730DB 72BDB9A7 D5B20304

90E90E72 9F08CA25 73F49C20 179D938E

5BC8BEDA 13457A69 39E6265F 233767F9

—— END LICENSE ——

—– BEGIN LICENSE —–

Daniel Russel

Single User License

EA7E-917420

9327EC62 44020C2A 45172A68 12FE13F1

1D22245B 680892EE F551F8EB C183D032

8B4EDB4B 479CB7E4 07E42EDD A780021D

56BADF42 AC05238B 023B47B1 EBA1B7DE

6DF9A383 159F32AE 04EBE100 1278B1D2

52E81B60 C68AA2E8 F84A20BE FE7990EB

5D44E4B6 16369263 1DDAACBC 280FF19E

86CF4319 0B8615A8 4FF0512E B123B8EC

—— END LICENSE ——

—– BEGIN LICENSE —–

Peter Eriksson

Single User License

EA7E-890068

8E107C71 3100D6FC 2AC805BF 9E627C77

72E710D7 43392469 D06A2F5B F9304FBD

F5AB4DB2 7A95F172 FE68E300 42745819

E94AB2DF C1893094 ECABADC8 71FEE764

20224821 3EABF931 745AF882 87AD0A4B

33C6E377 0210D712 CD2B1178 82601542

C7FD8098 F45D2824 BC7DFB38 F1EBD38A

D7A3AFE0 96F938EA 2D90BD72 9E34CDF0

—— END LICENSE ——

—– BEGIN LICENSE —–

Ryan Clark

Single User License

EA7E-812479

2158A7DE B690A7A3 8EC04710 006A5EEB

34E77CA3 9C82C81F 0DB6371B 79704E6F

93F36655 B031503A 03257CCC 01B20F60

D304FA8D B1B4F0AF 8A76C7BA 0FA94D55

56D46BCE 5237A341 CD837F30 4D60772D

349B1179 A996F826 90CDB73C 24D41245

FD032C30 AD5E7241 4EAA66ED 167D91FB

55896B16 EA125C81 F550AF6B A6820916

—— END LICENSE ——

Read More

Linux-icon

CentOS RPM方式升级内核

首先导入public key

rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

其次,安装rpm包

CentOS5

rpm -Uvh http://www.elrepo.org/elrepo-release-5-5.el5.elrepo.noarch.rpm

CentOS6

rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm

CentOS7

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

然后执行
yum –enablerepo=elrepo-kernel -y install kernel-lt

进行内核升级,升级完毕之后需要修改/etc/grub.conf文件,将第一个default=1更改为default=0

default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz

修改完毕之后,reboot服务器即可。

Read More

Linux-icon

Linux下rz/sz安装与使用

在Linux系统下,可以通过rz命令将本地的文件上传至Linux操作系统上,通过sz命令将服务器桑的文件下载到本地磁盘的操作,所有的文件传输走的都是SSH协议。

一般的Linux最下化安装都没有安装此工具,我们安装此工具可以直接使用Yum源的方式进行安装。

#yum -y install lrzsz*

安装日志

安装完毕,即可使用。

使用方法:

打开SecureCRT软件 -> Options -> session options -> X/Y/Zmodem 下可以设置上传和下载的目录; 然后在用SecureCRT登陆linux终端的时候:
# sz filename (发送文件到客户端,zmodem接收可以自行启动)
# rz (从客户端上传文件到linux服务端)

Read More

header-logo

CentOS 6.5升级Firefox浏览器

在WAS实验环境中,需要使用到系统的内置浏览器,太低的Firefox浏览器对WAS控制台支持有限,得升级Firefox浏览器。

首先下载最新版本的Firefox,下载地址:

https://download-installer.cdn.mozilla.net/pub/firefox/releases/31.0/linux-x86_64/zh-CN/firefox-31.0.tar.bz2

下载完毕之后,将Firefox解压到/usr/local/目录下

tar -jxvf firefox-31.0.tar.bz2 -C /usr/local/

解压完毕之后,可以在/usr/local/下看到firefox程序目录

接下来,修改面板下firefox下的属性

在任务栏,右键点击firefox的属性,编辑属性,在运行命令中输入:

usr/local/firefox/firefox %u

接着,修改桌面快捷方式的运行方式

编辑/usr/share/applications/mozilla-firefox.desktop文件

vi /usr/share/applications/mozilla-firefox.desktop

将其中的 Exec=firefox %u 那一行更改为 Exec=/usr/local/firefox/firefox %u
这样就升级完firefox浏览器,点击快捷方式运行firefox就可以看到我们升级后的firefox浏览器了。

Read More