在学习Linux的过程中,每次重装系统或者初始化配置总要进行一些纷杂的设置,有些因为使用率不高记忆并不清楚,在此也便做一些记录方便查阅~
#防火墙
1、停用防火墙
1 2 |
开启:chkconfig iptables on 停用:chkconfig iptables off |
2、关闭防火墙
1 2 |
开启:service iptables start 关闭:service iptables stop |
3.添加iptables放行端口
1 2 3 4 5 |
#iptables放行 iptables -I INPUT 1 -p tcp --dport 587 -j ACCEPT iptables -I INPUT 1 -p udp --dport 587 -j ACCEPT #保存(解决重启失效) iptables-save /etc/sysconfig/iptables |
1 2 3 |
#Debian9 ufw防火墙放行 ufw allow 587/tcp ufw allow 587/udp |
1 2 3 4 |
#CentOS7 Firewalld防火墙放行 firewall-cmd --zone=public --add-port=587/tcp --permanent firewall-cmd --zone=public --add-port=587/udp --permanent firewall-cmd --reload |
1 2 3 4 |
#编辑iptables配置文件 vi /etc/sysconfig/iptables #添加允许80端口通过防火墙 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT |
#为CentOS添加Swap交换分区
1 2 3 4 5 6 7 8 |
#在/home文件夹下创建一个1G的swap文件〈单位kb〉 dd if=/dev/zero of=/home/swap bs=1024 count=1048576 #初始化swap分区 mkswap /home/swap #挂载swap分区〈卸载命令swapoff〉 swapon /home/swap #开机自动挂载swap分区 echo "/home/swap swap swap defaults 0 0" /etc/fstab |
#CentOS脚本执行过程中缺指令
1 2 3 4 5 6 |
#升级系统组件 yum update #搜索插件包,以ifconfig为例 yum search ifconfig #安装对应的包 yum install net-tools.x86_64 |
#一些命令随记
1 2 3 4 5 6 |
# 使用VideoJS插件删去代码中注释* *[*videojs_video url="视频链接"] # Powershell生成UUID [guid]::NewGuid() # 查看端口占用 netstat -tunlp |
#WordPress传递真实评论IP
1 2 3 4 5 6 7 |
#编辑wp-config.php,添加 // ** 留言获取真实IP */ if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']); $_SERVER['REMOTE_ADDR'] = $list[0]; } |
#开启root用户及允许密码登录
1 2 3 4 5 6 7 8 9 10 11 12 |
#修改sshd配置文件 vi /etc/ssh/sshd_config #修改PermitRootLogin和PasswordAuthentication为yes # Authentication: PermitRootLogin yes //开启root用户 # Change to no to disable tunnelled clear text passwords PasswordAuthentication yes //允许密码登录 #重启sshd /etc/init.d/ssh restart |
#chmod设置文件权限
1 2 3 4 |
#设置目录(包含子目录)用户组为www chown www:www /file -R #设置权限 chmod -R 755 /file |
#用wget指令下载百度云中的文件
1 |
wget -c -O 文件名 "直链地址" |
直链地址可以用油猴或者山寨云提取,对于断开ssh继续下载可以用screen创建虚拟会话
1 2 3 4 5 6 7 8 9 10 |
#安装screen yum install screen #创建一个虚拟会话 screen -S 会话名称 #回到会话 screen -r 会话名称 #清除会话 screen -wipe 会话名称 #显示所有会话 screen -list |
#关闭centos的fastestmirror
1 2 3 4 |
#编辑 vi /etc/yum/pluginconf.d/fastestmirror.conf #修改 enable=0 |
#centos7安装kenel-ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#安装elrepo源 rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm #安装内核 yum --enablerepo=elrepo-kernel -y install kernel-ml kernel-ml-headers kernel-ml-devel #查看启动顺序 cat /boot/grub2/grub.cfg | grep menuentry #设置启动顺序 grub2-set-default 0 #查看设置成功 grub2-editenv list #更新grub grub2-mkconfig -o /boot/grub2/grub.cfg #重启 reboot #查看已安装内核 rpm -qa | grep kernel #卸载无用的 yum remove / rpm -e |
#配置DNS通过TCP
1 2 3 4 |
#编辑文件 vi /etc/resolv.conf #添加 options use-vc |
#NGINX传递真实IP
1 2 3 4 5 6 7 8 |
#NGINX nginx.conf #反代传递访问者header proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; #源站从header获取访问者IP set_real_ip_from 0.0.0.0/0; real_ip_header X-Forwarded-For; |
#开启NGINX目录文件显示
1 2 3 4 5 6 |
location / { autoindex on; autoindex_localtime on; autoindex_exact_size off; charset utf-8,gbk; } |
#NGINX添加www用户
1 2 |
/usr/sbin/groupadd -f www /usr/sbin/useradd -g www www |
#CloudFlare相关
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#切换LE证书为DigiCert版本(GTS替换为google) curl -X PATCH "https://api.cloudflare.com/client/v4/zones/{ZoneID}/ssl/universal/settings" \ -H "Content-Type: application/json" \ -H "X-Auth-Email: {E-Mail}" \ -H "X-Auth-Key: {Global-APIKEY}" \ --data '{"certificate_authority": "digicert"}' #关闭IPv6 curl -X PATCH "https://api.cloudflare.com/client/v4/zones/{ZoneID}/settings/ipv6" \ -H "Content-Type: application/json" \ -H "X-Auth-Email: {E-Mail}" \ -H "X-Auth-Key: {Global-APIKEY}" \ --data '{"value":"off"}' |
#CURL指定HOST
1 2 3 4 5 6 7 |
curl --silent -H "Host: example.com" "http://10.10.10.10:1080/path" # Linux curl测速 curl https://speed.cloudflare.com:443/__down?bytes=300000000 -o /dev/null --resolve *:443:104.20.2.2 # Windows curl测速 curl https://speed.cloudflare.com:443/__down?bytes=300000000 -o nul --resolve speed.cloudflare.com:443:104.20.2.2 |
#Apache Rewrite跳转https
1 2 3 4 5 |
RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301] RewriteRule ^/index.php$ /index.html?id=$1 |
#netboot.xyz
1 2 3 4 5 6 7 |
# 安装IPXE、延长grub时间、更新grub apt install -y ipxe sed -i 's/GRUB_TIMEOUT=5/GRUB_TIMEOUT=30/g;s/GRUB_DEFAULT=0/GRUB_DEFAULT=2/g;s/GRUB_TIMEOUT_STYLE=hidden/#GRUB_TIMEOUT_STYLE=hidden/g;' /etc/default/grub update-grub # 在IPXE下联网、引导netboot dhcp chain --autofree http://boot.netboot.xyz |
#Netsh Windows转发
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# 查询端口映射情况 netsh interface portproxy show all # 增加一个端口映射(v6无需方括号) netsh interface portproxy add v4tov4 listenport=宿主机端口 listenaddress=宿主机IP connectaddress=虚拟机IP connectport=虚拟机端口 # 删除一个端口映射 netsh interface portproxy delete v4tov4 listenaddress=宿主机端口 listenport=宿主机IP # 查看映射支持的列表 netsh interface portproxy show # 查看转发规则(IPv4toIPv4映射) netsh interface portproxy show v4tov4 show all - 显示所有端口代理参数 show v4tov4 - 显示 IPv4 代理连接到另一个 IPv4 端口的参数 show v4tov6 - 显示 IPv4 代理连接到 IPv6 的参数 show v6tov4 - 显示 IPv6 代理连接到 IPv4 的参数 show v6tov6 - 显示 IPv6 代理连接到另一个 IPv6 端口的参数 |
#Cloudflare修改域名NS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# https://developers.cloudflare.com/api/operations/registrar-domains-update-domain curl --request PUT \ --url https://api.cloudflare.com/client/v4/accounts/{ZoneID}/registrar/domains/example.com \ --header 'Content-Type: application/json' \ --header 'X-Auth-Email: xxx@mail.com' \ --header 'X-Auth-Key: ca3a22e798*****' \ --data '{ "auto_renew": true, "locked": false, "name_servers": [ "ns1.he.net", "ns2.he.net" ], "privacy": true }' |
#手动安装Alpine
通过此方法可以不加载swap,同时缩减boot分区占用的空间,适用于磁盘空间极低的情况
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# 通过正常安装流程进行联网、镜像源设置,随后终止安装流程 setup-alpine # 安装分区工具 apk add parted e2fsprogs # 进行分区 parted -sa optimal /dev/sda mklabel msdos # 设置分区表为mbr格式 parted -sa optimal /dev/sda mkpart primary 512B 50MB # 划分boot分区 parted -sa optimal /dev/sda mkpart primary 50MB 100% # 划分所有容量至主分区 parted -sa optimal /dev/sda set 1 boot # 设置分区1启动卷标 mkfs.ext4 /dev/sda1 # 格式化boot分区 mkfs.ext4 /dev/sda2 # 格式化主分区 # 重启 reboot # 挂载磁盘,注意先后及新建文件夹 mount /dev/sda2 /mnt mount /dev/sda1 /mnt/boot # 通过正常安装流程进行所有设置,到选择磁盘后终止 setup-alpine # 安装 setup-disk /mnt |
*个人随记,不要见笑哦~