Docker

Docker 最低支持 CentOS 7
使用脚本自动安装
curl -sSL https://get.docker.com/ | sh

service docker start

docker pull ubuntu:16.04
启动容器ubuntu里面的 bash 并且进行交互式操作
docker run -it ubuntu:16.04 bash

通过 exit 退出了这个容器

列出镜像
docker images

导出容器
docker ps -a

docker export 7691a814370e > ubuntu.tar
导入容器快照
cat ubuntu.tar | sudo docker import - test/ubuntu:v1.0

默认情况下Docker的存放位置为:/var/lib/docker
可以通过下面命令查看具体位置:
docker info | grep "Docker Root Dir"

修改Docker本地镜像与容器的存储位置
service docker stop

mkdir -p /data
mv /var/lib/docker /data/docker
ln -s /data/docker /var/lib/docker

 

 

 

curl -sSL https://get.docker.com/ | sh
service docker start

docker pull danielguerra/ubuntu-xrdp:16.04
screen -S tt
docker run -d --name uxrdp --hostname terminalserver --shm-size 1g -p 3389:3389 -p 2222:22 danielguerra/ubuntu-xrdp:16.04

SQL服务器搭建

Ubuntu 16.04.2 LTS

sudo apt-get update
sudo apt-get install apache2
sudo systemctl restart apache2

sudo apt-get install mysql-server
mysql_secure_installation
sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql
sudo apt install unzip
#sudo apt-get install php-mbstring

cd /var/www/html/
wget https://files.phpmyadmin.net/phpMyAdmin/4.7.6/phpMyAdmin-4.7.6-all-languages.zip
unzip -x *.zip
mv phpMyAdmin-4.7.6-all-languages phpmyadmin
sudo systemctl restart apache2

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

1.ping 远程地址 判断远端服务网络正常

2.telnet 远程地址 端口号,拒绝了访问3306端口
telnet 192.168.99.100 3306

3.
vi /etc/mysql/mysql.conf.d/mysqld.cnf
修改MySQL配置文件,将bind_address = 127.0.0.1注释掉或修改成0.0.0.0
sudo /etc/init.d/mysql restart

netstat -an|grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN

4.编辑后重启mysql ,再次查看3306端口
telnet 192.168.99.100 3306

5.授权访问,
用root身份登录到mysql,使用grant命令分配权限,
如果操作所有库就把 database_name.* 改成 *.* ,user_name是用户名,%是所有ip地址可访问,
如果限制固定ip访问就改成ip,user_password是密码,
mysql -uroot -p
mysql> grant all on database_name.* to user_name@'%' identified by 'user_password';
mysql> flush privileges; #让权限立即生效
mysql> exit;

开启慢查询
mysql -uroot -p
set global slow_query_log=ON;
set global long_query_time=1;
set global log_queries_not_using_indexes = 1;
将字符编码设置为UTF-8
set character_set_database=utf8;
set character_set_server=utf8;

show variables like '%char%';

mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

phpmyadmin
Users overview
User name Host Password Global privileges Grant
root % Yes ALL PRIVILEGES Yes

客户端连接:

mysql -u 用户名 -p密码 -h 服务器IP地址 -P 服务器端MySQL端口号 -D 数据库名

注意:
(1)服务器端口标志-P一定要大些以区别于用户-p,如果直接连接数据库标志-D也要大写;
(2)如果要直接输入密码-p后面不能留有空格如-pmypassword;
(3)命令结束段没有';'分号。

例子:
mysql -u lzpddd -pmypassword -h 192.168.1.88 -P 3306 -D mydb

闲置服务器的CPU算力挖XMR

Centos 6

矿池:xmr.nanopool.org

yum -y install epel-release
yum -y install centos-release-scl cmake3 hwloc-devel libmicrohttpd-devel openssl-devel
yum -y install devtoolset-4-gcc*
yum -y install git
scl enable devtoolset-4 bash
git clone https://github.com/fireice-uk/xmr-stak-cpu xmr-stak
cd xmr-stak

#调整百分之二的开发者捐赠
sed -i 's/2.0/0.0/g' donate-level.h
cmake3 .
make install

cd /root/xmr-stak/bin
先运行一遍
./xmr-stak-cpu

