Tagged: Centos

Centos Install Mysql (解压缩版)

下载并解压Mysql

下载地址http://dev.mysql.com/downloads/mysql/ (选择Linux - Generic版本的Linux - Generic (glibc 2.5) (x86, 64-bit), Compressed)

# 检查库文件是否存在,如有删除。
rpm -qa | grep mysql
rpm -e mysql-libs-5.1.52.x86_64 --nodeps

# 下载mysql
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz

# 解压
tar zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql

添加用户及用户组

# 检查mysql用户及用户组是否存在
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql

# 创建mysql用户及用户组
groupadd mysql
useradd -r -g mysql mysql

授权

# 授权
cd /usr/local
chown -R mysql:mysql mysql/

安装

cd mysql

# 初始化(这里要记录下密码,后续会用到)
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

# 创建执行程序软连接
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

#启动mysql
./support-files/mysql.server start

# 拷贝文件到开机启动
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig --list mysqld # 如果不存在则执行下面命令,存在则不执行下面命令
chkconfig --add mysqld

配置my.cnf

vi /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data 
user=mysql 
character-set-server=utf8 
collation-server=utf8_general_ci 
# Disabling symbolic-links is recommended to prevent assorted security
risks symbolic-links=0 

初始化密码

mysql -u root -h 127.0.0.1 -p
# 这里的密码是刚才初始化时生成的随机密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
flush privileges;

常用命令

service mysqld start
service mysqld stop
service mysqld restart

Linux防火墙iptables使用记录

# 查看现有的iptables规则
iptables -L -n --line-numbers
 
# 删除某iptables规则
iptables -D INPUT 12
 
# 清除现有iptables规则
iptables -F
iptables -X
iptables -Z
 
# 创建规则 (开放端口)
#允许本机访问
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
# 允许已建立的或相关连的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 允许从22端口进入的包返回
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
#允许所有本机向外的访问
iptables -A OUTPUT -j ACCEPT
# 允许访问22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#允许访问80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#允许FTP服务的21和20端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#如果有其他端口的话,规则也类似,稍微修改上述语句就行
#禁止其他未允许的规则访问
iptables -A INPUT -j REJECT
iptables -A FORWARD -j REJECT
 
# 屏蔽ip
# 若需屏蔽整个ip段(123.0.0.1到123.255.255.254)则换为123.0.0.0/8
# 若需屏蔽ip段123.123.0.1到123.123.255.254,则换为124.123.0.0/16
# 若需屏蔽ip段123.123.123.1到123.123.123.254则换为123.123.123.0/24
iptables -I INPUT -s 123.123.123.123 -j DROP
 
# 设置开机启动
chkconfig --level 345 iptables on
 
# 保存iptables规则
service iptables save
Read more

Centos 搭建SVN服务器

# 查看是否已经安装SVN
rpm -qa subversion
 
# 安装SVN
yum -y install subversion
 
# 创建版本库
mkdir -p /svn/repos/svn1                      #创建目录
svnadmin create /svn/repos/svn1               #创建SVN版本库
 
# 配置账户
vi /svn/repos/svn1/conf/passwd
[users]
jalena = 123456
 
# 配置权限
vi /svn/repos/svn1/conf/authz
[svn1:/]
jalena = rw
* = rw
 
# svn1是具体版本库的标签
 
# 取消一些注释即可
vi /svn/repos/svn1/conf/svnserve.conf
[general]
anon-access = none                    # 非授权用户无法访问
auth-access = write                   # 授权用户有写权限
password-db = passwd                  # 密码数据所在目录
authz-db = authz
 
# 启动SVN
svnserve -d -r /svn/repos/    # 注意目录,不包含svn1
ps aux | grep svnserve | grep -v grep        # 查看服务是否启动
 
# 关闭SVN
killall svnserve              # 停止服务
 
# 开机启动
echo "svnserve -d -r /svn/repos/" >> /etc/rc.d/rc.local

测试SVN的服务器

svn://192.168.1.1/svn1

删除版本库

rm -rf /svn/repos/svn1

Win10 Hyper-V 内部网络联网设置

windows的Hyper-V简直就是操蛋中的极品。网络设置超级不人性化。

