前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >squid 部署

squid 部署

作者头像
以谁为师
发布2019-05-31 16:10:34
1.4K0
发布2019-05-31 16:10:34
举报
文章被收录于专栏:小网管的运维之路

squid 部署

YUM安装

代码语言:javascript
复制
yum install squid -y
yum install httpd-tools -y

编译安装

代码语言:javascript
复制
cd squid*
./configure \
--prefix=/usr \
--exec-prefix=/usr \
--includedir=/usr/include \
--datadir=/usr/share \
--libdir=/usr/lib64 \
--libexecdir=/usr/lib64/squid \
--localstatedir=/var \
--sysconfdir=/etc/squid \
--sharedstatedir=/var/lib \
--with-logdir=/var/log/squid \
--with-pidfile=/var/run/squid.pid \
--with-default-user=squid \
--enable-silent-rules \
--enable-dependency-tracking \
--with-openssl \
--enable-icmp \
--enable-delay-pools \
--enable-useragent-log \
--enable-esi \
--enable-follow-x-forwarded-for \
--enable-auth
代码语言:javascript
复制
make && make install
#编译安装
chown squid:squid /var/log/squid/
# 设置日志目录所属

支持认证登录(squid3.5+)

生成密码文件

代码语言:javascript
复制
htpasswd -cd  /etc/squid/passwd squid1
#apache工具创建文件和用户密码
htpasswd -d  /etc/squid/passwd squid2
#创建第二个用户和密码

测试密码

代码语言:javascript
复制
/usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd

squid1 123456
#输入密码提示"OK"

配置文件

cat /etc/squid/squid.conf

代码语言:javascript
复制
visible_hostname fuckgfw
#创建一个主机名字,随意即可
http_port 1024
#指定服务端 ip:port

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
#启用认证

access_log /var/log/squid/access.log
#设置log路径

request_header_access X-Forwarded-For deny all
request_header_access From deny all
request_header_access Via deny all
#高匿配置

服务启动与停止

代码语言:javascript
复制
squid -k parse   #检查配置文件
squid -s    #后台运行服务
squid -k shutdown #关闭服务

防火墙转发规则

代码语言:javascript
复制
iptables -t nat -A PREROUTING  -p tcp --dport 80 -j REDIRECT --to-ports 3128
#经过本机访问web将重定向到3128端口

iptables -I POSTROUTING -t nat  -j MASQUERADE
#开启MASQUERADE地址伪装

echo 1 > /proc/sys/net/ipv4/ip_forward
grep  ip_forward  /etc/sysctl.conf &>/dev/null || echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
#开启NAT转发

通过以上配置就可以访问http和https的网站了 ~

支持 SSLBump 方式

编译安装

... 同上文

生成证书

代码语言:javascript
复制
#Generate Prviate Key
openssl genrsa -out attacker.club.private 2048
#Greate Certificate siqning request
openssl req -new -key attacker.club.private -out attacker.club.csr

Country Name (2 letter code) [XX]:US State or Province Name (full name) []:Illinois Locality Name (eg, city) [Default City]:Chicago Organization Name (eg, company) [Default Company Ltd]:Example Company LTD. Organizational Unit Name (eg, section) []:Information Technology Common Name (eg, your name or your server's hostname) []:Example Company LTD. Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:Example Company LTD.


下载汉化补丁

代码语言:javascript
复制
git clone https://gitlab.com/xhang/gitlab.git
#下载补丁
cat gitlab/VERSION
#查看汉化版本

下载指定版本

https://packages.gitlab.com/app/gitlab/gitlab-ce/search?q=10.6.4

更新软件

代码语言:javascript
复制
yum install curl policycoreutils openssh-server openssh-clients   && systemctl restart sshd

安装gitlab

代码语言:javascript
复制
wget -c https://packages.gitlab.com/gitlab/gitlab-ce/el/7/x86_64/gitlab-ce-9.0.6-ce.0.el7.x86_64.rpm
rpm -ivh gitlab*.rpm
#下载和安装rpm包

域名

vim /etc/gitlab/gitlab.rb

代码语言:javascript
复制
external_url 'http://gitlab.example.com'

第一次启动(初始配置)

gitlab-ctl reconfigure

汉化

代码语言:javascript
复制
git clone https://github.com/larryli/gitlabhq.git
#下载汉化包

gitlab-ctl stop
#关闭gitlab
代码语言:javascript
复制
head -1 /opt/gitlab/version-manifest.txt
#查看安装的gitlab版本
cd gitlab/
#进入汉化包目录
git diff v10.6.4 v10.6.4-zh >../v10.6.4-zh.diff
cd ..
yum install patch
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < v10.6.4-zh.diff

~~\cp gitlabhq/* /opt/gitlab/embedded/service/gitlab-rails/ ~~

代码语言:javascript
复制
gitlab-ctl  start
#启动gitlab

管理

代码语言:javascript
复制
gitlab-ctl status
#查看状态

重新配置gitlab

代码语言:javascript
复制
gitlab-ctl reconfigure

权限

设置管理员密码

管理员账号登录的用户名:root

(虽然登录后管理员的用户名为Administrator,但是实际登录的用户名是root)

支持ldap

cat /etc/gitlab/gitlab.rb

代码语言:javascript
复制
gitlab_rails['ldap_enabled'] = true

###! **remember to close this block with 'EOS' below**
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
   main: # 'main' is the GitLab 'provider ID' of this LDAP server
     label: ' GitLab LDAP'
     host: '10.0.0.200'
     port: 389
     uid: 'uid'
     method: 'plain' # "start_tls" or "simple_tls" or "plain"
     bind_dn: 'CN=Manager,DC=huored,DC=com'
     password: 'XXX密码'
     base: 'DC=huored,DC=com'
EOS
代码语言:javascript
复制
gitlab-ctl  restart
#重启服务

git仓库位置

/var/opt/gitlab/git-data/repositorie

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年4月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • squid 部署
  • YUM安装
  • 编译安装
  • 支持认证登录(squid3.5+)
    • 生成密码文件
      • 测试密码
        • 配置文件
        • 服务启动与停止
        • 防火墙转发规则
        • 支持 SSLBump 方式
          • 编译安装
            • 生成证书
              • 下载汉化补丁
                • 下载指定版本
                  • 更新软件
                    • 安装gitlab
                      • 域名
                        • 第一次启动(初始配置)
                          • 汉化
                            • 管理
                              • 重新配置gitlab
                                • 权限
                                • 支持ldap
                                  • git仓库位置
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档