1、Debian下Vi编辑器在文本输入模式时,不能正确使用方向键和退格键,解决方法:
打开vi /etc/vim/vimrc.tiny,输入以下两行:
set nocompatible
set backspace=2
这样就切换到非兼容模式
2、DD前需要执行的命令:apt-get install -y xz-utils openssl gawk file
3、Debian Docker 安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
4、查看 Docker 启动状态:systemctl status docker
5、docker下安装v2ray
docker pull teddysun/v2ray
mkdir -p /etc/v2ray
cat > /etc/v2ray/config.json <<EOF
{
"inbounds": [{
"port": 443,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "c256748b-4a83-408b-fde2-493d33af7703",
"level": 1,
"alterId": 64
}
]
}
}],
"outbounds": [{
"protocol": "freedom",
"settings": {}
}]
}
EOF
docker run -d -p 443:443 --name v2ray --restart=always -v /etc/v2ray:/etc/v2ray teddysun/v2ray
6、docker下重装配置更新
vi /etc/v2ray/config.json
docker stop v2ray && docker rm v2ray
docker pull teddysun/v2ray
docker run -d -p 443:443 --name v2ray --restart=always -v /etc/v2ray:/etc/v2ray teddysun/v2ray
docker container restart v2ray
7、降低 IPv6的优先级 使IPv4优先
默认的安装中,ipv4 和 ipv6 并存,并且 ipv6 却优先于 ipv4。如果不需要彻底关闭 ipv6,可以设置让 ipv4 优先于 ipv6。配置方式如下:
echo "precedence ::ffff:0:0/96 100" >>/etc/gai.conf
当然也可以直接修改 /etc/gai.conf 文件,找到下面这一行
#precedence ::ffff:0:0/96 100
8、验证是否安装成功:docker version
9、启动 Docker: systemctl start docker
11、允许 Docker 开机自启:systemctl enable docker
12、经过多次测试,v2ray:
listen只指定ip4时 ip4正常监听,
listen只指定ipv6时 ipv6正常监听,
listen指定 0.0.0.0 时只监听 ipv6,
listen全行不键入时只监听 ipv6
添加两行listen分别指定ip4和ipv6时,只有第二行listen生效。
13、CentOS Docker 安装v2ray
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
启动/停止/重启docker:systemctl start/stop/restart docker
开机启动:systemctl enable docker
查看docker运行状态:systemctl status docker
docker pull teddysun/v2ray
mkdir -p /etc/v2ray
cat > /etc/v2ray/config.json <<EOF
{
"inbounds": [{
"port": 443,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "c256748b-4a83-408b-fde2-493d33af7703",
"level": 1,
"alterId": 64
}
]
}
}],
"outbounds": [{
"protocol": "freedom",
"settings": {}
}]
}
EOF
docker run -d -p 443:443 --name v2ray --restart=always -v /etc/v2ray:/etc/v2ray teddysun/v2ray
https://github.com/2dust/v2rayNG/releases/download/1.2.12/v2rayNG_1.2.12.apk
wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh
chmod +x shadowsocks-all.sh
./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log
Centos7防火墙常用命令
有些人安装的linux的系统默认防火墙不是iptables,而是firewall,那就得使用以下方式关闭防火墙了。
>>>关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
>>>开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
>>>重启防火墙
firewall-cmd --reload
其他常用命令:
firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd ##查看帮助
更多命令,使用 firewall-cmd --help 查看帮助文件
>>> CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
CentOS7增加或修改SSH端口号的方法
第一步:修改SSH配置文件(注意是sshd_config而不是ssh_config,多了个d)
vim /etc/ssh/sshd_config
找到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后把两行的“#”号即注释去掉
第二步:如果你关闭了SELinux,可以忽略第二步
查看是否开启了SELinux
sestatus -v
先查看SELinux开放给ssh使用的端口
semanage port -l|grep ssh
ssh_port_t tcp 22
可知,SELinux没有给SSH开放10086端口,那么我们来添加该端口:
semanage port -a -t ssh_port_t -p tcp 10086
semanage port -l|grep ssh
ssh_port_t tcp 22,10086
第三步:如果你关闭了防火墙,可以忽略第三步,话说防火墙不开启太危险了,建议开启。
firewall-cmd --state ##查看防火墙状态,是否是running
先查看防火墙是否开启了10086端口:
firewall-cmd --permanent --query-port=10086/tcp
打印结果如下:no
表示没有开放10086端口,那么添加下该端口:
firewall-cmd --permanent --add-port=10086/tcp
打印结果如下:success
重新加载防火墙策略:
firewall-cmd --reload
执行成功后,查看10086端口是否被开启:
firewall-cmd --permanent --query-port=10086/tcp
打印结果如下:yes
第四步:重启SSH服务和防火墙,最好也重启下服务器
systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now
shadowsocks更改端口密码等
1、配置文件在etc/shadowsocks-python或者etc/shadowsocks-libev里config.json
2、VI config.json,修改:wq!保存
3、重启服务:在etc/init.d/目录下service shadowsocks-python restart
Linux开启安装EPEL YUM源
我们用yum安装软件时,经常发现我们的yum源里面没有该软件,需要自己去wget,然后configure,make,make install,太折腾了。
其实,CentOS还有一个源叫做 EPEL (Extra Packages for Enterprise),里面有1万多个软件,比163的源还强,强烈建议安装。
1、安装前,我们先看一下我们现有的源:
yum repolist
2、安装EPEL YUM源
打开 http://mirrors.kernel.org/fedora-epel/
我的版本是6.6 final,所以我选择 http://mirrors.kernel.org/fedora-epel/epel-release-latest-6.noarch.rpm
安装命令:rpm -Uvh http://mirrors.kernel.org/fedora-epel/epel-release-latest-6.noarch.rpm
修改CentOS默认yum源为国内yum镜像源
1、首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo
[root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、进入yum源配置文件所在的文件夹
[root@localhost ~]# cd /etc/yum.repos.d/
3、下载163的yum源配置文件到上面那个文件夹内
CentOS7
[root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
CentOS6
[root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
CentOS5
[root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS5-Base-163.repo
4、运行yum makecache生成缓存
[root@localhost yum.repos.d]# yum makecache
5、这时候再更新系统就会看到以下mirrors.163.com信息
1
2
[root@localhost yum.repos.d]# yum -y update
已加载插件:fastestmirror, refresh-packagekit, security
设置更新进程Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
CentOS7修改SSH端口及防火墙配置
1、vi /etc/ssh/sshd_config
2、systemctl restart sshd.service
3、firewall-cmd --zone=public --add-port=26196/tcp --permanent
或cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
vi /etc/firewalld/services/ssh.xml
4、firewall-cmd --reload
5、跟着查看一下防火墙现在开启了哪些服务和端口
firewall-cmd --list-all
1、重启AMH是万能命令
/etc/init.d/amh-start
2、连接上VPS,登陆后:
amh ftp
选择 add
输入账户密码
输入/home/wwwroot
3、权限不足,amh ftp-chown-/etc/init.d/amh-start
4、邮件备份不成功的,安装mutt看看
yum install mutt
5、解压tar.bz2文件出错,安装bzip2
yum install bzip2
6、计划任务
编辑计划任务文件crontab -e
o当然光标下插入一行
7、cd /回主目录 cd ~回个人主目录 cd /home进home目录 cd -回上次所在的目录
8、查看root密码 /home/wwwroot/index/web/Amysql/Config.php
9、查看各文件夹大小 du -h --max-depth=1 /home/wwwroot
10、查找指定文件 find /home -name vhost
找出大于100MB的文件 find /home -size +100M -exec ls -lh {} ;
查找在系统中最后24小时里修改过的文件 find /home -mtime -1
查找N天前的文件并删除find /home -mtime +10 -name “*.sql.gz” -exec rm -rf {} ;
11、关于安全模式和兼容模式。所群里西秦公子讲,是Chroot,就是php运行的目录,/usr/local/php/etc/fpm/xxxx.com.conf
12、AMH错误 rm: cannot remove ‘xxx/mysql.sock’: Device or resource busy
amh mysql stop,rm -rf ,amh mysql start
13、“syntax error:unexpected end of file”
解决方案①vi xxx :set fileformat=unix :w ②yum install dos2unix unix2dos(CentOS)
14、解决mysqldump: Got error: 1044: Access denied for user
是权限问题,马上查看mysql里操作记录,执行tail -n 40000 .mysql_history|grep GRANT,发现只给SELECT,INSERT,UPDATE,DELETE这几个权限,为了在不改动权限的情况下,那只能用下面的方法.mysqldump -u dbuser -ppass db –skip-lock-tables > db.sql
ps:在导出时,加上–skip-lock-tables选项即可.但这个方法在数据量过大的话,会出现卡死,所以最好经常检查下sql备份,避免在要使用备份的时候杯具.
15、unzip/zip: Command Not Found
如果是Ubuntu的的系统可以用下面的命令安装
sudo apt-get install zip
如果是用yum安装的话用下面的命令安装
yum install -y unzip zip;
zip -r mydata.zip mydata 目录上-r递归
SSL
https://assl.loovit.net/
openssl genrsa -des3 -out xcao.net.key 2048
mv ssl.key xxx.key
openssl rsa -in xxx.key -out ssl.key
rm xxx.key
openssl req -new -key xcao.net.key -out xcao.net.csr
CN
GuangDong
ShenZhen
service httpd restart
service nginxd restart
通过openssl命令生成 证书。
首先执行如下命令生成一个key
openssl genrsa -des3 -out ssl.key 1024
然后他会要求你输入这个key文件的密码。不推荐输入。因为以后要给nginx使用。每次reload nginx配置时候都要你验证这个PAM密码的。
由于生成时候必须输入密码。你可以输入后 再删掉。
mv ssl.key xxx.key
openssl rsa -in xxx.key -out ssl.key
rm xxx.key
然后根据这个key文件生成证书请求文件
openssl req -new -key ssl.key -out ssl.csr
以上命令生成时候要填很多东西 一个个看着写吧(可以随便,毕竟这是自己生成的证书)
最后根据这2个文件生成crt证书文件
openssl x509 -req -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt
这里365是证书有效期 推荐3650哈哈。这个大家随意。最后使用到的文件是key和crt文件。
如果需要用pfx 可以用以下命令生成
openssl pkcs12 -export -inkey ssl.key -in ssl.crt -out ssl.pfx
在需要使用证书的nginx配置文件的server节点里加入以下配置就可以了。
ssl on;
ssl_certificate /home/ssl.crt;
ssl_certificate_key /home/ssl.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
然后重启nginx就大功告成了
2, 修改nginx配制
虚机位置 :
/www/wdlinux/nginx/conf/vhost
listen 443 ssl;
ssl on;
ssl_certificate /www/ssl/ssl.crt;
ssl_certificate_key /www/ssl/ssl.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
加上如上配制,注意把你的证书放的位置改一下
ssl_certificate /???/???/ssl.crt;
ssl_certificate_key /???/???/ssl.key;
1、SSL: error:0906D066:PEM routines:PEM_read_bio:bad end line
到nginx/conf下vi www.cer文件,会发现
-----END CERTIFICATE----------BEGIN CERTIFICATE-----
在一行上了,之间加回车):
2、cat domain_com.crt domain_com.ca-bundle > ssl-bundle.crt
3
linux修改文件所属用户和组
使用chown命令可以修改文件或目录所属的用户:
命令:chown 用户 目录或文件名
例如:chown qq /home/qq (把home目录下的qq目录的拥有者改为qq用户)
使用chgrp命令可以修改文件或目录所属的组:
命令:chgrp 组 目录或文件名
例如:chgrp qq /home/qq (把home目录下的qq目录的所属组改为qq组)
基金管理人(GP)跟创业者一样,也需要融资——从基金的投资人(LP)手中募集资金
查询防火墙状态:service iptables status
停止防火墙:service iptables stop
启动防火墙:service iptables start
重启防火墙:service iptables restart
永久关闭防火墙:chkconfig iptables off
永久关闭后启用:chkconfig iptables on
1、查看防火墙状态 service iptables status
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
防火墙只允许22端口
2、编辑/etc/sysconfig/iptables文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 26196 -j ACCEPT
service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:26196
6 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
防火墙CentOS 7安装Python3.5,并与Python2.7兼容并存
CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装。
1.安装python3.5可能使用的依赖
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
2.下载python
wget "https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz"
3.解压下载好的压缩包
tar -zxvf Python-3.4.2.tgz
4.配置编译
sudo mkdir /usr/local/python3
sudo ./configure --prefix=/usr/local/python3
sudo make
sudo make install
5.备份旧版本python,链接新版本python
在/usr/bin中有python、python2、python2.7三个文件依次指向后者
sudo mv python python.bak,
sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python
6.修改yum配置文件
sudo vi /usr/bin/yum
将第一行指定的python版本改为python2.7(#!/usr/bin/python 改为 #!/usr/bin/python2.7)
7、安装遇到问题
etup.py寻找tcl.h和tk.h两个头文件,但是我用find / -name tcl.h在整个linux范围内都没有找到这个头文件。
所以我要安装tcl-devel和tk-devel才能有头文件,安装tcl/tk,只是把静态或者动态库考到lib目录下,只有tcl-devel,tk-devel才会把头文件放到/usr/include里边,而_tkinter要编译必须找到这些头文件。
python3.5.2安装tkinter
1、yum -y install tkinter tcl-devel tk-devel
2、vim ......./Python3.5.2/Modules/Setup.dist 中去掉如下行的注释
_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT
-L/usr/local/lib
-I/usr/local/include
-ltk8.5 -ltcl8.5 #默认是8.2请你系统实际tcl/tk版本修改
-lX11
3、编译安装
./configure
#make && make install
rpm -qa | grep ^tk
rpm -qa | grep ^tcl
安装tck-devel、tk-devel
yum -y install tcl-devel tk-devel
yum groupinstall "Development tools"
首页 1
[2] [3] 末页 | 共4页/46条记录