如果计算机没有连接路由器的情况下,使用默认的任何一种设置都无法正常与虚拟机连接。

这个问题折腾了好久。记录一下。

1.在Hyper-v管理器中,新建“虚拟交换机”,类型选“内部网络”

2.打开“网络和共享中心”,选中刚才建立的虚拟网卡及WIFI,右击,点“桥接”

3.等待生效

4.设置虚拟机网卡

这种方法好处在于没有网络的情况下也能与虚拟机互通,在有网络的情况下也是一样的!!!!!!

结束!

JSP环境搭建 centos Tomcat 9

软件包下载地址:

JAVA环境安装

yum -y update  # 升级系统
cd /usr/local
wget http://javadl.sun.com/webapps/download/AutoDL?BundleId=111741 -O jre.tar.gz
tar zxvf jre.tar.gz
chown root:root jre1.8.0_66 # 默认的权限貌似不一样

echo "export JAVA_HOME=/usr/local/jre1.8.0_66" >> /etc/profile     # 写入JAVA_HOME
echo "export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> /etc/profile # 写入JAVA_CLASSPATH
source /etc/profile  # 立即生效
env |grep JAVA # 查看是否生效
#JAVA_HOME=/usr/local/jre1.8.0_66
#CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar

ln -s /usr/local/jre1.8.0_66/bin/java /sbin/java # 创建程序快捷方式,否则会提示找不到程序

java -version
#java version "1.8.0_66"
#Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
#Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

Tomcat 安装

# 生产环境最好还是Tomcat 7合适!
wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M1/bin/apache-tomcat-9.0.0.M1.tar.gz
tar zxvf apache-tomcat-9.0.0.M1.tar.gz
mv apache-tomcat-9.0.0.M1 tomcat
/usr/local/tomcat/bin/startup.sh #启动服务器
#Using CATALINA_BASE:   /usr/local/tomcat
#Using CATALINA_HOME:   /usr/local/tomcat
#Using CATALINA_TMPDIR: /usr/local/tomcat/temp
#Using JRE_HOME:        /usr/local/jre1.8.0_66
#Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
#Tomcat started.
/usr/local/tomcat/bin/shutdown.sh # 关闭服务器
Read more

AlphaSSL Wildcard SSL 证书安装记

昨天在某宝买了一个AlphaSSL Wildcard SSL的通配符证书,一切顺利,一会就收到了。

首先要使用通配符证书必须保证服务器支持SNI。Nginx可以使用 nginx -V来查看是否支持

[root@WebServer nginx]# nginx -V
nginx version: nginx/1.9.5
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) 
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module

如果支持那么就好办了,直接配置吧。。附上我的配置

# 以下为server段内容
listen 443 ssl http2;
keepalive_timeout   	20;
server_name test.bcsytv.com;
index index.html index.htm index.php default.html default.htm default.php;
root  /home/wwwroot/test;

ssl 						on;
ssl_certificate 			/usr/local/nginx/conf/vhost/test.crt;
ssl_certificate_key 		/usr/local/nginx/conf/vhost/test.key;
ssl_dhparam 				/usr/local/nginx/conf/vhost/dhparam.pem;

ssl_protocols 				TLSv1.2 TLSv1.1 TLSv1;
ssl_stapling 				on;
ssl_stapling_verify 		on;
resolver 					8.8.4.4 8.8.8.8 valid=300s;
resolver_timeout 			10s;
ssl_ciphers 				"ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
ssl_session_cache       	shared:SSL:10m;
ssl_session_timeout     	10m;
ssl_prefer_server_ciphers 	on;
# 以下参数是个超级坑爹的东西!!千万不要尝试!
#ssl_session_tickets 		off;

# 强制使用HTTPS,includeSubdomains是否指定子域名
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";

# 不允许被任何页面嵌入
add_header X-Frame-Options DENY;

# 禁用浏览器的类型猜测行为
add_header X-Content-Type-Options nosniff;

小花絮:

直接给的证书是不带中级证书的,我们需要合并。。假如你收到的证书是demo.crt

wget https://jalena.bcsytv.com/Upfiles/2015/11/alpha.crt && cat alpha.crt >> demo.crt

dhparam.pem生成命令

openssl dhparam -out dhparam.pem 4096

ok。

Archives