会给出推荐的CPU配置信息,将它编辑进config.txt,并填写钱包地址、矿池地址、Payment ID等信息
httpd_port 设置http访问端口,可以用网页查看矿机状态

"cpu_threads_conf" :
[
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 0 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 1 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 2 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 3 },
],
"pool_address" : "xmr-eu1.nanopool.org:14444",
"wallet_address" : "42bhDV2R5zF4KkQ5maiwJCiiwxckdhTcqEFGgwggbr938TXNC5Di6d8jXqrT3anyZ22j7DEE74GkbVcQFyH2nNiC3fpvU7j.0648b3bdea5e2d3a63bb2bbb9ee7592abab7728bc93e18d3ddac22c21937fed8",
"pool_password" : "x",
"httpd_port" : 3128,
正式运行:
./xmr-stak-cpu
EDIT: 关于Payment ID:
openssl rand -hex 32

EDIT: 关于Linux下挖矿出现MEMORY ALLOC FAILED: mmap failed
解决方案:
sysctl -w vm.nr_hugepages=128
echo "* soft memlock 262144" >> /etc/security/limits.conf
echo "* hard memlock 262144" >> /etc/security/limits.conf
reboot

编译好的绿色版(centos 6 x64)

bin

DD windows

KS3B 2T

wget -O- https://down.zhujiwiki.com/windows-dd/Windows7-Joodle-Template.gz |gunzip|dd of=/dev/sda

Username: Admin
Password: Password147

7欧SSD
wget -O- 'https://down.tn/Windows/ISO/Win2012R2CN.gz' | gunzip | dd of=/dev/sda
用户:Administrator
密码:Laiboke.com

20欧
wget -O- 'https://down.tn/Windows/ISO/DD-Joodle/Windows2012R2-Joodle-Template.gz' | gunzip | dd of=/dev/sda
用户:Administrator
密码:Password147

 

http://windowstemplate.com/

 

Nginx 反向代理 https 网站

Nginx SSL反向代理

反代部分参考:http://vpsxyz.com/archives/358

 

apt-get -y install git
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --standalone --email admin@xxx.com -d xxx.com

在完成Let's Encrypt证书的生成之后,我们会在"/etc/letsencrypt/live/xxx.com/"域名目录下有4个文件就是生成的密钥证书文件。
cert.pem - Apache服务器端证书
chain.pem - Apache根证书和中继证书
fullchain.pem - Nginx所需要ssl_certificate文件
privkey.pem - 安全证书KEY文件

Let's Encrypt证书是有效期90天的
30 2 * * 1 ./letsencrypt-auto certonly --renew-by-default --email admin@xxx.com -d xxx.com

示例:

xxx.com

wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
tar zxvf openssl-1.0.1e.tar.gz

cd /root/nginx-1.2.8
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --add-module=/root/ngx_http_substitutions_filter_module --with-openssl=/root/openssl-1.0.1e --with-openssl-opt="enable-tlsext"

确认已经开启 TLS SNI
nginx -V

 

netstat -lntp
查看是不是被其他软件占用了 80 端口
停止 Apache2
service apache2 stop
kill -9 $(ps -ef|grep "apache2"|grep -v "grep"|awk '{print $2}')
取消开机自启动,仅限 Debian/Ubuntu 系统
update-rc.d -f apache2 remove
卸载 Apache2
apt-get remove --purge apache2

通过 SSH 挂载远程的 Linux 文件系统或者目录

yum install epel-release

yum install sshfs
mkdir /remote
sshfs root@62.210.244.157:/data/ /remote

CentOS 安装远程桌面环境 VNC Server

 

nginx 只允许特定IP访问

1.单独网站屏闭IP的方法:

在server”{}”,在这个大括号内加入deny IP地址是限制某IP地址访问;allow IP地址是只允许某IP地址访问;

如:

allow 203.137.116.106;

allow 118.0.0.0/8;
deny all;

2.全局屏蔽

首先建立下面的配置文件放在nginx的conf目录下面,命名为blocksip.conf。比如我们要拒绝ip:
deny 118.114.245.37;
保存一下。
在nginx的配置文件nginx.conf中加入:include blocksip.conf;
重启一下nginx的服务就可以生效了。

Nginx 反向代理以及正则替换内容

如果是为了隐藏源站IP而使用Nginx 反向代理,可以将源站域名替换为一个不存在的子域名,然后在代理机上vi /etc/hosts,将这个不存在的子域名指向源站IP。

安装nginx

cd /root
apt-get update
apt-get install -y git gcc g++ make automake
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install openssl libssl-dev

apt-get install zlib1g-dev

或者

yum -y install pcre-devel openssl openssl-devel

git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module
wget http://nginx.org/download/nginx-1.2.8.tar.gz
tar zxvf nginx-1.2.8.tar.gz
cd nginx-1.2.8
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --add-module=/root/ngx_http_substitutions_filter_module
make
make install

修改nginx.conf,配置反向代理以及替换内容

添加缓存文件夹
mkdir /home/cache/path -p
mkdir /home/cache/temp
chmod 777 -R /home/cache

cd /usr/local/nginx/conf/

新增虚拟主机配置:
vi /usr/local/nginx/conf/vhosts/xxx.com.conf

修改nginx.conf
#在 http 配置节的结束花括号 } 前一行加入如下语句
include /usr/local/nginx/conf/vhosts/*;

创建www这个用户
/usr/sbin/groupadd -f www
/usr/sbin/useradd -g www www

查看配置文件是否正确

由于系统默认会查找/usr/bin下的命令

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
/usr/local/nginx/sbin/nginx -t

重新加载 Nginx配置文件

service apache2 stop

sudo nginx -c /usr/local/nginx/conf/nginx.conf
sudo nginx -s reload

示例:

xxx-com

nginx

 

替换规则

subs_filter_types text/html text/css text/xml;
subs_filter st(\d*).example.com $1.example.com ir;
subs_filter a.example.com s.example.com;

*subs_filter* 是用来替换文本的,可以使用正则
* *g*(默认):替换匹配项。
* *i*:区分大小写的匹配
* *o*: 只匹配发现的第一个。
* *r*: 正则。

centos 6.x yum 安装LAMP

CentOS默认yum源软件版本太低了

本次安装最终为:

CentOS release 6.8 (Final)
PHP 5.4.45

 

1、配置防火墙,开启80端口、3306端口
vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

:wq! #保存退出
注意需要添加至22端口的位置

-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 -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

/etc/init.d/iptables restart #重启防火墙使配置生效
2、关闭SELINUX
vi /etc/selinux/config

#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加

:wq! #保存退出

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
#SELINUXTYPE=targeted
SELINUX=disabled
3、添加第三方yum源
CentOS默认yum源软件版本太低了,要安装最新版本的LAMP,这里使用第三方yum源
wget http://www.atomicorp.com/installers/atomic
sh ./atomic

yum clean all #清除当前yum缓存
yum makecache #缓存yum源中的软件包信息
yum repolist #列出yum源中可用的软件包

安装篇:

一、安装Apache
yum install httpd #根据提示,输入Y安装即可成功安装
/etc/init.d/httpd start #启动Apache

备注:Apache启动之后会提示错误:
httpd:httpd: Could not reliably determine the server's fully qualif domain name, using ::1 for ServerName
解决办法:
vi /etc/httpd/conf/httpd.conf #编辑
ServerName www.example.com:80 #去掉前面的注释
:wq! #保存退出
chkconfig httpd on #设为开机启动
/etc/init.d/httpd restart #重启Apache

二、安装MySQL

1、安装MySQL

yum install mysql mysql-server #询问是否要安装,输入Y即可自动安装,直到安装完成

/etc/init.d/mysqld start #启动MySQL

chkconfig mysqld on #设为开机启动

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

2、为root账户设置密码

mysql_secure_installation
回车,根据提示输入Y
输入2次密码,回车
根据提示一路输入Y
最后出现:Thanks for using MySQL!
MySql密码设置完成,重新启动 MySQL:

/etc/init.d/mysqld restart #重启
/etc/init.d/mysqld stop #停止
/etc/init.d/mysqld start #启动

三、安装PHP

1、安装PHP

yum install php #根据提示输入Y直到安装完成

2、安装PHP组件,使PHP支持MySQL

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt
这里选择以上安装包进行安装
根据提示输入Y回车

/etc/init.d/mysqld restart #重启MySql
/etc/init.d/httpd restart #重启Apche

 

Via:http://www.osyunwei.com/archives/8415.html